Commit ec014cba authored by Russell King's avatar Russell King Committed by Ulf Hansson

mmc: sdhci: clean up command error handling

Avoid multiple tests while handling a command error; simplify the code.
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
[ Goes with "mmc: sdhci: fix command response CRC error handling" ]
Cc: stable@vger.kernel.org # v4.5+
Tested-by: default avatarGregory CLEMENT <gregory.clement@free-electrons.com>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 96776200
...@@ -2323,13 +2323,13 @@ static void sdhci_cmd_irq(struct sdhci_host *host, u32 intmask, u32 *mask) ...@@ -2323,13 +2323,13 @@ static void sdhci_cmd_irq(struct sdhci_host *host, u32 intmask, u32 *mask)
return; return;
} }
if (intmask & SDHCI_INT_TIMEOUT) if (intmask & (SDHCI_INT_TIMEOUT | SDHCI_INT_CRC |
host->cmd->error = -ETIMEDOUT; SDHCI_INT_END_BIT | SDHCI_INT_INDEX)) {
else if (intmask & (SDHCI_INT_CRC | SDHCI_INT_END_BIT | if (intmask & SDHCI_INT_TIMEOUT)
SDHCI_INT_INDEX)) host->cmd->error = -ETIMEDOUT;
host->cmd->error = -EILSEQ; else
host->cmd->error = -EILSEQ;
if (host->cmd->error) {
tasklet_schedule(&host->finish_tasklet); tasklet_schedule(&host->finish_tasklet);
return; return;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment