]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ARM: 6139/1: ARMv7: Use the Inner Shareable I-cache on MP
authorSantosh Shilimkar <santosh.shilimkar@ti.com>
Thu, 20 May 2010 07:33:38 +0000 (08:33 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 5 Jul 2010 18:22:31 +0000 (11:22 -0700)
commit a901ff715d53c109821cbbd9d7ea1f2a311646a9 upstream.

This patch fixes the flush_cache_all for ARMv7 SMP.It was
missing from commit b8349b569aae661dea9d59d7d2ee587ccea3336c

Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/arm/mm/cache-v7.S

index 06a90dcfc60a6f0cc0b88d5a02bfefdbfeb8610a..37c8157e116e8aa54dc8cdf4ffddf1e4f8bda0f3 100644 (file)
@@ -91,7 +91,11 @@ ENTRY(v7_flush_kern_cache_all)
  THUMB(        stmfd   sp!, {r4-r7, r9-r11, lr}        )
        bl      v7_flush_dcache_all
        mov     r0, #0
+#ifdef CONFIG_SMP
+       mcr     p15, 0, r0, c7, c1, 0           @ invalidate I-cache inner shareable
+#else
        mcr     p15, 0, r0, c7, c5, 0           @ I+BTB cache invalidate
+#endif
  ARM(  ldmfd   sp!, {r4-r5, r7, r9-r11, lr}    )
  THUMB(        ldmfd   sp!, {r4-r7, r9-r11, lr}        )
        mov     pc, lr