aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mmc
diff options
context:
space:
mode:
authorOhad Ben-Cohen <ohad@wizery.com>2010-11-28 07:21:29 +0200
committerChris Ball <cjb@laptop.org>2011-01-08 22:48:17 -0500
commit080bc9774b6f1e3866747b18631bad26f47c22ce (patch)
tree07ac4d1539b75036083d8b3c499e213fcca09cc4 /include/linux/mmc
parente594573d790bd7e269f05955d316b88f7be0c14a (diff)
downloadkernel_samsung_smdk4412-080bc9774b6f1e3866747b18631bad26f47c22ce.zip
kernel_samsung_smdk4412-080bc9774b6f1e3866747b18631bad26f47c22ce.tar.gz
kernel_samsung_smdk4412-080bc9774b6f1e3866747b18631bad26f47c22ce.tar.bz2
mmc: sdio: don't reinitialize nonremovable powered-resumed cards
Upon system resume, SDIO core must reinitialize cards that were powered off during suspend. If the card had its power kept during suspend (and thus it is 'powered-resumed'), SDIO core performs only a limited reinitializing, mainly needed to make sure that the card wasn't removed/replaced. If a __nonremovable__ card is powered-resumed, we can safely skip the reinitializing phase. Note: 9b966aa (mmc: sdio: fully reconfigure oldcard on resume) removed the bus width reconfiguration since mmc_sdio_init_card already does it. It is brought back now in case mmc_sdio_init_card is skipped. Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com> Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'include/linux/mmc')
-rw-r--r--include/linux/mmc/host.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h
index 4a9d9d25..3a85e73 100644
--- a/include/linux/mmc/host.h
+++ b/include/linux/mmc/host.h
@@ -320,5 +320,10 @@ static inline int mmc_card_is_removable(struct mmc_host *host)
return !(host->caps & MMC_CAP_NONREMOVABLE) && mmc_assume_removable;
}
+static inline int mmc_card_is_powered_resumed(struct mmc_host *host)
+{
+ return host->pm_flags & MMC_PM_KEEP_POWER;
+}
+
#endif