On 6/08/21 9:55 am, Sarthak Garg wrote: > From: Sahitya Tummala <stummala@xxxxxxxxxxxxxx> > > The Qcom SD controller defines the usage of 0xF in data > timeout counter register (0x2E) which is actually a reserved > bit as per specification. This would result in maximum of 21.26 secs > timeout value. > > Some SDcard taking more time than 2.67secs (timeout value corresponding > to 0xE) and with that observed data timeout errors. > So increasing the timeout value to max possible timeout. > > Signed-off-by: Sahitya Tummala <stummala@xxxxxxxxxxxxxx> > Signed-off-by: Sarthak Garg <sartgarg@xxxxxxxxxxxxxx> Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx> > --- > drivers/mmc/host/sdhci-msm.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c > index e44b7a6..19e4673 100644 > --- a/drivers/mmc/host/sdhci-msm.c > +++ b/drivers/mmc/host/sdhci-msm.c > @@ -2696,6 +2696,9 @@ static int sdhci_msm_probe(struct platform_device *pdev) > > msm_host->mmc->caps |= MMC_CAP_WAIT_WHILE_BUSY | MMC_CAP_NEED_RSP_BUSY; > > + /* Set the timeout value to max possible */ > + host->max_timeout_count = 0xF; > + > pm_runtime_get_noresume(&pdev->dev); > pm_runtime_set_active(&pdev->dev); > pm_runtime_enable(&pdev->dev); >