summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorBo Yan <byan@nvidia.com>2012-11-29 11:33:44 -0800
committerSimone Willett <swillett@nvidia.com>2012-12-05 17:42:22 -0800
commit51524645b8a162309f302b8fb51be6709cd2ffb1 (patch)
tree006bd30fd64ad17a5f1a0f6b1f26246ec9e3079f /arch
parent2b2513fc62a2dc5e6600eae6016b24f7f74f9680 (diff)
ARM: mm: restore counter enable register
Change-Id: I2433e53175e79d558d76a7c37b10de9175d7b1b0 Signed-off-by: Bo Yan <byan@nvidia.com> Reviewed-on: http://git-master/r/167385 Reviewed-by: Simone Willett <swillett@nvidia.com> Tested-by: Simone Willett <swillett@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mm/proc-v7.S10
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index 84e98ebfde61..7cfcd7426c0b 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -129,7 +129,7 @@ ENDPROC(cpu_v7_dcache_clean_area)
#endif
.globl cpu_v7_suspend_size
-.equ cpu_v7_suspend_size, (4 * 15) + cpu_v7_debug_suspend_size
+.equ cpu_v7_suspend_size, (4 * 17) + cpu_v7_debug_suspend_size
#ifdef CONFIG_ARM_CPU_SUSPEND
ENTRY(cpu_v7_do_suspend)
stmfd sp!, {r3 - r10, lr}
@@ -144,7 +144,9 @@ ENTRY(cpu_v7_do_suspend)
mrc p15, 0, r7, c9, c13, 2 @ PMXEVCNTR, event counter
mrc p15, 0, r8, c9, c13, 1 @ PMXEVTYPER or PMCCFILTR
mrc p15, 0, r9, c9, c13, 0 @ PMCCNTR, cycle counter
- stmia r0!, {r4 - r9}
+ mrc p15, 0, r10, c9, c12, 0 @ PMCR, control register
+ mrc p15, 0, r11, c9, c12, 1 @ PMCNTENSET, counter enable set
+ stmia r0!, {r4 - r11}
mrc p15, 0, r6, c3, c0, 0 @ Domain ID
mrc p15, 0, r7, c2, c0, 1 @ TTB 1
@@ -255,13 +257,15 @@ ENTRY(cpu_v7_do_resume)
mcr p15, 0, r6, c15, c0, 1 @ diag
#endif
- ldmia r0!, {r4 - r9}
+ ldmia r0!, {r4 - r11}
mcr p15, 0, r4, c9, c14, 2 @ PMINTENCLR
mcr p15, 0, r5, c9, c14, 0 @ PMUSEREN
mcr p15, 0, r6, c9, c12, 5 @ PMSELR, event counter selection
mcr p15, 0, r7, c9, c13, 2 @ PMXEVCNTR, event counter
mcr p15, 0, r8, c9, c13, 1 @ PMXEVTYPER or PMCCFILTR
mcr p15, 0, r9, c9, c13, 0 @ PMCCNTR, cycle counter
+ mcr p15, 0, r10, c9, c12, 0 @ PMCR, control register
+ mcr p15, 0, r11, c9, c12, 1 @ PMCNTENSET, counter enable set
ldmia r0!, {r6 - r11}
mcr p15, 0, r6, c3, c0, 0 @ Domain ID