aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
authorSantosh Shilimkar <santosh.shilimkar@ti.com>2011-01-23 09:03:53 -0500
committerKevin Hilman <khilman@ti.com>2011-03-10 15:23:12 -0500
commitc9749a352383d4d2d25eb28062afd1a7eee115b7 (patch)
treedaff68be2cf3fbf0e177e5c40589684a37ad7c17 /arch/arm/mach-omap2
parent8409d57bc342536ffe96acc7cd6c7575d98d3edb (diff)
OMAP3: PM: Allow the cache clean when L1 is lost.
When L1 cache is suppose to be lost, it needs to be cleaned before entrering to the low power mode. While at this, also fix few comments and remove un-necessary clean_l2 lable. 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.S15
1 files changed, 3 insertions, 12 deletions
diff --git a/arch/arm/mach-omap2/sleep34xx.S b/arch/arm/mach-omap2/sleep34xx.S
index a31845a201e9..f75a166f0a21 100644
--- a/arch/arm/mach-omap2/sleep34xx.S
+++ b/arch/arm/mach-omap2/sleep34xx.S
@@ -188,12 +188,12 @@ ENTRY(omap34xx_cpu_suspend)
188 stmfd sp!, {r0-r12, lr} @ save registers on stack 188 stmfd sp!, {r0-r12, lr} @ save registers on stack
189 189
190 /* 190 /*
191 * r0 contains restore pointer in sdram 191 * r0 contains CPU context save/restore pointer in sdram
192 * r1 contains information about saving context: 192 * r1 contains information about saving context:
193 * 0 - No context lost 193 * 0 - No context lost
194 * 1 - Only L1 and logic lost 194 * 1 - Only L1 and logic lost
195 * 2 - Only L2 lost 195 * 2 - Only L2 lost (Even L1 is retained we clean it along with L2)
196 * 3 - Both L1 and L2 lost 196 * 3 - Both L1 and L2 lost and logic lost
197 */ 197 */
198 198
199 /* Directly jump to WFI is the context save is not required */ 199 /* Directly jump to WFI is the context save is not required */
@@ -278,15 +278,6 @@ l1_logic_lost:
278 278
279clean_caches: 279clean_caches:
280 /* 280 /*
281 * Clean Data or unified cache to POU
282 * How to invalidate only L1 cache???? - #FIX_ME#
283 * mcr p15, 0, r11, c7, c11, 1
284 */
285 cmp r1, #0x1 @ Check whether L2 inval is required
286 beq omap3_do_wfi
287
288clean_l2:
289 /*
290 * jump out to kernel flush routine 281 * jump out to kernel flush routine
291 * - reuse that code is better 282 * - reuse that code is better
292 * - it executes in a cached space so is faster than refetch per-block 283 * - it executes in a cached space so is faster than refetch per-block