ARM: mm: enable non-cacheable streaming enhancement
Bo Yan [Fri, 16 Nov 2012 00:56:22 +0000 (16:56 -0800)]
This is cortex-a15 specific

bug 1178938

Change-Id: Id695d89dbe1411d277f2c1296c74586ca9c1584e
Signed-off-by: Bo Yan <byan@nvidia.com>
Reviewed-on: http://git-master/r/164168
Reviewed-by: Mrutyunjay Sawant <msawant@nvidia.com>
Tested-by: Mrutyunjay Sawant <msawant@nvidia.com>

arch/arm/mm/proc-v7.S

index 52ddfdf..10eb322 100644 (file)
@@ -407,14 +407,19 @@ __v7_ca7mp_setup:
 __v7_ca15mp_setup:
        mov     r10, #0
 1:
-#ifdef CONFIG_SMP
+#ifdef CONFIG_SMP || CONFIG_ARCH_TEGRA
        ALT_SMP(mrc     p15, 0, r0, c1, c0, 1)
        ALT_UP(mov      r0, #(1 << 6))          @ fake it for UP
        tst     r0, #(1 << 6)                   @ SMP/nAMP mode enabled?
        orreq   r0, r0, #(1 << 6)               @ Enable SMP/nAMP mode
        orreq   r0, r0, r10                     @ Enable CPU-specific SMP bits
+#ifdef CONFIG_ARCH_TEGRA
+       orr     r0, #(1<<24)                    @ Enable non-cacheable streaming enhancement
+       mcr     p15, 0, r0, c1, c0, 1
+#else
        mcreq   p15, 0, r0, c1, c0, 1
 #endif
+#endif
 __v7_setup:
        adr     r12, __v7_setup_stack           @ the local stack
        stmia   r12, {r0-r5, r7, r9, r11, lr}