summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaksim Kiselev <bigunclemax@gmail.com>2024-04-02 12:35:39 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-05-02 16:35:26 +0200
commit7778de90d58e28d86452ee0843cb4d319800ce3d (patch)
treef6ee020de0e20b4c43c453bb7b6b04efa535e21e
parentf653b04a818c490b045c97834d559911479aa1c5 (diff)
downloadlinux-stable-7778de90d58e28d86452ee0843cb4d319800ce3d.tar.gz
linux-stable-7778de90d58e28d86452ee0843cb4d319800ce3d.tar.bz2
linux-stable-7778de90d58e28d86452ee0843cb4d319800ce3d.zip
mmc: sdhci-of-dwcmshc: th1520: Increase tuning loop count to 128
commit ace323f80b9bc6734289a4e8a77938a3ce964c7d upstream. Fix SD card tuning error by increasing tuning loop count from 40(MAX_TUNING_LOOP) to 128. For some reason the tuning algorithm requires to move through all the taps of delay line even if the THRESHOLD_MODE (bit 2 in AT_CTRL_R) is used instead of the LARGEST_WIN_MODE. Tested-by: Drew Fustini <drew@pdp7.com> Tested-by: Xi Ruoyao <xry111@xry111.site> Signed-off-by: Maksim Kiselev <bigunclemax@gmail.com> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Fixes: 43658a542ebf ("mmc: sdhci-of-dwcmshc: Add support for T-Head TH1520") Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/20240402093539.184287-1-bigunclemax@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-of-dwcmshc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mmc/host/sdhci-of-dwcmshc.c b/drivers/mmc/host/sdhci-of-dwcmshc.c
index fa29460fd290..60b42126a4ed 100644
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
@@ -612,6 +612,7 @@ static int th1520_execute_tuning(struct sdhci_host *host, u32 opcode)
/* perform tuning */
sdhci_start_tuning(host);
+ host->tuning_loop_count = 128;
host->tuning_err = __sdhci_execute_tuning(host, opcode);
if (host->tuning_err) {
/* disable auto-tuning upon tuning error */