diff options
| -rw-r--r-- | drivers/mmc/card/block.c | 2 | ||||
| -rw-r--r-- | drivers/mmc/core/bus.c | 24 | ||||
| -rw-r--r-- | include/linux/mmc/card.h | 2 |
3 files changed, 10 insertions, 18 deletions
diff --git a/drivers/mmc/card/block.c b/drivers/mmc/card/block.c index 4232bc4d9926..dabec556ebb8 100644 --- a/drivers/mmc/card/block.c +++ b/drivers/mmc/card/block.c | |||
| @@ -1824,7 +1824,7 @@ static void mmc_blk_remove(struct mmc_card *card) | |||
| 1824 | } | 1824 | } |
| 1825 | 1825 | ||
| 1826 | #ifdef CONFIG_PM | 1826 | #ifdef CONFIG_PM |
| 1827 | static int mmc_blk_suspend(struct mmc_card *card, pm_message_t state) | 1827 | static int mmc_blk_suspend(struct mmc_card *card) |
| 1828 | { | 1828 | { |
| 1829 | struct mmc_blk_data *part_md; | 1829 | struct mmc_blk_data *part_md; |
| 1830 | struct mmc_blk_data *md = mmc_get_drvdata(card); | 1830 | struct mmc_blk_data *md = mmc_get_drvdata(card); |
diff --git a/drivers/mmc/core/bus.c b/drivers/mmc/core/bus.c index 3f606068d552..c60cee92a2b2 100644 --- a/drivers/mmc/core/bus.c +++ b/drivers/mmc/core/bus.c | |||
| @@ -122,14 +122,14 @@ static int mmc_bus_remove(struct device *dev) | |||
| 122 | return 0; | 122 | return 0; |
| 123 | } | 123 | } |
| 124 | 124 | ||
| 125 | static int mmc_bus_suspend(struct device *dev, pm_message_t state) | 125 | static int mmc_bus_suspend(struct device *dev) |
| 126 | { | 126 | { |
| 127 | struct mmc_driver *drv = to_mmc_driver(dev->driver); | 127 | struct mmc_driver *drv = to_mmc_driver(dev->driver); |
| 128 | struct mmc_card *card = mmc_dev_to_card(dev); | 128 | struct mmc_card *card = mmc_dev_to_card(dev); |
| 129 | int ret = 0; | 129 | int ret = 0; |
| 130 | 130 | ||
| 131 | if (dev->driver && drv->suspend) | 131 | if (dev->driver && drv->suspend) |
| 132 | ret = drv->suspend(card, state); | 132 | ret = drv->suspend(card); |
| 133 | return ret; | 133 | return ret; |
| 134 | } | 134 | } |
| 135 | 135 | ||
| @@ -165,20 +165,14 @@ static int mmc_runtime_idle(struct device *dev) | |||
| 165 | return pm_runtime_suspend(dev); | 165 | return pm_runtime_suspend(dev); |
| 166 | } | 166 | } |
| 167 | 167 | ||
| 168 | #endif /* !CONFIG_PM_RUNTIME */ | ||
| 169 | |||
| 168 | static const struct dev_pm_ops mmc_bus_pm_ops = { | 170 | static const struct dev_pm_ops mmc_bus_pm_ops = { |
| 169 | .runtime_suspend = mmc_runtime_suspend, | 171 | SET_RUNTIME_PM_OPS(mmc_runtime_suspend, mmc_runtime_resume, |
| 170 | .runtime_resume = mmc_runtime_resume, | 172 | mmc_runtime_idle) |
| 171 | .runtime_idle = mmc_runtime_idle, | 173 | SET_SYSTEM_SLEEP_PM_OPS(mmc_bus_suspend, mmc_bus_resume) |
| 172 | }; | 174 | }; |
| 173 | 175 | ||
| 174 | #define MMC_PM_OPS_PTR (&mmc_bus_pm_ops) | ||
| 175 | |||
| 176 | #else /* !CONFIG_PM_RUNTIME */ | ||
| 177 | |||
| 178 | #define MMC_PM_OPS_PTR NULL | ||
| 179 | |||
| 180 | #endif /* !CONFIG_PM_RUNTIME */ | ||
| 181 | |||
| 182 | static struct bus_type mmc_bus_type = { | 176 | static struct bus_type mmc_bus_type = { |
| 183 | .name = "mmc", | 177 | .name = "mmc", |
| 184 | .dev_attrs = mmc_dev_attrs, | 178 | .dev_attrs = mmc_dev_attrs, |
| @@ -186,9 +180,7 @@ static struct bus_type mmc_bus_type = { | |||
| 186 | .uevent = mmc_bus_uevent, | 180 | .uevent = mmc_bus_uevent, |
| 187 | .probe = mmc_bus_probe, | 181 | .probe = mmc_bus_probe, |
| 188 | .remove = mmc_bus_remove, | 182 | .remove = mmc_bus_remove, |
| 189 | .suspend = mmc_bus_suspend, | 183 | .pm = &mmc_bus_pm_ops, |
| 190 | .resume = mmc_bus_resume, | ||
| 191 | .pm = MMC_PM_OPS_PTR, | ||
| 192 | }; | 184 | }; |
| 193 | 185 | ||
| 194 | int mmc_register_bus(void) | 186 | int mmc_register_bus(void) |
diff --git a/include/linux/mmc/card.h b/include/linux/mmc/card.h index 01beae78f079..629b823f8836 100644 --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h | |||
| @@ -481,7 +481,7 @@ struct mmc_driver { | |||
| 481 | struct device_driver drv; | 481 | struct device_driver drv; |
| 482 | int (*probe)(struct mmc_card *); | 482 | int (*probe)(struct mmc_card *); |
| 483 | void (*remove)(struct mmc_card *); | 483 | void (*remove)(struct mmc_card *); |
| 484 | int (*suspend)(struct mmc_card *, pm_message_t); | 484 | int (*suspend)(struct mmc_card *); |
| 485 | int (*resume)(struct mmc_card *); | 485 | int (*resume)(struct mmc_card *); |
| 486 | }; | 486 | }; |
| 487 | 487 | ||
