[U-Boot] MCF528x cache errata / fix [PATCH] -- resent in git format
Michael Durrant
mdurrant at arcturusnetworks.com
Wed Jan 20 19:34:06 CET 2010
cpu_mcf52x2_cache.patch
- Setup CACR, bit 5 set to 0 per Freescale chip errata
(MCF5282DE, Rev. 6, 5/2009)
Signed-off-by: David Wu <davidwu at arcturusnetworks.com>
Signed-off-by: Michael Durrant <mdurrant at arcturusnetworks.com>
---
cpu/mcf52x2/cpu_init.c | 6 ++++--
cpu/mcf52x2/start.S | 5 ++++-
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/cpu/mcf52x2/cpu_init.c b/cpu/mcf52x2/cpu_init.c
index 5b06930..60b55ce 100644
--- a/cpu/mcf52x2/cpu_init.c
+++ b/cpu/mcf52x2/cpu_init.c
@@ -609,8 +609,10 @@ void cpu_init_f(void)
#endif /* CONFIG_MONITOR_IS_IN_RAM */
- /* defer enabling cache until boot (see do_go) */
- /* icache_enable(); */
+#if defined(CONFIG_SYS_ENABLE_ICACHE)
+ /* enable instruction cache now */
+ icache_enable();
+#endif
}
/*
diff --git a/cpu/mcf52x2/start.S b/cpu/mcf52x2/start.S
index 0dd4de5..5540c95 100644
--- a/cpu/mcf52x2/start.S
+++ b/cpu/mcf52x2/start.S
@@ -417,7 +417,10 @@ icache_enable:
movec %d0, %ACR0 /* Enable cache */
move.l #0xff00c000, %d0 /* Setup cache mask */
movec %d0, %ACR1 /* Enable cache */
- move.l #0x80400100, %d0 /* Setup cache mask, data cache
disabel*/
+ move.l #0x80400000, %d0 /* Setup cache mask, data cache
disabled,
+ bit 5 set to 0 per chip errata
+ (MCF5282DE, Rev. 6, 5/2009)
+ */
movec %d0, %CACR /* Enable cache */
moveq #1, %d0
icache_state_access_1:
-- 1.4.3.4
More information about the U-Boot
mailing list