Hi Ulf, On Mon, Jun 10 2013, Ulf Hansson wrote: > From: Ulf Hansson <ulf.hansson@xxxxxxxxxx> > > The MMC/SD/SDIO cards are registered on the mmc_bus and should from a power > management perspective be controlled from there. As of today each and every > host driver needs to issue mmc_suspend|resume_host from their respective > .suspend|resume methods, which seems like an unnecessary requirement to > put on them. Additionally, a shutdown sequence shall be initiated from the > mmc_bus. > > This patch set moves the responsiblity to suspend the cards into the mmc_bus. > It also invents the shutdown sequence, also to be handled from the mmc_bus. > In the SDIO case, the shutdown sequence will not involve any SDIO specific > operations. If this would be desired, I suggest to handle that as and separate > step, since it would involve the sdio bus and potentially the sdio drivers. > > As a part of the patches releated to adding the shutdown sequence, specific > issues to handle eMMC power off notification properly are included in this > patch set as well. > > The mmc_suspend|resume_host functions are not removed, but will instead always > return successful. A separate patch(es) build on top of this patch set, shall > remove the API:s together with updating each and every host driver. > > Do note, that patch 1 to 4 has been sent earlier in the set "mmc: core: Let the > mmc_bus handle suspend|resume sequence". Since the functionallity are very close > releated I decided to fold them in into this patch set. > > A big thank you to Jaehoon Chung who has tested the patches 1 to 4. > > Ulf Hansson (12): > mmc: core: Remove unnecessary check for the remove callback > mmc: core: Validate suspend prerequisites for SDIO at SUSPEND_PREPARE > mmc: core: Push common suspend|resume code into each bus_ops > mmc: core: Initiate suspend|resume from mmc bus instead of mmc host > mmc: core: Handle card shutdown from mmc_bus > mmc: core: Extend shutdown sequence to handle bus operations > mmc: core: Add shutdown callback for SD bus_ops > mmc: core: Handle both poweroff notification types for eMMC > mmc: core: Add shutdown callback for (e)MMC bus_ops > mmc: core: Enable power_off_notify for eMMC shutdown sequence > mmc: core: Invent MMC_CAP2_FULL_PWR_CYCLE > mmc: core: Add DT-bindings for MMC_CAP2_FULL_PWR_CYCLE > > Documentation/devicetree/bindings/mmc/mmc.txt | 1 + > drivers/mmc/card/block.c | 15 ++++- > drivers/mmc/card/mmc_test.c | 5 ++ > drivers/mmc/core/bus.c | 37 ++++++++++- > drivers/mmc/core/core.c | 87 ++++--------------------- > drivers/mmc/core/core.h | 2 + > drivers/mmc/core/host.c | 2 + > drivers/mmc/core/mmc.c | 40 +++++++++--- > drivers/mmc/core/sd.c | 6 ++ > drivers/mmc/core/sdio.c | 48 ++++++++++++-- > include/linux/mmc/card.h | 1 + > include/linux/mmc/host.h | 2 +- > 12 files changed, 153 insertions(+), 93 deletions(-) Thanks, all pushed to mmc-next, hopefully for 3.11 depending on testing. - Chris. -- Chris Ball <cjb@xxxxxxxxxx> <http://printf.net/> One Laptop Per Child -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html