[U-Boot-Users] [PATCH] Unlock cache on mpc824x
Gleb Natapov
gleb at nbase.co.il
Tue Sep 2 15:20:02 CEST 2003
Hello,
MPC824x locks way0 of the cache while booting for use as initial RAM, but
it never unlocks it. The cache remains locked even after booting Linux.
Attached patch unlocks cache after relocation to RAM and invalidates locked
entries.
--
Gleb.
-------------- next part --------------
--- u-boot/cpu/mpc824x/start.S 2003-07-25 02:39:07.000000000 +0300
+++ u-boot.p/cpu/mpc824x/start.S 2003-09-02 16:01:59.000000000 +0300
@@ -526,11 +526,26 @@
stwu r0,-4(r7)
bdnz 3b
+4:
+#if !defined(CONFIG_BMW)
+/* Unlock the data cache and invalidate locked area */
+ xor r0, r0, r0
+ mtspr 1011, r0
+ lis r4, CFG_INIT_RAM_ADDR at h
+ ori r4, r4, CFG_INIT_RAM_ADDR at l
+ li r0, 128
+ mtctr r0
+41:
+ dcbi r0, r4
+ addi r4, r4, 32
+ bdnz 41b
+#endif
+
/*
* Now flush the cache: note that we must start from a cache aligned
* address. Otherwise we might miss one cache line.
*/
-4: cmpwi r6,0
+ cmpwi r6,0
add r5,r3,r5
beq 7f /* Always flush prefetch queue in any case */
subi r0,r6,1
More information about the U-Boot
mailing list