summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorVincent Stehlé <v-stehle@ti.com>2013-03-15 06:54:00 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2013-03-28 10:15:06 +0100
commitd53e340edf65ff253d3a7b06ebe60501045892e3 (patch)
tree927b1d9b288dc275e1f502fce9b3970f01fce716 /arch
parentde63ac278cbaaa387da3efaf0b21b819c2b0c496 (diff)
downloadu-boot-imx-d53e340edf65ff253d3a7b06ebe60501045892e3.zip
u-boot-imx-d53e340edf65ff253d3a7b06ebe60501045892e3.tar.gz
u-boot-imx-d53e340edf65ff253d3a7b06ebe60501045892e3.tar.bz2
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é <v-stehle@ti.com> Reported-by: Lubomir Popov <lpopov@mm-sol.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/cpu/armv7/start.S1
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S
index c0e1849..36a4c3c 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 */