mmc: sdhci-msm: Ignore data timeout error for R1B commands

Ignore data timeout error for R1B commands as there will be no
data associated and the busy timeout value for these commands
could be lager than the maximum timeout value that controller
can handle.

CRs-fixed: 473435
Change-Id: I61f7463cf09648ad9fab83437abf5004effc7758
Signed-off-by: Sahitya Tummala <stummala@codeaurora.org>
[subhashj@codeaurora.org: fixed minor merge conflict]
Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
This commit is contained in:
Sahitya Tummala 2013-04-12 11:49:11 +05:30 committed by Subhash Jadavani
parent eea2294326
commit 61b4aff312
3 changed files with 12 additions and 0 deletions

View file

@ -2173,6 +2173,7 @@ static int sdhci_msm_probe(struct platform_device *pdev)
host->quirks2 |= SDHCI_QUIRK2_ALWAYS_USE_BASE_CLOCK;
host->quirks2 |= SDHCI_QUIRK2_IGNORE_CMDCRC_FOR_TUNING;
host->quirks2 |= SDHCI_QUIRK2_USE_MAX_DISCARD_SIZE;
host->quirks2 |= SDHCI_QUIRK2_IGNORE_DATATOUT_FOR_R1BCMD;
host_version = readl_relaxed((host->ioaddr + SDHCI_HOST_VERSION));
dev_dbg(&pdev->dev, "Host Version: 0x%x Vendor Version 0x%x\n",

View file

@ -2594,6 +2594,9 @@ static void sdhci_data_irq(struct sdhci_host *host, u32 intmask)
host->busy_handle = 1;
return;
}
if (host->quirks2 &
SDHCI_QUIRK2_IGNORE_DATATOUT_FOR_R1BCMD)
return;
}
pr_err("%s: Got data interrupt 0x%08x even "

View file

@ -438,6 +438,14 @@ struct sdhci_host {
#define SDHCI_QUIRK2_USE_MAX_DISCARD_SIZE (1<<20)
/*
* Ignore data timeout error for R1B commands as there will be no
* data associated and the busy timeout value for these commands
* could be lager than the maximum timeout value that controller
* can handle.
*/
#define SDHCI_QUIRK2_IGNORE_DATATOUT_FOR_R1BCMD (1<<21)
int irq; /* Device IRQ */
void __iomem *ioaddr; /* Mapped address */