[U-Boot] Trying to understand ARM926EJS/start.S

Wolfgang Denk
2010-10-30T19:21:16Z

Dear Albert ARIBAUD,

In message <4CCC69E4.8090103@free.fr> you wrote:
>
> > ldr r0, _TEXT_BASE /* r0<- Text base */
> > %%% why are we using _TEXT_BASE here and not _start?
>
> Because we're accessing the relocation tables in the FLASH (or freshly
> NAND-loaded) "source" copy of u-boot, not in the RAM "target" copy (in
> which the relocation tables won't exist).

Sorry, but I don't understand this explanation.

With the linker script we make sure that the symbol _start gets linked
to the absolute address CONFIG_SYS_TEXT_BASE, right? And _TEXT_BASE
is a storage that holds exactly the value CONFIG_SYS_TEXT_BASE, which
should be identical to the address of _start ?

Best regards,

Wolfgang Denk

--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
The trouble with our times is that the future is not what it used to
be. - Paul Valery