aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Medhurst <tixy@linaro.org>2012-09-07 09:28:49 +0100
committerAmit Pundir <amit.pundir@linaro.org>2012-09-15 00:46:44 +0530
commit9a4442cb9a98455ece5f2dda98db74e76dc2d9b6 (patch)
tree8565199e9d00a852d92f3d2cab890ab158747097
parent9b9cabe5ba5937917a23fb85eafff41cdabc3276 (diff)
bootwrapper: Get it working for big.LITTLE models
Note, this breaks other models. Signed-off-by: Jon Medhurst <tixy@linaro.org>
-rw-r--r--boot.S15
1 files changed, 14 insertions, 1 deletions
diff --git a/boot.S b/boot.S
index 61cd93f..60b59a6 100644
--- a/boot.S
+++ b/boot.S
@@ -67,6 +67,19 @@ start:
mov r0, #0xf0000000
mcr p15, 0, r0, c12, c0, 1 @ Monitor vector base address
+ @
+ @ Turn on CCI snoops
+ @
+ mov r3, #3
+ ldr r4, =0x2c090000
+ mov r5, #0x4000 @ A15
+ str r3, [r4, r5]
+ mov r5, #0x5000 @ A7
+ str r3, [r4, r5]
+0: ldr r3, [r4, #0xc] @ status reg
+ tst r3, #1
+ bne 0b
+
@ Set up hvbar so hvc comes back here.
ldr r0, =vectors
mov r7, #0xfffffff0
@@ -93,7 +106,7 @@ vectors:
into_hyp_mode:
@ Check CPU nr again
mrc p15, 0, r0, c0, c0, 5 @ MPIDR (ARMv7 only)
- and r0, r0, #15 @ CPU number
+ bfc r0, #24, #8 @ CPU number, taking multicluster into account
cmp r0, #0 @ primary CPU?
beq 2f