Considering shutdown of the card, the responsibility to initate this
sequence shall be driven from the mmc_bus.
This patch enables the mmc_bus to handle this sequence properly. A new
.shutdown callback is added in the mmc_driver struct which is used to
shutdown the blk device.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
Conflicts:
drivers/mmc/core/bus.c
{
struct mmc_driver *drv = to_mmc_driver(dev->driver);
struct mmc_card *card = mmc_dev_to_card(dev);
- struct mmc_host *host = card->host;
- int ret;
-
- if (dev->driver && drv->shutdown)
- drv->shutdown(card);
- if (host->bus_ops->shutdown) {
- ret = host->bus_ops->shutdown(host);
- if (ret)
- pr_warn("%s: error %d during shutdown\n",
- mmc_hostname(host), ret);
- }
+ drv->shutdown(card);
}
#ifdef CONFIG_PM_SLEEP