msm: smsm: Cache Flush on SMSM_RESET
Flush inner and outer cache when SMSM_RESET is received by apps proc.
On 7K targets, outer cache is not flushed during panic and ram dumps
do not provide all the updated information.
Change-Id: I97dd1ee10f9ad3656c1dda77f3e7f4542550ab13
Signed-off-by: Ram Somani <rsomani@codeaurora.org>
diff --git a/arch/arm/mach-msm/smd.c b/arch/arm/mach-msm/smd.c
index 3cf0550..d00dd1a 100644
--- a/arch/arm/mach-msm/smd.c
+++ b/arch/arm/mach-msm/smd.c
@@ -39,6 +39,7 @@
#include <mach/system.h>
#include <mach/subsystem_notif.h>
#include <mach/socinfo.h>
+#include <asm/cacheflush.h>
#include "smd_private.h"
#include "proc_comm.h"
@@ -2473,10 +2474,12 @@
modem_queue_start_reset_notify();
} else if (modm & SMSM_RESET) {
- if (!disable_smsm_reset_handshake)
- apps |= SMSM_RESET;
-
pr_err("\nSMSM: Modem SMSM state changed to SMSM_RESET.");
+ if (!disable_smsm_reset_handshake) {
+ apps |= SMSM_RESET;
+ flush_cache_all();
+ outer_flush_all();
+ }
modem_queue_start_reset_notify();
} else if (modm & SMSM_INIT) {