linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: David Gibson <david@gibson.dropbear.id.au>
Cc: srikanth krishnakar <skrishnakar@gmail.com>, Linuxppc-dev@ozlabs.org
Subject: Re: Initialize DBCR0 for PPC440 targets
Date: Mon, 25 May 2009 17:04:35 +1000	[thread overview]
Message-ID: <1243235075.24376.60.camel@pasglop> (raw)
In-Reply-To: <20090520060014.GL6333@yookeroo.seuss>

On Wed, 2009-05-20 at 16:00 +1000, David Gibson wrote:
> On Wed, May 20, 2009 at 11:20:46AM +0530, srikanth krishnakar wrote:
> > Hi David,
> > 
> > I am not sure how the IDM behaves on few of PPC440 targets which don't
> > have boot loaders. I have a reference for your question:
> > 
> > http://www.nabble.com/Question-about-DBCR0-initialization-for-440-td23049044.html
> > 
> > Without this fix (given patch) I am facing problems with GDB, and
> > further target hangs while running gdbserver !
> 
> That doesn't answer my question.  It's not enough to say "this fixes a
> problem" you need to explain *how* it fixes the problem.
> 
> And I don't see why IDM would have any effect on *software*
> breakpoints.

No but gdb can use the DABR emulation and single step would be busted
too. GDB internally heavily uses single step in places you wouldn't
expect it to :-) Like I think when breaking on main, it sometimes single
step the whole init process of the executable until it hits it. At least
I've seen it do that when I was debugging the debug support for 64-bit
Book3E.

Cheers,
Ben.

> > On Wed, May 20, 2009 at 5:23 AM, David Gibson
> > <david@gibson.dropbear.id.au> wrote:
> > > On Tue, May 19, 2009 at 06:38:53PM +0530, srikanth krishnakar wrote:
> > >> Hi,
> > >>
> > >> kernel- 2.6.29
> > >> Debug technique: KGDB
> > >>
> > >> The PowerPC kernel does not initialize the PPC440 DBCR0 register. This
> > >> prevents the use of software breakpoints in case of internal debug
> > >> mode. Looking into head_fsl_booke.S for initialization of DBCR0 is
> > >> used by boot-loaders.
> > >> It seems head_44x.S lacks this step of DBCR0 register initialization.
> > >> So fixing this with initializing the DBCR0 register as shown below :
> > >>
> > >> Subject: [PATCH] powerpc: 44x: Initialize DBCR0 for targets not having
> > >> bootloader
> > >>
> > >> The kernel does not initialize the PPC440 DBCR0 register.
> > >> This prevents (among other things) the use of software
> > >> breakpoints with GDB. The boot loaders probably do initialize
> > >> this but few targets run without a boot loader
> > >
> > > Um.. how does this prevent the use of software breakpoints with gdb?
> > > The trap instructions still work with IDM==0.
> 

  parent reply	other threads:[~2009-05-25  7:04 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-19 13:08 Initialize DBCR0 for PPC440 targets srikanth krishnakar
2009-05-19 23:53 ` David Gibson
2009-05-20  5:50   ` srikanth krishnakar
2009-05-20  6:00     ` David Gibson
2009-05-20  6:14       ` srikanth krishnakar
2009-05-25  7:04       ` Benjamin Herrenschmidt [this message]
2009-05-26  2:23         ` David Gibson
2009-05-25  6:30     ` srikanth krishnakar
2009-05-25  6:39       ` Grant Likely
2009-05-25  6:51         ` srikanth krishnakar
2009-05-26 15:11           ` John Linn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1243235075.24376.60.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=Linuxppc-dev@ozlabs.org \
    --cc=david@gibson.dropbear.id.au \
    --cc=skrishnakar@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).