Skip to content

Commit 05b880b

Browse files
committed
Merge tag 'mmc-v6.14-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc
Pull MMC host fixes from Ulf Hansson: - sdhci-brcmstb: Fix CQE suspend/resume support - atmel-mci: Add a missing clk_disable_unprepare() in ->probe() * tag 'mmc-v6.14-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: mmc: sdhci-brcmstb: add cqhci suspend/resume to PM ops mmc: atmel-mci: Add missing clk_disable_unprepare()
2 parents a4f586a + 723ef0e commit 05b880b

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

drivers/mmc/host/atmel-mci.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2499,8 +2499,10 @@ static int atmci_probe(struct platform_device *pdev)
24992499
/* Get MCI capabilities and set operations according to it */
25002500
atmci_get_cap(host);
25012501
ret = atmci_configure_dma(host);
2502-
if (ret == -EPROBE_DEFER)
2502+
if (ret == -EPROBE_DEFER) {
2503+
clk_disable_unprepare(host->mck);
25032504
goto err_dma_probe_defer;
2505+
}
25042506
if (ret == 0) {
25052507
host->prepare_data = &atmci_prepare_data_dma;
25062508
host->submit_data = &atmci_submit_data_dma;

drivers/mmc/host/sdhci-brcmstb.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -503,8 +503,15 @@ static int sdhci_brcmstb_suspend(struct device *dev)
503503
struct sdhci_host *host = dev_get_drvdata(dev);
504504
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
505505
struct sdhci_brcmstb_priv *priv = sdhci_pltfm_priv(pltfm_host);
506+
int ret;
506507

507508
clk_disable_unprepare(priv->base_clk);
509+
if (host->mmc->caps2 & MMC_CAP2_CQE) {
510+
ret = cqhci_suspend(host->mmc);
511+
if (ret)
512+
return ret;
513+
}
514+
508515
return sdhci_pltfm_suspend(dev);
509516
}
510517

@@ -529,6 +536,9 @@ static int sdhci_brcmstb_resume(struct device *dev)
529536
ret = clk_set_rate(priv->base_clk, priv->base_freq_hz);
530537
}
531538

539+
if (host->mmc->caps2 & MMC_CAP2_CQE)
540+
ret = cqhci_resume(host->mmc);
541+
532542
return ret;
533543
}
534544
#endif

0 commit comments

Comments
 (0)