diff mbox series

mmc: sunxi-mmc: Ensure host is suspended during system sleep

Message ID 20210113052421.36553-1-samuel@sholland.org (mailing list archive)
State New, archived
Headers show
Series mmc: sunxi-mmc: Ensure host is suspended during system sleep | expand

Commit Message

Samuel Holland Jan. 13, 2021, 5:24 a.m. UTC
If the device suspend process begins before the mmc host's autosuspend
timeout, the host will continue running during system sleep. Avoid
this by forcing runtime suspend during a global suspend transition.

Signed-off-by: Samuel Holland <samuel@sholland.org>
---
 drivers/mmc/host/sunxi-mmc.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Maxime Ripard Jan. 13, 2021, 9:50 a.m. UTC | #1
On Tue, Jan 12, 2021 at 11:24:21PM -0600, Samuel Holland wrote:
> If the device suspend process begins before the mmc host's autosuspend
> timeout, the host will continue running during system sleep. Avoid
> this by forcing runtime suspend during a global suspend transition.
> 
> Signed-off-by: Samuel Holland <samuel@sholland.org>

Acked-by: Maxime Ripard <mripard@kernel.org>

Thanks!
Maxime
Ulf Hansson Jan. 13, 2021, 11:32 a.m. UTC | #2
On Wed, 13 Jan 2021 at 06:24, Samuel Holland <samuel@sholland.org> wrote:
>
> If the device suspend process begins before the mmc host's autosuspend
> timeout, the host will continue running during system sleep. Avoid
> this by forcing runtime suspend during a global suspend transition.
>
> Signed-off-by: Samuel Holland <samuel@sholland.org>

Applied for next, thanks!

Kind regards
Uffe

> ---
>  drivers/mmc/host/sunxi-mmc.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/mmc/host/sunxi-mmc.c b/drivers/mmc/host/sunxi-mmc.c
> index 6310693f2ac0..cfee8db7b76d 100644
> --- a/drivers/mmc/host/sunxi-mmc.c
> +++ b/drivers/mmc/host/sunxi-mmc.c
> @@ -1507,6 +1507,8 @@ static int sunxi_mmc_runtime_suspend(struct device *dev)
>  #endif
>
>  static const struct dev_pm_ops sunxi_mmc_pm_ops = {
> +       SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
> +                               pm_runtime_force_resume)
>         SET_RUNTIME_PM_OPS(sunxi_mmc_runtime_suspend,
>                            sunxi_mmc_runtime_resume,
>                            NULL)
> --
> 2.26.2
>
diff mbox series

Patch

diff --git a/drivers/mmc/host/sunxi-mmc.c b/drivers/mmc/host/sunxi-mmc.c
index 6310693f2ac0..cfee8db7b76d 100644
--- a/drivers/mmc/host/sunxi-mmc.c
+++ b/drivers/mmc/host/sunxi-mmc.c
@@ -1507,6 +1507,8 @@  static int sunxi_mmc_runtime_suspend(struct device *dev)
 #endif
 
 static const struct dev_pm_ops sunxi_mmc_pm_ops = {
+	SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
+				pm_runtime_force_resume)
 	SET_RUNTIME_PM_OPS(sunxi_mmc_runtime_suspend,
 			   sunxi_mmc_runtime_resume,
 			   NULL)