[U-Boot] [PATCH 1/2] arm: Make reset position-independent

Fabio Estevam festevam at gmail.com
Tue Sep 9 22:24:24 CEST 2014


Hi Albert,

On Fri, Sep 5, 2014 at 3:41 PM, Magnus Lilja <lilja.magnus at gmail.com> wrote:
> Hi
>
> On 3 September 2014 23:32, Benoît Thébaudeau
> <benoit.thebaudeau.dev at gmail.com> wrote:
>> Some boards, like mx31pdk and tx25, require the beginning of the SPL
>> code to be position-independent. For these two boards, this is because
>> they use the i.MX external NAND boot, which starts by executing the
>> first NAND Flash page from the NFC page buffer. The SPL then needs to
>> copy itself to its actual link address in order to free the NFC page
>> buffer and use it to load the non-SPL image from Flash before running
>> it. This means that the SPL runtime address differs from its link
>> address between the reset and the initial copy performed by
>> board_init_f(), so this part of the SPL binary must be
>> position-independent.
>>
>> This requirement was broken by commit 41623c9 'arm: move exception
>> handling out of start.S files', which used an absolute address to branch
>> to the reset routine. This new commit restores the original behavior,
>> which just performed a relative branch. This fixes the boot of mx31pdk
>> and tx25.
>>
>> Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev at gmail.com>
>> Reported-by: Helmut Raiger <helmut.raiger at hale.at>
>> Cc: Albert Aribaud <albert.u.boot at aribaud.net>
>> Cc: Magnus Lilja <lilja.magnus at gmail.com>
>> Cc: John Rigby <jcrigby at gmail.com>
>> ---
>
> Tested-by: Magnus Lilja <lilja.magnus at gmail.com>

Should this one go through your tree?


More information about the U-Boot mailing list