diff options
author | Ulf Hansson <ulf.hansson@linaro.org> | 2013-05-02 08:02:37 -0400 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2013-05-26 14:23:15 -0400 |
commit | 12d01d0b813b93e7bde1b5f468b5c85aa8b33590 (patch) | |
tree | fc53d379c37f5c5f156ba0f2b263ae057b35ca64 /drivers/mmc/core/core.h | |
parent | 39b9431b0f371294dd2d1a492cf77f2f17390a1f (diff) |
mmc: core: Add bus_ops for runtime pm callbacks
SDIO is the only protocol that uses runtime pm for the card device
right now. To provide the option for sd and mmc to use runtime pm as
well the bus_ops callback are extended with two new functions. One for
runtime_suspend and one for runtime_resume.
This patch will also implement the callbacks for SDIO to make sure
existing functionality is maintained. It also prepares to move
away from using the mmc_power_restore_host API, since it is not
needed when using runtime PM.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/core/core.h')
-rw-r--r-- | drivers/mmc/core/core.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mmc/core/core.h b/drivers/mmc/core/core.h index b9f18a2a8874..6242ffb789c4 100644 --- a/drivers/mmc/core/core.h +++ b/drivers/mmc/core/core.h | |||
@@ -22,6 +22,8 @@ struct mmc_bus_ops { | |||
22 | void (*detect)(struct mmc_host *); | 22 | void (*detect)(struct mmc_host *); |
23 | int (*suspend)(struct mmc_host *); | 23 | int (*suspend)(struct mmc_host *); |
24 | int (*resume)(struct mmc_host *); | 24 | int (*resume)(struct mmc_host *); |
25 | int (*runtime_suspend)(struct mmc_host *); | ||
26 | int (*runtime_resume)(struct mmc_host *); | ||
25 | int (*power_save)(struct mmc_host *); | 27 | int (*power_save)(struct mmc_host *); |
26 | int (*power_restore)(struct mmc_host *); | 28 | int (*power_restore)(struct mmc_host *); |
27 | int (*alive)(struct mmc_host *); | 29 | int (*alive)(struct mmc_host *); |
@@ -44,6 +46,7 @@ int mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage); | |||
44 | int __mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage); | 46 | int __mmc_set_signal_voltage(struct mmc_host *host, int signal_voltage); |
45 | void mmc_set_timing(struct mmc_host *host, unsigned int timing); | 47 | void mmc_set_timing(struct mmc_host *host, unsigned int timing); |
46 | void mmc_set_driver_type(struct mmc_host *host, unsigned int drv_type); | 48 | void mmc_set_driver_type(struct mmc_host *host, unsigned int drv_type); |
49 | void mmc_power_up(struct mmc_host *host); | ||
47 | void mmc_power_off(struct mmc_host *host); | 50 | void mmc_power_off(struct mmc_host *host); |
48 | void mmc_power_cycle(struct mmc_host *host); | 51 | void mmc_power_cycle(struct mmc_host *host); |
49 | 52 | ||