mmc: core: Fixup broken suspend and eMMC4.5 power off notify
authorUlf Hansson <ulf.hansson@linaro.org>
Fri, 5 Oct 2012 16:45:39 +0000 (12:45 -0400)
committerChris Ball <cjb@laptop.org>
Sun, 7 Oct 2012 21:41:45 +0000 (17:41 -0400)
commite6c085863f97f0a8f009753e1baaf83e4aac7b42
tree10819da5eb65d1919023ea540bb1580ebdb50dae
parentda764f97df0e5e05e5453279f934531c0cf52e11
mmc: core: Fixup broken suspend and eMMC4.5 power off notify

This patch fixes up the broken suspend sequence for eMMC with sleep
support. Additionally it reworks the eMMC4.5 Power Off Notification
feature so it fits together with the existing sleep feature.

The CMD0 based re-initialization of the eMMC at resume is re-introduced
to maintain compatiblity for devices using sleep.

A host shall use MMC_CAP2_POWEROFF_NOTIFY to enable the Power Off
Notification feature. We might be able to remove this cap later on,
if we think that Power Off Notification always is preferred over
sleep, even if the host is not able to cut the eMMC VCCQ power.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Saugata Das <saugata.das@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/core/core.c
drivers/mmc/core/mmc.c
drivers/mmc/host/dw_mmc.c
drivers/mmc/host/sdhci.c
include/linux/mmc/card.h
include/linux/mmc/host.h