[U-Boot] [PATCH] powerpc/mpc85xx:Disable Debug TLB entry for non-minimal SPL
Scott Wood
scottwood at freescale.com
Wed Jun 26 21:06:25 CEST 2013
On 06/25/2013 11:09:04 PM, Prabhakar Kushwaha wrote:
> On 06/25/2013 08:38 PM, Scott Wood wrote:
>> On 06/25/2013 12:03:56 AM, Prabhakar Kushwaha wrote:
>>> CONFIG_SPL_BUILD creates debug TLB entry, so disable it before
>>> init_tlbs.
>>>
>>> CONFIG_SPL_INIT_MINIMAL never creates any debug TLB entry, so no
>>> need
>>> of disable_tlb().
>>>
>>> Signed-off-by: Prabhakar Kushwaha <prabhakar at freescale.com>
>>> ---
>>> arch/powerpc/cpu/mpc85xx/cpu_init_early.c | 3 ++-
>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
>>> b/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
>>> index 837c034..0cb2717 100644
>>> --- a/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
>>> +++ b/arch/powerpc/cpu/mpc85xx/cpu_init_early.c
>>> @@ -180,7 +180,8 @@ void cpu_init_early_f(void)
>>>
>>> invalidate_tlb(1);
>>>
>>> -#if defined(CONFIG_SYS_PPC_E500_DEBUG_TLB) &&
>>> !defined(CONFIG_SPL_BUILD) && !defined(CONFIG_NAND_SPL)
>>> +#if defined(CONFIG_SYS_PPC_E500_DEBUG_TLB) && \
>>> + !defined(CONFIG_SPL_INIT_MINIMAL) &&
>>> !defined(CONFIG_NAND_SPL)
>>> disable_tlb(CONFIG_SYS_PPC_E500_DEBUG_TLB);
>>> #endif
>>
>> This fails to clear the debug TLB in non-SPL_BUILD portion of a
>> build that has CONFIG_SPL_INIT_MINIMAL setoh..
> oh.. lots of cases :(
>
> then it should be like this. slightly complex.
> #if defined(CONFIG_SYS_PPC_E500_DEBUG_TLB) &&
> !(defined(CONFIG_NAND_SPL) || \
> (defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_INIT_MINIMAL)))
>
> or
> #if defined(CONFIG_SYS_PPC_E500_DEBUG_TLB) && (CONFIG_SYS_RAMBOOT) ||
> \
> (defined(CONFIG_SPL_BUILD) && !defined(CONFIG_SPL_INIT_MINIMAL)))
The former:
http://lists.denx.de/pipermail/u-boot/2013-June/157201.html
Ignore the line wrapping.
The latter will only clear the debug TLB when CONFIG_SYS_RAMBOOT is set
or in a non-minimal SPL (i.e. not in an ordinary NOR boot), which I
don't think is what you meant. Check your parentheses. :-)
If you meant to exclude CONFIG_SYS_RAMBOOT, why?
-Scott
More information about the U-Boot
mailing list