[U-Boot] [PATCH v2 01/11] ARM: fix relocation on ARM926EJS

José Miguel Gonçalves
2012-09-16T09:45:24Z

On 09/15/2012 07:03 PM, Marek Vasut wrote:
> Dear Jos? Miguel Gon?alves,
>
>> Jumping to board_init_r is not performed due to a bug on address
>> computation.
> Is your CONFIG_SYS_TEXT_BASE configured correctly? I don't detect any
> misbehavior on my arm926 boards.

Maybe because you are not using it to build an SPL?
Please check the same chunk of code in other start.S for arm1176 and
armv7. They have the same code that I put for arm926ejs.

>
>> Relocation offsets are not needed when building SPL.
> Do they cause any trouble?

No! Just not needed.

>
>> Signed-off-by: Jos? Miguel Gon?alves <jose.goncalves@inov.pt>
>> ---
>> Changes for v2:
>> - None
>> ---
>> arch/arm/cpu/arm926ejs/start.S | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/arm/cpu/arm926ejs/start.S
>> b/arch/arm/cpu/arm926ejs/start.S index 6f05f1a..2da5342 100644
>> --- a/arch/arm/cpu/arm926ejs/start.S
>> +++ b/arch/arm/cpu/arm926ejs/start.S
>> @@ -325,7 +325,7 @@ _nand_boot_ofs:
>> .word nand_boot
>> #else
>> ldr r0, _board_init_r_ofs
>> - ldr r1, _TEXT_BASE
>> + adr r1, _start
>> add lr, r0, r1
>> add lr, lr, r9
>> /* setup parameters for board_init_r */
>> @@ -338,12 +338,14 @@ _board_init_r_ofs:
>> .word board_init_r - _start
>> #endif
>>
>> +#ifndef CONFIG_SPL_BUILD
>> _rel_dyn_start_ofs:
>> .word __rel_dyn_start - _start
>> _rel_dyn_end_ofs:
>> .word __rel_dyn_end - _start
>> _dynsym_start_ofs:
>> .word __dynsym_start - _start
>> +#endif
>>
>> /*
>> *************************************************************************
> Best regards,
> Marek Vasut
>

Best regards,
Jos? Gon?alves