[U-Boot] [RESEND PATCH v3 12/13] arm: mvebu: Add d-cache invalidate before enabling the d-cache

Stefan Roese sr at denx.de
Sat Apr 25 06:29:55 CEST 2015


This solves some RX problems that have been seen, when using the
mvneta ethernet driver. The cache needs to be reset into a "clean"
state before using it.

Signed-off-by: Stefan Roese <sr at denx.de>
Tested-by: Kevin Smith <kevin.smith at elecsyscorp.com>
Tested-by: Dirk Eibach <dirk.eibach at gdsys.cc>
---

Changes in v3: None
Changes in v2: None

 arch/arm/mach-mvebu/cpu.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/arm/mach-mvebu/cpu.c b/arch/arm/mach-mvebu/cpu.c
index 8058fad..04681fc 100644
--- a/arch/arm/mach-mvebu/cpu.c
+++ b/arch/arm/mach-mvebu/cpu.c
@@ -240,6 +240,9 @@ int cpu_eth_init(bd_t *bis)
 #ifndef CONFIG_SYS_DCACHE_OFF
 void enable_caches(void)
 {
+	/* Avoid problem with e.g. neta ethernet driver */
+	invalidate_dcache_all();
+
 	/* Enable D-cache. I-cache is already enabled in start.S */
 	dcache_enable();
 }
-- 
2.3.6



More information about the U-Boot mailing list