From 8e6f83bbdf770014c070c5a41c8e89617cb2a66b Mon Sep 17 00:00:00 2001 From: Russell King Date: Thu, 1 Sep 2011 11:57:59 +0100 Subject: [PATCH] ARM: pm: add L2 cache cleaning for suspend We need to ensure that state is pushed out from the L2 cache when suspending so that the resume paths can access their data before the MMU and caches have been re-initialized. Add the necessary calls to __cpu_suspend_save(). Tested-by: Santosh Shilimkar Tested-by: Shawn Guo Tested-by: Lorenzo Pieralisi Signed-off-by: Russell King --- arch/arm/kernel/suspend.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/arm/kernel/suspend.c b/arch/arm/kernel/suspend.c index 2d60f190320..93a22d282c1 100644 --- a/arch/arm/kernel/suspend.c +++ b/arch/arm/kernel/suspend.c @@ -28,6 +28,9 @@ void __cpu_suspend_save(u32 *ptr, u32 ptrsz, u32 sp, u32 *save_ptr) cpu_do_suspend(ptr); flush_cache_all(); + outer_clean_range(*save_ptr, *save_ptr + ptrsz); + outer_clean_range(virt_to_phys(save_ptr), + virt_to_phys(save_ptr) + sizeof(*save_ptr)); } /* -- 2.11.4.GIT