Initialize DBCR0 for PPC440 targets

srikanth krishnakar skrishnakar at gmail.com
Wed May 20 15:50:46 EST 2009


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 !

Thanks,
Srikanth

On Wed, May 20, 2009 at 5:23 AM, David Gibson
<david at 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.
>
> --
> David Gibson                    | I'll have my music baroque, and my code
> david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
>                                | _way_ _around_!
> http://www.ozlabs.org/~dgibson
>



-- 
"The Good You Do, The Best You GET"

Regards
Srikanth Krishnakar
**********************



More information about the Linuxppc-dev mailing list