summaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
authorSantosh Shilimkar <santosh.shilimkar@ti.com>2011-01-23 10:34:39 (GMT)
committerKevin Hilman <khilman@ti.com>2011-03-10 20:23:12 (GMT)
commit8409d57bc342536ffe96acc7cd6c7575d98d3edb (patch)
tree11d2fe0f122109ec2fd2cd9132517c5e56cd4d87 /arch/arm/mach-omap2
parent4444d712fd5b31f2348b57eaa2bbdc5e68c4e1b6 (diff)
downloadlinux-8409d57bc342536ffe96acc7cd6c7575d98d3edb.tar.xz
OMAP3: PM: Fix the MMU on sequence in the asm code
Add necessary barriers after enabling MMU. Also use the sane way to load pc and jump to it instead of executing ldma first up. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r--arch/arm/mach-omap2/sleep34xx.S5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/sleep34xx.S b/arch/arm/mach-omap2/sleep34xx.S
index 1c17ee81..a31845a 100644
--- a/arch/arm/mach-omap2/sleep34xx.S
+++ b/arch/arm/mach-omap2/sleep34xx.S
@@ -617,12 +617,17 @@ usettbr0:
ldr r2, cache_pred_disable_mask
and r4, r2
mcr p15, 0, r4, c1, c0, 0
+ dsb
+ isb
+ ldr r0, =restoremmu_on
+ bx r0
/*
* ==============================
* == Exit point from OFF mode ==
* ==============================
*/
+restoremmu_on:
ldmfd sp!, {r0-r12, pc} @ restore regs and return