[U-Boot] [PATCH 3/7] 86xx: Unlock l1 cache unconditionally

Peter Tyser ptyser at xes-inc.com
Fri May 22 17:26:34 CEST 2009


Previously, it was only unlocked when Linux was executed using the
"bootm" command.  Unlocking it unconditionally improves U-Boot
performance and provides a common cache state when booting OSes.

Signed-off-by: Peter Tyser <ptyser at xes-inc.com>
---
 lib_ppc/board.c |    8 +++++---
 lib_ppc/bootm.c |    3 ++-
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/lib_ppc/board.c b/lib_ppc/board.c
index a0e6b20..7c02540 100644
--- a/lib_ppc/board.c
+++ b/lib_ppc/board.c
@@ -68,7 +68,8 @@
 #if defined(CONFIG_LOGBUFFER)
 #include <logbuff.h>
 #endif
-#if defined(CONFIG_SYS_INIT_RAM_LOCK) && defined(CONFIG_E500)
+#if defined(CONFIG_SYS_INIT_RAM_LOCK) && \
+	(defined(CONFIG_E500) || defined(CONFIG_MPC86xx))
 #include <asm/cache.h>
 #endif
 #ifdef CONFIG_PS2KBD
@@ -754,8 +755,9 @@ void board_init_r (gd_t *id, ulong dest_addr)
 	icache_enable ();	/* it's time to enable the instruction cache */
 #endif
 
-#if defined(CONFIG_SYS_INIT_RAM_LOCK) && defined(CONFIG_E500)
-	unlock_ram_in_cache();	/* it's time to unlock D-cache in e500 */
+#if defined(CONFIG_SYS_INIT_RAM_LOCK) && \
+	(defined(CONFIG_E500) || defined(CONFIG_MPC86xx))
+	unlock_ram_in_cache();	/* it's time to unlock D-cache */
 #endif
 
 #if defined(CONFIG_BAB7xx) || defined(CONFIG_CPC45)
diff --git a/lib_ppc/bootm.c b/lib_ppc/bootm.c
index 0d702bf..d1cf94e 100644
--- a/lib_ppc/bootm.c
+++ b/lib_ppc/bootm.c
@@ -71,7 +71,8 @@ static void boot_jump_linux(bootm_headers_t *images)
 
 	show_boot_progress (15);
 
-#if defined(CONFIG_SYS_INIT_RAM_LOCK) && !defined(CONFIG_E500)
+#if defined(CONFIG_SYS_INIT_RAM_LOCK) && \
+	!defined(CONFIG_E500) && !defined(CONFIG_MPC86xx)
 	unlock_ram_in_cache();
 #endif
 
-- 
1.6.2.1



More information about the U-Boot mailing list