[U-Boot] [PATCH 1/4] arm: make sure board_init_r() is being called using the right mode (ARM / THUMB)
David Müller (ELSOFT AG)
d.mueller at elsoft.ch
Wed Feb 10 08:57:38 CET 2016
Hello
Tom Rini wrote:
> On Tue, Feb 09, 2016 at 04:48:28PM +0100, David Müller wrote:
>> /* call board_init_r */
>> +#if defined(CONFIG_SYS_THUMB_BUILD)
>> + ldr lr, =board_init_r /* this is auto-relocated! */
>> + bx lr
>> +#else
>> ldr pc, =board_init_r /* this is auto-relocated! */
>> -
>> +#endif
>> /* we should not return here. */
>> #endif
>
> In general, my preference is always to use the thumb compatible way, can
> you rework like that and explain in the commit message? Thanks!
AFAIK, the "bx" instruction is undefined on non-THUMB capable
architectures. I therefore don't see a way to avoid some kind of
#if/#else/#endif construct.
Dave
More information about the U-Boot
mailing list