We use CONFIG_SYS_RAMBOOT for when boot out of NAND, SPI, SDHC/MMC and utilize a L2 or L3 cache in SRAM mode. In this case we will end up changing the cache from SRAM mode back to cache before we relocate the environment properly in env_relocate().
So we need to manual relocate the env pointer out of SRAM into DDR. Signed-off-by: Kumar Gala <ga...@kernel.crashing.org> --- arch/powerpc/lib/board.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/arch/powerpc/lib/board.c b/arch/powerpc/lib/board.c index 2e0749d..5ce9caa 100644 --- a/arch/powerpc/lib/board.c +++ b/arch/powerpc/lib/board.c @@ -645,6 +645,18 @@ void board_init_r (gd_t *id, ulong dest_addr) gd->cpu += dest_addr - CONFIG_SYS_MONITOR_BASE; #endif +#if defined(CONFIG_MPC85xx) && defined(CONFIG_SYS_RAMBOOT) + /* + * We use CONFIG_SYS_RAMBOOT for when boot out of NAND, SPI, SDHC/MMC + * and utilize a L2 or L3 cache in SRAM mode. In this case we will + * end up changing the cache from SRAM mode back to cache before we + * relocate the environment properly in env_relocate(). + * + * So we need to manual relocate the env pointer out of SRAM into DDR. + */ + gd->env_addr += dest_addr - CONFIG_SYS_MONITOR_BASE; +#endif + #ifdef CONFIG_SERIAL_MULTI serial_initialize(); #endif -- 1.7.2.3 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot