diff options
| author | Ohad Ben-Cohen <ohad@wizery.com> | 2010-11-28 00:21:29 -0500 |
|---|---|---|
| committer | Chris Ball <cjb@laptop.org> | 2011-01-08 22:48:17 -0500 |
| commit | 080bc9774b6f1e3866747b18631bad26f47c22ce (patch) | |
| tree | 07ac4d1539b75036083d8b3c499e213fcca09cc4 /include/linux/mmc | |
| parent | e594573d790bd7e269f05955d316b88f7be0c14a (diff) | |
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.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h index 4a9d9d2589c..3a85e73a38a 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) | |||
| 320 | return !(host->caps & MMC_CAP_NONREMOVABLE) && mmc_assume_removable; | 320 | return !(host->caps & MMC_CAP_NONREMOVABLE) && mmc_assume_removable; |
| 321 | } | 321 | } |
| 322 | 322 | ||
| 323 | static inline int mmc_card_is_powered_resumed(struct mmc_host *host) | ||
| 324 | { | ||
| 325 | return host->pm_flags & MMC_PM_KEEP_POWER; | ||
| 326 | } | ||
| 327 | |||
| 323 | #endif | 328 | #endif |
| 324 | 329 | ||
