summaryrefslogtreecommitdiff
path: root/arch/arm
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
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')
-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)
* 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