[U-Boot] [RFC PATCH] armv7: setup vector
Aneesh V
aneesh at ti.com
Wed Jul 20 15:19:34 CEST 2011
The vector is not correctly setup in armv7 except for OMAP3.
Correcting this.
Signed-off-by: Aneesh V <aneesh at ti.com>
Cc: Albert Aribaud <albert.u.boot at aribaud.net>
---
arch/arm/cpu/armv7/start.S | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/arch/arm/cpu/armv7/start.S b/arch/arm/cpu/armv7/start.S
index 89ea01f..9ffdfe2 100644
--- a/arch/arm/cpu/armv7/start.S
+++ b/arch/arm/cpu/armv7/start.S
@@ -32,6 +32,7 @@
#include <asm-offsets.h>
#include <config.h>
#include <version.h>
+#include <asm/system.h>
.globl _start
_start: b reset
@@ -143,6 +144,15 @@ reset:
orr r0, r0, #0xd3
msr cpsr,r0
+ /* Set V=0 in CP15 SCTRL register - for VBAR to point to vector */
+ mrc p15, 0, r0, c1, c0, 0 @ Read CP15 SCTRL Register
+ bic r0, #CR_V @ V = 0
+ mcr p15, 0, r0, c1, c0, 0 @ Write CP15 SCTRL Register
+
+ /* Set vector address in CP15 VBAR register */
+ ldr r0, =_start
+ mcr p15, 0, r0, c12, c0, 0 @Set VBAR
+
#if defined(CONFIG_OMAP34XX)
/* Copy vectors to mask ROM indirect addr */
adr r0, _start @ r0 <- current position of code
--
1.7.0.4
More information about the U-Boot
mailing list