
Hi Heiko,
On Tuesday 02 November 2010 09:55:46 Heiko Schocher wrote:
preloader copies first page of nand (nand_spl code) to
0xbb000000 (some cpu internal mem) and jumps to this address
nand_spl does lowlevelinit, relocate itself to TEXT_BASE (nand_spl
code)
Why is this relocation needed? I understand that this 0xbb000000
Thats the question to solve ... don;t know, why nand_spl code on arm (and other architectures?) do this ... I try to have a look to find out, if we can run the nand_spl code complete from this address, and immedietaly copy u-boot from nand to ram ...
On PPC4xx we need to copy the code from the original location (4KiB loaded via the ROM IPL boot loader) to SDRAM and continue running it from there. This is necessary since we can't run from the original location (0xfffffxxx) and use the PPC4xx NAND controller at the same time.
So there is no relocation to TEXT_BASE on 4xx but "only" a copy to CONFIG_SYS_NAND_BOOT_SPL_DST.
Cheers, Stefan
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office@denx.de