summaryrefslogtreecommitdiff
path: root/common/board_r.c
diff options
context:
space:
mode:
authorYork Sun <yorksun@freescale.com>2014-10-02 15:20:10 -0700
committerTom Rini <trini@ti.com>2014-10-10 09:44:41 -0400
commitfef3e25fc3f59da6410878614e8717020a7d7f74 (patch)
treebf43e261b88cd90107a331f7039eac253021e6aa /common/board_r.c
parent64a0c24726530696bf0c2cdaa75d171d957a7ee0 (diff)
downloadu-boot-fef3e25fc3f59da6410878614e8717020a7d7f74.tar.gz
u-boot-fef3e25fc3f59da6410878614e8717020a7d7f74.tar.bz2
u-boot-fef3e25fc3f59da6410878614e8717020a7d7f74.zip
common/board_r: Fix booting issue on T4240QDS
Commit 294b91a5817147d4b7f47be2ac69bac2a1f26491 moved initr_malloc earlier than initr_unlock_ram_in_cache. This causes issue on T4240. It may be related to locked L1 d-cache and unlocked L2 cache. D- cache could and should be unlock earlier for normal operation. This patch moves initr_unlock_ram_in_cache before initr_malloc. It has been verified on the following boards, in which only T4240QDS suffered and has been since fixed: T4240QDS, T2080QDS, P5040DS, P4080DS, MPC8572DS, MPC8536DS, MPC8641HPCN, B4860QDS. Signed-off-by: York Sun <yorksun@freescale.com> CC: Scott Wood <scottwood@freescale.com> CC: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'common/board_r.c')
-rw-r--r--common/board_r.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/common/board_r.c b/common/board_r.c
index 231c6d6711..c339aad7f5 100644
--- a/common/board_r.c
+++ b/common/board_r.c
@@ -717,6 +717,9 @@ init_fnc_t init_sequence_r[] = {
initr_caches,
#endif
initr_reloc_global_data,
+#if defined(CONFIG_SYS_INIT_RAM_LOCK) && defined(CONFIG_E500)
+ initr_unlock_ram_in_cache,
+#endif
initr_barrier,
initr_malloc,
bootstage_relocate,
@@ -759,9 +762,6 @@ init_fnc_t init_sequence_r[] = {
#ifdef CONFIG_SYS_DELAYED_ICACHE
initr_icache_enable,
#endif
-#if defined(CONFIG_SYS_INIT_RAM_LOCK) && defined(CONFIG_E500)
- initr_unlock_ram_in_cache,
-#endif
#if defined(CONFIG_PCI) && defined(CONFIG_SYS_EARLY_PCI_INIT)
/*
* Do early PCI configuration _before_ the flash gets initialised,