diff options
author | Heiko Schocher <hs@denx.de> | 2010-09-17 13:10:39 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2010-09-19 19:29:53 +0200 |
commit | f1d2b313c9eb6808d30c16a9eb5251240452a56c (patch) | |
tree | 8b5488d9e882947ef493c0e579aebaa5f40413f4 /nand_spl | |
parent | 4fff329df2516a7d9242d0642c07c4506f859051 (diff) | |
download | u-boot-imx-f1d2b313c9eb6808d30c16a9eb5251240452a56c.zip u-boot-imx-f1d2b313c9eb6808d30c16a9eb5251240452a56c.tar.gz u-boot-imx-f1d2b313c9eb6808d30c16a9eb5251240452a56c.tar.bz2 |
ARM: add relocation support
!! This breaks support for all arm boards !!
To compile in old style, you must define
CONFIG_SYS_ARM_WITHOUT_RELOC or you can compile
with "CONFIG_SYS_ARM_WITHOUT_RELOC=1 ./MAKEALL board"
!! This define will be removed soon, so convert your
board to use relocation support
Portions of this work were supported by funding from
the CE Linux Forum.
Signed-off-by: Heiko Schocher <hs@denx.de>
Fix boot from NAND for non-ARM systems
Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'nand_spl')
-rw-r--r-- | nand_spl/nand_boot.c | 7 | ||||
-rw-r--r-- | nand_spl/nand_boot_fsl_nfc.c | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/nand_spl/nand_boot.c b/nand_spl/nand_boot.c index b9fd6f5..0580dbf 100644 --- a/nand_spl/nand_boot.c +++ b/nand_spl/nand_boot.c @@ -221,6 +221,13 @@ static int nand_load(struct mtd_info *mtd, unsigned int offs, return 0; } +#if defined(CONFIG_ARM) && !defined(CONFIG_SYS_ARM_WITHOUT_RELOC) +void board_init_f (ulong bootflag) +{ + relocate_code (TEXT_BASE - TOTAL_MALLOC_LEN, NULL, TEXT_BASE); +} +#endif + /* * The main entry for NAND booting. It's necessary that SDRAM is already * configured and available since this code loads the main U-Boot image diff --git a/nand_spl/nand_boot_fsl_nfc.c b/nand_spl/nand_boot_fsl_nfc.c index ea3566b..f89d542 100644 --- a/nand_spl/nand_boot_fsl_nfc.c +++ b/nand_spl/nand_boot_fsl_nfc.c @@ -263,6 +263,13 @@ static int nand_load(unsigned int from, unsigned int size, unsigned char *buf) return 0; } +#if defined(CONFIG_ARM) && !defined(CONFIG_SYS_ARM_WITHOUT_RELOC) +void board_init_f (ulong bootflag) +{ + relocate_code (TEXT_BASE - TOTAL_MALLOC_LEN, NULL, TEXT_BASE); +} +#endif + /* * The main entry for NAND booting. It's necessary that SDRAM is already * configured and available since this code loads the main U-Boot image |