summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2011-01-30 22:03:50 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-01-31 11:53:23 +0100
commitccff9b51825b7335889b780bdf7de84ca803e291 (patch)
tree884b6114a8fef7fc60fe784de68faa23f41aa73a
parentARM: 6642/1: mmci: calculate remaining bytes at error correctly (diff)
downloadlinux-ccff9b51825b7335889b780bdf7de84ca803e291.tar.xz
linux-ccff9b51825b7335889b780bdf7de84ca803e291.zip
ARM: mmci: complete the transaction on error
When we encounter an error, make sure we complete the transaction otherwise we'll leave the request dangling. Acked-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--drivers/mmc/host/mmci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index b6fd6dcb41e7..175a623a6a29 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -319,7 +319,7 @@ mmci_data_irq(struct mmci_host *host, struct mmc_data *data,
if (status & MCI_DATABLOCKEND)
dev_err(mmc_dev(host->mmc), "stray MCI_DATABLOCKEND interrupt\n");
- if (status & MCI_DATAEND) {
+ if (status & MCI_DATAEND || data->error) {
mmci_stop_data(host);
if (!data->error)