ARM: 7614/1: mm: fix wrong branch from Cortex-A9 to PJ4b
authorHaojian Zhuang <haojian.zhuang@linaro.org>
Sat, 5 Jan 2013 12:57:38 +0000 (13:57 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 6 Jan 2013 17:54:08 +0000 (17:54 +0000)
If CONFIG_ARCH_MULTIPLATFORM & CONFIG_ARCH_MVEBU are both enabled,
__v7_pj4b_setup is added between __v7_ca9mp_setup and __v7_setup.

But there's no jump instruction added. If the chip is Cortex A5/A9,
it goes through __v7_pj4b_setup also. It results in system hang.

Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/proc-v7.S

index 26a62054f0c3f3f36732a77ab7dcc874a016eb4e..3a3c015f8d5c33cb99357995b6d35790037e7f94 100644 (file)
@@ -169,6 +169,7 @@ __v7_ca15mp_setup:
        orreq   r0, r0, r10                     @ Enable CPU-specific SMP bits
        mcreq   p15, 0, r0, c1, c0, 1
 #endif
+       b       __v7_setup
 
 __v7_pj4b_setup:
 #ifdef CONFIG_CPU_PJ4B