summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Cooper <alcooperx@gmail.com>2021-01-08 01:15:09 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-01-27 13:54:54 +0300
commit4749ffd9c432cc7a7abdb3064fb213cc3e2e5015 (patch)
treeaa3233b14359e76745fa087aabdf819b33ca22ae
parentb97c26cfe1e62b097f54d3fb280a4ef63b40a180 (diff)
downloadlinux-4749ffd9c432cc7a7abdb3064fb213cc3e2e5015.tar.xz
mmc: sdhci-brcmstb: Fix mmc timeout errors on S5 suspend
commit 5b191dcba719319148eeecf6ed409949fac55b39 upstream. Commit e7b5d63a82fe ("mmc: sdhci-brcmstb: Add shutdown callback") that added a shutdown callback to the diver, is causing "mmc timeout" errors on S5 suspend. The problem was that the "remove" was queuing additional MMC commands after the "shutdown" and these caused timeouts as the MMC queues were cleaned up for "remove". The shutdown callback will be changed to calling sdhci-pltfm_suspend which should get better power savings because the clocks will be shutdown. Fixes: e7b5d63a82fe ("mmc: sdhci-brcmstb: Add shutdown callback") Signed-off-by: Al Cooper <alcooperx@gmail.com> Acked-by: Florian Fainelli <f.fainelli@gmail.com> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20210107221509.6597-1-alcooperx@gmail.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/mmc/host/sdhci-brcmstb.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/mmc/host/sdhci-brcmstb.c b/drivers/mmc/host/sdhci-brcmstb.c
index bbf3496f4495..f9780c65ebe9 100644
--- a/drivers/mmc/host/sdhci-brcmstb.c
+++ b/drivers/mmc/host/sdhci-brcmstb.c
@@ -314,11 +314,7 @@ err_clk:
static void sdhci_brcmstb_shutdown(struct platform_device *pdev)
{
- int ret;
-
- ret = sdhci_pltfm_unregister(pdev);
- if (ret)
- dev_err(&pdev->dev, "failed to shutdown\n");
+ sdhci_pltfm_suspend(&pdev->dev);
}
MODULE_DEVICE_TABLE(of, sdhci_brcm_of_match);