diff options
author | York Sun <york.sun@nxp.com> | 2017-03-06 20:02:34 +0300 |
---|---|---|
committer | York Sun <york.sun@nxp.com> | 2017-03-14 18:44:03 +0300 |
commit | 4961eafc25d0bfa7ac5f88ec78a7f7501c202fbb (patch) | |
tree | f1e66358f067240368b3b3b70514f7b8b3c49dc5 /board/freescale/ls1012aqds/ls1012aqds.c | |
parent | 7f9b9f318ff152bd8d2e8b573708e2bdc088c1b1 (diff) | |
download | u-boot-4961eafc25d0bfa7ac5f88ec78a7f7501c202fbb.tar.xz |
armv8: layerscape: Update early MMU for DDR after initialization
In early MMU table, DDR has to be mapped as device memory to avoid
speculative access. After DDR is initialized, it needs to be updated
to normal memory to allow code execution. To simplify the code,
dram_init() is moved into a common file as a weak function.
Signed-off-by: York Sun <york.sun@nxp.com>
Diffstat (limited to 'board/freescale/ls1012aqds/ls1012aqds.c')
-rw-r--r-- | board/freescale/ls1012aqds/ls1012aqds.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/board/freescale/ls1012aqds/ls1012aqds.c b/board/freescale/ls1012aqds/ls1012aqds.c index fbda504c04..97ab3400ad 100644 --- a/board/freescale/ls1012aqds/ls1012aqds.c +++ b/board/freescale/ls1012aqds/ls1012aqds.c @@ -14,6 +14,7 @@ #include <asm/arch/ppa.h> #endif #include <asm/arch/fdt.h> +#include <asm/arch/mmu.h> #include <asm/arch/soc.h> #include <ahci.h> #include <hwconfig.h> @@ -76,6 +77,10 @@ int dram_init(void) mmdc_init(&mparam); gd->ram_size = CONFIG_SYS_SDRAM_SIZE; +#if !defined(CONFIG_SPL) || defined(CONFIG_SPL_BUILD) + /* This will break-before-make MMU for DDR */ + update_early_mmu_table(); +#endif return 0; } |