aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/headsmp.S
diff options
context:
space:
mode:
authorTetsuyuki Kobayashi <koba@kmckk.co.jp>2013-07-09 21:56:36 -0400
committerSimon Horman <horms+renesas@verge.net.au>2013-07-17 19:35:21 -0400
commitc1d7e2e80079148626e6c411e56708d86311d31a (patch)
tree762f780a936342befee564c18a4886b4a61509a0 /arch/arm/mach-shmobile/headsmp.S
parentbdea6c657e15a709e666ea707e72327c555e8e04 (diff)
ARM: shmobile: Force ARM mode to compile reset vector for secondary CPUs
Instructions start from boot vector must be ARM mode. This patch specify ARM mode explicitly and use 'bx' instruction to be able to change to Thumb mode. Signed-off-by: Tetsuyuki Kobayashi <koba@kmckk.co.jp> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'arch/arm/mach-shmobile/headsmp.S')
-rw-r--r--arch/arm/mach-shmobile/headsmp.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/mach-shmobile/headsmp.S b/arch/arm/mach-shmobile/headsmp.S
index 559d1ce5f57e..afed58e52ae6 100644
--- a/arch/arm/mach-shmobile/headsmp.S
+++ b/arch/arm/mach-shmobile/headsmp.S
@@ -26,10 +26,13 @@ ENDPROC(shmobile_invalidate_start)
26 * This will be mapped at address 0 by SBAR register. 26 * This will be mapped at address 0 by SBAR register.
27 * We need _long_ jump to the physical address. 27 * We need _long_ jump to the physical address.
28 */ 28 */
29 .arm
29 .align 12 30 .align 12
30ENTRY(shmobile_boot_vector) 31ENTRY(shmobile_boot_vector)
31 ldr r0, 2f 32 ldr r0, 2f
32 ldr pc, 1f 33 ldr r1, 1f
34 bx r1
35
33ENDPROC(shmobile_boot_vector) 36ENDPROC(shmobile_boot_vector)
34 37
35 .globl shmobile_boot_fn 38 .globl shmobile_boot_fn