Le 21/09/2011 12:45, Wolfgang Denk a écrit :
> Dear "GROYER, Anthony",
>
> In 
> message<bc0a2f434d4f39448d24a68ea6effb9f0194d...@eu-fr-exbe07.eu.corp.airliquide.com>
>   you wrote:
>>
>> What is the difference between _start and _TEXT_BASE ? I do not see any
>> differences and the former relocation offset calculation was using 
>> _TEXT_BASE.
>
> The former is the entry point address, while the latter is the start
> of the text segment.  These may be the same (and on many ARM systems
> they are),  but they have actually no direct relation to each other
> (and some ARM systems do use an entry point that is not the same as
> the start of the code).

This would be boards

- where U-Boot boots from Flash without a SPL,

- which boot at FFFF0000,

- and which don't have a tiny piece of code at FFFF0000 which jumps to a 
fixed location at which _start resides.

Thus, typically boards with a very small FLASH that forces the 
maintainer to fill the last 64 KB with _start and some code, then put 
the rest of U-Boot below FFFF0000.

But my edminiv2, with only 512 KB flash, already provides enough space 
that such a complicated linker mapping is unneeded -- FFFF0000 just has 
a permanent jump instruction to FFF90000, and U-Boot is linked linearly, 
with _start at FFF9000.

I wonder which ARM boards we have that still require a complex mapping 
with _start in the middle of the code.

Amicalement,
-- 
Albert.
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to