Message ID | 20221219084754.11070-1-wenchao.chen@unisoc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mmc: sdhci-sprd: disable polling scan for sdio card | expand |
On 19/12/22 10:47, Wenchao Chen wrote: > Enable polling will increase the power consumption of the host. > > Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller") > Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com> > --- > drivers/mmc/host/sdhci-sprd.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/mmc/host/sdhci-sprd.c b/drivers/mmc/host/sdhci-sprd.c > index 525f979e2a97..113a5c77578f 100644 > --- a/drivers/mmc/host/sdhci-sprd.c > +++ b/drivers/mmc/host/sdhci-sprd.c > @@ -696,6 +696,10 @@ static int sdhci_sprd_probe(struct platform_device *pdev) > if (ret) > goto err_cleanup_host; > > + if ((host->mmc->caps2 & MMC_CAP2_NO_SD) && > + (host->mmc->caps2 & MMC_CAP2_NO_MMC)) > + host->mmc->caps &= ~MMC_CAP_NEEDS_POLL; How is MMC_CAP_NEEDS_POLL getting set? SDHCI won't set it for non-removable cards. Is it removable? > + > pm_runtime_mark_last_busy(&pdev->dev); > pm_runtime_put_autosuspend(&pdev->dev); >
diff --git a/drivers/mmc/host/sdhci-sprd.c b/drivers/mmc/host/sdhci-sprd.c index 525f979e2a97..113a5c77578f 100644 --- a/drivers/mmc/host/sdhci-sprd.c +++ b/drivers/mmc/host/sdhci-sprd.c @@ -696,6 +696,10 @@ static int sdhci_sprd_probe(struct platform_device *pdev) if (ret) goto err_cleanup_host; + if ((host->mmc->caps2 & MMC_CAP2_NO_SD) && + (host->mmc->caps2 & MMC_CAP2_NO_MMC)) + host->mmc->caps &= ~MMC_CAP_NEEDS_POLL; + pm_runtime_mark_last_busy(&pdev->dev); pm_runtime_put_autosuspend(&pdev->dev);
Enable polling will increase the power consumption of the host. Fixes: fb8bd90f83c4 ("mmc: sdhci-sprd: Add Spreadtrum's initial host controller") Signed-off-by: Wenchao Chen <wenchao.chen@unisoc.com> --- drivers/mmc/host/sdhci-sprd.c | 4 ++++ 1 file changed, 4 insertions(+)