ppc4xx/NAND_SPL: Consolidate 405 and 440 NAND booting code in start.S
authorStefan Roese <sr@denx.de>
Mon, 2 Jun 2008 12:35:44 +0000 (14:35 +0200)
committerStefan Roese <sr@denx.de>
Tue, 3 Jun 2008 18:21:49 +0000 (20:21 +0200)
commit64852d09e06dd6db2b2db2a3c59bc2db176a54d6
tree9a55c856efb307be7fd5a95432f0f3c79ce9191c
parent8a24c07ba5da2c72ad1f05e3eb8a463750200c98
ppc4xx/NAND_SPL: Consolidate 405 and 440 NAND booting code in start.S

This patch consolidates the 405 and 440 parts of the NAND booting code
selected via CONFIG_NAND_SPL. Now common code is used to initialize the
SDRAM by calling initdram() and to "copy/relocate" to SDRAM/OCM/etc.
Only *after* running from this location, nand_boot() is called.

Please note that the initsdram() call is now moved from nand_boot.c
to start.S. I experienced problems with some boards like Kilauea
(405EX), which don't have internal SRAM (OCM) and relocation needs to
be done to SDRAM before the NAND controller can get accessed. When
initdram() is called later on in nand_boot(), this can lead to problems
with variables in the bss sections like nand_ecc_pos[].

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Scott Wood <scottwood@freescale.com>
cpu/ppc4xx/start.S
nand_spl/nand_boot.c