OSDN Git Service

mmc: sdhci: skip printing register dumps on CRC errors
authorSubhash Jadavani <subhashj@codeaurora.org>
Thu, 30 Mar 2017 21:42:44 +0000 (14:42 -0700)
committerSubhash Jadavani <subhashj@codeaurora.org>
Mon, 3 Apr 2017 17:44:48 +0000 (10:44 -0700)
On Certain chipsets, SDR104 mode might be unstable causing CRC error on
the interface. So we need a workaround to skip printing register
dumps on CRC errors to reduce the recovery time.

Change-Id: I73986d89a080a842e01cdf88ad8d3b953755e993
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
drivers/mmc/host/sdhci.c

index 44633dc..40a34c2 100644 (file)
@@ -3083,7 +3083,10 @@ static void sdhci_data_irq(struct sdhci_host *host, u32 intmask)
                               mmc_hostname(host->mmc), intmask,
                               host->data->error, ktime_to_ms(ktime_sub(
                               ktime_get(), host->data_start_time)));
-                       sdhci_dumpregs(host);
+
+                       if (!host->mmc->sdr104_wa ||
+                           (host->mmc->ios.timing != MMC_TIMING_UHS_SDR104))
+                               sdhci_dumpregs(host);
                }
                sdhci_finish_data(host);
        } else {