mmc: core: WARN if SDIO IRQs are enabled for non-powered card in suspend
authorUlf Hansson <ulf.hansson@linaro.org>
Sun, 8 Sep 2019 10:12:32 +0000 (12:12 +0200)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 11 Sep 2019 14:10:18 +0000 (16:10 +0200)
To make sure SDIO func drivers behaves correctly during system
suspend/resume, let add a WARN_ON in case the condition is a non-powered
SDIO card and there are some SDIO IRQs still being claimed.

Tested-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/core/sdio.c

index 8dd8fc3..c557f15 100644 (file)
@@ -951,6 +951,8 @@ static int mmc_sdio_pre_suspend(struct mmc_host *host)
  */
 static int mmc_sdio_suspend(struct mmc_host *host)
 {
+       WARN_ON(host->sdio_irqs && !mmc_card_keep_power(host));
+
        /* Prevent processing of SDIO IRQs in suspended state. */
        mmc_card_set_suspended(host->card);
        cancel_delayed_work_sync(&host->sdio_irq_work);