[U-Boot] [PATCH 3/4] OneNAND: Introduce CONFIG_SYS_IPL_LOAD_ADDR

Marek Vasut
2010-10-02T17:33:58Z

This allows to specify where the OneNAND IPL should load the U-Boot binary. The
purpose of CONFIG_SYS_LOAD_ADDR is different I believe.

On PXA, this is needed with OneNAND memories that expose only first 1kb of data,
which is insufficient for SDRAM init. U-Boot can then be copied into SRAM.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
---
include/configs/apollon.h | 1 +
onenand_ipl/onenand_boot.c | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/include/configs/apollon.h b/include/configs/apollon.h
index c1295de..d34e24d 100644
--- a/include/configs/apollon.h
+++ b/include/configs/apollon.h
@@ -199,6 +199,7 @@

/* default load address */
#define CONFIG_SYS_LOAD_ADDR (OMAP2420_SDRC_CS0)
+#define CONFIG_SYS_IPL_LOAD_ADDR (OMAP2420_SDRC_CS0)

/* The 2420 has 12 GP timers, they can be driven by the SysClk (12/13/19.2)
* or by 32KHz clk, or from external sig. This rate is divided by a local
diff --git a/onenand_ipl/onenand_boot.c b/onenand_ipl/onenand_boot.c
index 22baebb..2a0c7ce 100644
--- a/onenand_ipl/onenand_boot.c
+++ b/onenand_ipl/onenand_boot.c
@@ -33,11 +33,11 @@ void start_oneboot(void)
{
uchar *buf;

- buf = (uchar *) CONFIG_SYS_LOAD_ADDR;
+ buf = (uchar *) CONFIG_SYS_IPL_LOAD_ADDR;

onenand_read_block(buf);

- ((init_fnc_t *)CONFIG_SYS_LOAD_ADDR)();
+ ((init_fnc_t *)CONFIG_SYS_IPL_LOAD_ADDR)();

/* should never come here */
}
--
1.7.1