46 lines
1.7 KiB
Diff
46 lines
1.7 KiB
Diff
From: Ulf Hansson <ulf.hansson@linaro.org>
|
|
Date: Tue, 24 Jun 2025 13:09:32 +0200
|
|
Subject: Revert "mmc: sdhci: Disable SD card clock before changing parameters"
|
|
Origin: https://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc.git/commit?id=dcc3bcfc5b50c625b475dcc25d167b6b947a6637
|
|
Bug-Debian: https://bugs.debian.org/1108065
|
|
|
|
It has turned out the trying to strictly conform to the SDHCI specification
|
|
is causing problems. Let's revert and start over.
|
|
|
|
This reverts commit fb3bbc46c94f261b6156ee863c1b06c84cf157dc.
|
|
|
|
Cc: Erick Shepherd <erick.shepherd@ni.com>
|
|
Cc: stable@vger.kernel.org
|
|
Fixes: fb3bbc46c94f ("mmc: sdhci: Disable SD card clock before changing parameters")
|
|
Suggested-by: Adrian Hunter <adrian.hunter@intel.com>
|
|
Reported-by: Jonathan Liu <net147@gmail.com>
|
|
Reported-by: Salvatore Bonaccorso <carnil@debian.org>
|
|
Closes: https://bugs.debian.org/1108065
|
|
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
|
|
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
|
|
Link: https://lore.kernel.org/r/20250624110932.176925-1-ulf.hansson@linaro.org
|
|
---
|
|
drivers/mmc/host/sdhci.c | 9 ++-------
|
|
1 file changed, 2 insertions(+), 7 deletions(-)
|
|
|
|
--- a/drivers/mmc/host/sdhci.c
|
|
+++ b/drivers/mmc/host/sdhci.c
|
|
@@ -2065,15 +2065,10 @@ void sdhci_set_clock(struct sdhci_host *
|
|
|
|
host->mmc->actual_clock = 0;
|
|
|
|
- clk = sdhci_readw(host, SDHCI_CLOCK_CONTROL);
|
|
- if (clk & SDHCI_CLOCK_CARD_EN)
|
|
- sdhci_writew(host, clk & ~SDHCI_CLOCK_CARD_EN,
|
|
- SDHCI_CLOCK_CONTROL);
|
|
+ sdhci_writew(host, 0, SDHCI_CLOCK_CONTROL);
|
|
|
|
- if (clock == 0) {
|
|
- sdhci_writew(host, 0, SDHCI_CLOCK_CONTROL);
|
|
+ if (clock == 0)
|
|
return;
|
|
- }
|
|
|
|
clk = sdhci_calc_clk(host, clock, &host->mmc->actual_clock);
|
|
sdhci_enable_clk(host, clk);
|