msm: sdio: prevent modem sleep until completion of sleep sequence
8k needs to prevent the modem from sleeping until it gets the
PROG_DONE on the dummy CMD52, by keeping the SD clock on.
Signed-off-by: Maya Erez <merez@codeaurora.org>
diff --git a/arch/arm/mach-msm/sdio_al.c b/arch/arm/mach-msm/sdio_al.c
index 9a1a89e..981837c 100644
--- a/arch/arm/mach-msm/sdio_al.c
+++ b/arch/arm/mach-msm/sdio_al.c
@@ -745,6 +745,9 @@
ch->read_threshold);
}
}
+ /* Prevent modem to go to sleep until we get the PROG_DONE on
+ the dummy CMD52 */
+ msmsdcc_set_pwrsave(sdio_al_dev->card->host, 0);
/* Mark HOST_OK_TOSLEEP */
sdio_al_dev->is_ok_to_sleep = 1;
write_lpm_info(sdio_al_dev);
@@ -755,6 +758,7 @@
/* Disable clocks here */
host->ios.clock = 0;
msmsdcc_lpm_enable(host);
+ msmsdcc_set_pwrsave(sdio_al_dev->card->host, 1);
LPM_DEBUG(MODULE_NAME ":Finished sleep sequence for card %d. "
"Sleep now.\n",
sdio_al_dev->card->host->index);