]> Pileus Git - ~andy/linux/commit
mmc: core: Improve runtime PM support during suspend/resume for sd/mmc
authorUlf Hansson <ulf.hansson@linaro.org>
Thu, 10 Oct 2013 12:20:05 +0000 (14:20 +0200)
committerChris Ball <cjb@laptop.org>
Thu, 31 Oct 2013 00:28:42 +0000 (20:28 -0400)
commit0cb403a227774f60f6f52137ca3618805498c4e6
tree2d78049251a16d39fee319a8486649af293b4ba6
parent0cc81a8c6442e43618ff245948bfaa14fdf7938b
mmc: core: Improve runtime PM support during suspend/resume for sd/mmc

The card device is considered as in-active after it has been suspended.
To prevent any further runtime PM requests in suspend state, we then
disable runtime PM.

After the card device has been resumed, we shall consider it as active,
like we also do after a probe sequence. When resumed, we can safely
enable runtime PM again.

This will make sure the PM core can request the card device to go to
in-active state after a resume has been completed. Previously we had to
wait for new pm_runtime_get->pm_runtime_put cycle to be executed.

Additionally, once a resume has been carried out, update the last busy
mark. At the moment this will have no effect but if the PM core will
respect autosuspend enabled devices, when it directly triggers a
runtime_suspend from a runtime_idle, it will mean the card device will
be scheduled for a delayed runtime_suspend instead of done immediately.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/core/mmc.c
drivers/mmc/core/sd.c