[U-Boot] [PATCH 1/2] integratorap: disable dcache

Linus Walleij linus.walleij at linaro.org
Thu Jul 14 01:04:27 CEST 2011


The Integrator AP with CM920T (ARM920T) does not boot without
D-cache disabled throughout, the actual problem comes at "bootm",
at this point U-Boot tries to disable D-cache which doesn't work
on this machine for some reason. The result is usually an
illegal instruction trap or similar as the PC goes astray in
memory and crash something like this:

 undefined instruction
 pc : [<01ff1c44>]          lr : [<01fd8430>]
 sp : 01fa7e08  ip : 01fa7dc0     fp : 00000000
 r10: 01fef318  r9 : 00000015     r8 : 01fa7f70
 r7 : 00000015  r6 : 00008000     r5 : 01fa7fe8  r4 : 00000000
 r3 : 01fef380  r2 : 01fef8b0     r1 : ffffffff  r0 : fffffffe
 Flags: Nzcv  IRQs off  FIQs off  Mode SVC_32
 Resetting CPU ...

Disabling D-cache brings the board support to a working state that
can boot the Linux kernel.

Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
---
 include/configs/integratorap.h |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/include/configs/integratorap.h b/include/configs/integratorap.h
index 26eac8b..acdb37c 100644
--- a/include/configs/integratorap.h
+++ b/include/configs/integratorap.h
@@ -48,6 +48,7 @@
 #define CONFIG_CM_INIT		1
 #define CONFIG_CM_REMAP		1
 #undef CONFIG_CM_SPD_DETECT
+#define CONFIG_SYS_DCACHE_OFF
 
 /*
  * Size of malloc() pool
-- 
1.7.6



More information about the U-Boot mailing list