[U-Boot] [PATCH 2/4] powerpc/85xx:Fix MSR[DE] bit in MSR to support debugger
Wolfgang Denk
wd at denx.de
Wed Mar 7 13:03:36 CET 2012
Dear Prabhakar Kushwaha,
In message <4F56DD59.1080304 at freescale.com> you wrote:
>
> >> --- a/arch/powerpc/cpu/mpc85xx/start.S
> >> +++ b/arch/powerpc/cpu/mpc85xx/start.S
> >> @@ -82,6 +82,11 @@
> >> .globl _start_e500
> >>
> >> _start_e500:
> >> +#if defined(CONFIG_E500_V1_V2)
> >> +/* Enable debug exception */
> >> + li r1,MSR_DE
> >> + mtmsr r1
> >> +#endif
> > Why is this #ifdef needed here?
>
> This #ifdef is to make sure MSR_DE bit is set before u-boot's actual
> code start executing.
> it is for overcoming one of the requirement of debugging i.e. Keep
> MSR_DE bit set.
Sorry, this makes no sense to me. The #ifdef does not change the
order of execution, it just enables or disables the code. Are there
any situations where omitting this code is required, or where it makes
sense?
> >> @@ -729,8 +734,8 @@ create_init_ram_area:
> >> msync
> >> tlbwe
> >>
> >> - lis r6,MSR_IS|MSR_DS at h
> >> - ori r6,r6,MSR_IS|MSR_DS at l
> >> + lis r6,MSR_IS|MSR_DS|MSR_DE at h
> >> + ori r6,r6,MSR_IS|MSR_DS|MSR_DE at l
> > And why don;t we need such an #ifdef here?
>
> I found similar piece of code in start.S without any #define at label
> _start_cont. That's why i made it like this.
> if required i will put it under #define.
Please handle in a consistent way. See above.
> > Also, CONFIG_E500_V1_V2 is undocumented.
>
> Definition of this #define is part of documentation. I will add comment
> before using it.
CONFIG_ options must be explained in the README.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"I like your game but we have to change the rules."
More information about the U-Boot
mailing list