[U-Boot] [PATCH 3/6] SPL: Port SPL framework to powerpc

Tom Rini trini at ti.com
Fri Aug 24 18:19:15 CEST 2012


On 08/24/2012 09:07 AM, Stefan Roese wrote:
> On 08/24/2012 05:55 PM, Tom Rini wrote:
>>>> So, here's what I don't understand.  On ARM, in general, we can't rely
>>>> on the global data pointer register (r8) to be set to a useful value, so
>>>> we do the above to ensure it points to something useful.  Are you always
>>>> able to rely on r2 it looks like pointing to something useful?  Or do
>>>> you take care of this much earlier on in powerpc?  Thanks!
>>>
>>> You are correct, I missed something here. r2 was still configured to the
>>> value written to it from the "real" U-Boot (pointing to internal SRAM).
>>>
>>> I can't use the code in preloader_console_init() though to setup the gd
>>> pointer. As I need to write some values in gd *before* calling
>>> preloader_console_init() (mainly clocks for serial driver). And since
>>> this "gd stuff" is quite platform specific, we should probably move this
>>> into an platform/arch spl file instead. As you also mentioned in another
>>> reply to create an arch/${ARCH}/lib/spl.c file.
>>>
>>> What do you think? Can you move this gd init stuff into such a common
>>> ARM spl file in the next patchset version?
>>
>> Yes.  We should probably say it's the job of board_init_f.  I know full
>> U-Boot does it at the start of board_init_r but I think for SPL it makes
>> sense to document that board_init_f does any early init it needs to,
>> clears BSS, sets up gd and calls board_init_r.
> 
> Full ack. In my next patchset version, I already extracted this gd setup
> into board_init_f().

OK good, I just booted and reset my arm9 platform with this
proof-of-concepted over.  I should post v4 today.

-- 
Tom


More information about the U-Boot mailing list