diff options
author | Tetsuyuki Kobayashi <koba@kmckk.co.jp> | 2013-07-09 21:56:36 -0400 |
---|---|---|
committer | Simon Horman <horms+renesas@verge.net.au> | 2013-07-17 19:35:21 -0400 |
commit | c1d7e2e80079148626e6c411e56708d86311d31a (patch) | |
tree | 762f780a936342befee564c18a4886b4a61509a0 /arch/arm/mach-shmobile/headsmp.S | |
parent | bdea6c657e15a709e666ea707e72327c555e8e04 (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.S | 5 |
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 |
30 | ENTRY(shmobile_boot_vector) | 31 | ENTRY(shmobile_boot_vector) |
31 | ldr r0, 2f | 32 | ldr r0, 2f |
32 | ldr pc, 1f | 33 | ldr r1, 1f |
34 | bx r1 | ||
35 | |||
33 | ENDPROC(shmobile_boot_vector) | 36 | ENDPROC(shmobile_boot_vector) |
34 | 37 | ||
35 | .globl shmobile_boot_fn | 38 | .globl shmobile_boot_fn |