summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoffer Dall <cdall@cs.columbia.edu>2011-04-23 12:26:30 +0200
committerChristoffer Dall <cdall@cs.columbia.edu>2011-04-28 13:15:23 +0200
commitf6a4aa162284a89ea25dd6c3dc7398efb8c5bc6e (patch)
treedd67c7b539b1b61c954a371e3bb50d485106a93d
parent446e06a134c48a549746e56ec7965b1d8a473940 (diff)
Set interrupts to be non-secure
-rw-r--r--boot.S12
1 files changed, 12 insertions, 0 deletions
diff --git a/boot.S b/boot.S
index 78ca6ff..3e5f33e 100644
--- a/boot.S
+++ b/boot.S
@@ -48,6 +48,18 @@ _start:
@ Hypervisor / TrustZone initialization
@
2:
+ @ Set all interrupts to be non-secure
+ ldr r0, =0x2c001000 @ Dist GIC base
+ ldr r1, [r0, #0x04] @ Type Register
+ and r1, r1, #0x1f
+ add r2, r0, #0x080 @ Security Register 0
+ mvn r3, #0
+3: str r3, [r2]
+ sub r1, r1, #1
+ add r2, r2, #4 @ Next security register
+ cmp r1, #-1
+ bne 3b
+
@ Set GIC priority mask bit [7] = 1
ldr r0, =0x2c002000 @ CPU GIC base
mov r1, #0x80