mmc: sdhci: Use max timeout and skip timeout calculation

Several data-timeout issues were seen, most of which were
due to the card taking a longer time to respond. This patch
increases the timeout of the controller to 0xF i.e. max
possible.

Change-Id: I6739de3eb5d9cccf8e39d9dc4730056782334162
CRs-Fixed: 536832
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
This commit is contained in:
Asutosh Das 2013-10-21 17:17:03 +05:30 committed by Subhash Jadavani
parent 9df7e24765
commit 2c530476d3

View file

@ -717,6 +717,12 @@ static u8 sdhci_calc_timeout(struct sdhci_host *host, struct mmc_command *cmd)
if (host->quirks & SDHCI_QUIRK_BROKEN_TIMEOUT_VAL)
return 0xE;
/* During initialization, don't use max timeout as the clock is slow */
if ((host->quirks2 & SDHCI_QUIRK2_USE_RESERVED_MAX_TIMEOUT) &&
(host->clock > 400000)) {
return 0xF;
}
/* Unspecified timeout, assume max */
if (!data && !cmd->busy_timeout)
return 0xE;