summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/headsmp.S
diff options
context:
space:
mode:
authorTetsuyuki Kobayashi <koba@kmckk.co.jp>2013-07-10 10:56:36 +0900
committerSimon Horman <horms+renesas@verge.net.au>2013-07-18 08:35:21 +0900
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 559d1ce5f57..afed58e52ae 100644
--- a/arch/arm/mach-shmobile/headsmp.S
+++ b/arch/arm/mach-shmobile/headsmp.S
@@ -26,10 +26,13 @@ ENDPROC(shmobile_invalidate_start)
* This will be mapped at address 0 by SBAR register.
* We need _long_ jump to the physical address.
*/
+ .arm
.align 12
ENTRY(shmobile_boot_vector)
ldr r0, 2f
- ldr pc, 1f
+ ldr r1, 1f
+ bx r1
+
ENDPROC(shmobile_boot_vector)
.globl shmobile_boot_fn