linux/drivers/mmc/core
Ulf Hansson 573185cc7e mmc: core: Invoke sdio func driver's PM callbacks from the sdio bus
The sdio func device is added to the driver model after the card
device.

This means the sdio func device will be suspend before the card device
and thus resumed after. The consequence are the mmc core don't
explicity need to protect itself from receiving sdio requests in
suspended state. Instead that can be handled from the sdio bus, which
is thus invokes the PM callbacks instead of old dummy function.

In the case were the sdio func driver don't implement the PM callbacks
the mmc core will in the early phase of system suspend, remove the
card from the driver model and thus power off it.

Cc: Aaron Lu <aaron.lu@intel.com>
Cc: NeilBrown <neilb@suse.de>
Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Reviewed-by: Aaron Lu <aaron.lu@intel.com>
Tested-by: xiaoming wang <xiaoming.wang@intel.com>
Tested-by: Chuanxiao Dong <chuanxiao.dong@intel.com>
Signed-off-by: Chris Ball <chris@printf.net>
2014-04-22 07:06:40 -04:00
..
bus.c mmc: core: Remove unnecessary validations for bus_ops callbacks 2014-02-13 22:58:23 -05:00
bus.h mmc: rename dev_to_mmc_card() to mmc_dev_to_card() 2010-10-23 21:11:12 +08:00
core.c mmc: core: Use maximum timeout values in case TACC field is zero 2014-04-22 07:06:39 -04:00
core.h mmc: core: Let mmc_set_signal_voltage take ocr as parameter 2013-10-30 20:26:26 -04:00
debugfs.c mmc: clarify DDR timing mode between SD-UHS and eMMC 2014-04-20 16:59:28 -04:00
host.c MMC highlights for 3.15: 2014-04-09 08:39:39 -07:00
host.h mmc: start removing enable / disable API 2012-03-27 12:20:03 -04:00
Kconfig mmc: core: Use MMC_UNSAFE_RESUME as default behavior 2014-02-13 22:58:15 -05:00
Makefile mmc: extend and rename cd-gpio helpers to handle more slot GPIO functions 2012-07-10 23:04:04 -04:00
mmc_ops.c mmc: core: Fixup busy detection for mmc switch operations 2014-02-23 10:40:38 -05:00
mmc_ops.h mmc: core: Restructure and simplify code for mmc sleep|awake 2013-05-26 14:23:17 -04:00
mmc.c mmc: Convert to use ATTRIBUTE_GROUPS 2014-04-22 07:06:38 -04:00
quirks.c mmc: sdio: add a quirk for broken SDIO_CCCR_INTx polling 2014-01-17 22:55:01 -05:00
sd_ops.c mmc: Add export.h for EXPORT_SYMBOL/THIS_MODULE as required 2011-10-31 19:32:06 -04:00
sd_ops.h mmc: add erase, secure erase, trim and secure trim operations 2010-08-12 08:43:30 -07:00
sd.c mmc: Convert to use ATTRIBUTE_GROUPS 2014-04-22 07:06:38 -04:00
sd.h mmc: sd: add support for driver type selection 2011-05-24 23:53:24 -04:00
sdio_bus.c mmc: core: Invoke sdio func driver's PM callbacks from the sdio bus 2014-04-22 07:06:40 -04:00
sdio_bus.h mmc: basic SDIO device model 2007-09-23 19:45:31 +02:00
sdio_cis.c mmc: sdio: Change pr_warning to pr_warn_ratelimited 2012-07-22 15:25:48 -04:00
sdio_cis.h sdio: split up common and function CIS parsing 2007-09-23 20:44:22 +02:00
sdio_io.c mmc: sdio: Use multiple scatter/gather list 2012-12-06 13:54:43 -05:00
sdio_irq.c mmc: sdio: add a quirk for broken SDIO_CCCR_INTx polling 2014-01-17 22:55:01 -05:00
sdio_ops.c mmc: sdio: Use multiple scatter/gather list 2012-12-06 13:54:43 -05:00
sdio_ops.h sdio: recognize io card without powercycle 2010-03-12 15:52:28 -08:00
sdio.c mmc: core: Invoke sdio func driver's PM callbacks from the sdio bus 2014-04-22 07:06:40 -04:00
slot-gpio.c mmc: Delay the card_event callback into the mmc_rescan worker 2014-04-22 07:06:36 -04:00