diff options
| author | Vincent Stehlé <[email protected]> | 2013-03-15 06:54:00 +0000 |
|---|---|---|
| committer | Albert ARIBAUD <[email protected]> | 2013-03-28 10:15:06 +0100 |
| commit | d53e340edf65ff253d3a7b06ebe60501045892e3 (patch) | |
| tree | 927b1d9b288dc275e1f502fce9b3970f01fce716 | |
| parent | de63ac278cbaaa387da3efaf0b21b819c2b0c496 (diff) | |
armv7: do not relocate _start twice
The _start symbol is already relocated, so do not add the relocation the second
time in c_runtime_cpu_setup.
This fixes e.g. the abort exception handling path, which ended in double fault
due to bad address in VBAR.
Signed-off-by: Vincent Stehlé <[email protected]>
Reported-by: Lubomir Popov <[email protected]>
| -rw-r--r-- | arch/arm/cpu/armv7/start.S | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S index c0e184994ab..36a4c3cfda1 100644 --- a/arch/arm/cpu/armv7/start.S +++ b/arch/arm/cpu/armv7/start.S @@ -254,7 +254,6 @@ ENTRY(c_runtime_cpu_setup) #if !defined(CONFIG_TEGRA) /* Set vector address in CP15 VBAR register */ ldr r0, =_start - add r0, r0, r9 mcr p15, 0, r0, c12, c0, 0 @Set VBAR #endif /* !Tegra */ |
