v6 software reset fails on 1176
Jamie Iles
jamie at jamieiles.com
Tue Aug 23 12:32:47 EDT 2011
Hi Will,
I'm trying to use the cpu_v6_reset that you added in "ARM: proc: add
definition of cpu_reset for ARMv6 and ARMv7 cores", but I've found that
on my 1176 platform, it never gets to the branch to the reset vector.
Removing the ISB allows the branch instruction to be in the pipeline by
the time the MMU is disabled, but I'm not sure if this is the correct
fix. Having said that, I don't see how this can work with an ISB in
there.
Jamie
diff --git a/arch/arm/mm/proc-v6.S b/arch/arm/mm/proc-v6.S
index 219138d..3b6737a 100644
--- a/arch/arm/mm/proc-v6.S
+++ b/arch/arm/mm/proc-v6.S
@@ -59,8 +59,6 @@ ENTRY(cpu_v6_reset)
mrc p15, 0, r1, c1, c0, 0 @ ctrl register
bic r1, r1, #0x1 @ ...............m
mcr p15, 0, r1, c1, c0, 0 @ disable MMU
- mov r1, #0
- mcr p15, 0, r1, c7, c5, 4 @ ISB
mov pc, r0
/*
More information about the linux-arm-kernel
mailing list