summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorPradeep P V K <ppvk@codeaurora.org>2018-04-03 20:07:28 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2018-04-18 22:53:08 -0700
commit7b76e6a40f9f54bbe3f9e440f1a0991388e0ece4 (patch)
treee046877c4d90da93d23bfc49f4e9f2e4a1414b97 /drivers/mmc
parent04eb780a683edf4d20c3eb753ae4d197d5c84090 (diff)
mmc: core: Donot fall back to lower speed modes for tuning errors
CRC errors are expected during tuning. MMC driver tries to fallback to lower speed mode if it encounters consecutive CRC errors. It should ignore CRC errors observed during tuning and shouldn't try to fallback. There is a check present for ignoring CRC errors for SD card tuning commands. A new check has been added to ignore CRC errors for eMMC tuning command as well. Change-Id: Ic2bfa4f6a883fe30fdee85cf2e26779f3e906824 Signed-off-by: Pradeep P V K <ppvk@codeaurora.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/core/core.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index d1d045f04368..ccbe0b16bb7a 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -1558,7 +1558,8 @@ static void mmc_wait_for_req_done(struct mmc_host *host,
mmc_card_removed(host->card)) {
if (cmd->error && !cmd->retries &&
cmd->opcode != MMC_SEND_STATUS &&
- cmd->opcode != MMC_SEND_TUNING_BLOCK)
+ cmd->opcode != MMC_SEND_TUNING_BLOCK &&
+ cmd->opcode != MMC_SEND_TUNING_BLOCK_HS200)
mmc_recovery_fallback_lower_speed(host);
break;
}