diff options
author | Dan Murphy | 2015-06-08 10:03:16 -0500 |
---|---|---|
committer | Dan Murphy | 2015-06-08 10:03:16 -0500 |
commit | b5f2e56909fb8fc02325f621e05ae01c5532d594 (patch) | |
tree | cb8d356e49ce7b92b64833e89d52e165730ed1b5 | |
parent | c90ba34216fcb6dd0fd1f21d9adee53c97a38581 (diff) | |
parent | cddce28c8d7432ee8919a5589da93de8eb1bc396 (diff) | |
download | processor-sdk-linux-b5f2e56909fb8fc02325f621e05ae01c5532d594.tar.gz processor-sdk-linux-b5f2e56909fb8fc02325f621e05ae01c5532d594.tar.xz processor-sdk-linux-b5f2e56909fb8fc02325f621e05ae01c5532d594.zip |
Merge branch 'connectivity-ti-linux-3.14.y' of git://git.ti.com/connectivity-integration-tree/connectivity-ti-linux-kernel into ti-linux-3.14.y
TI-Feature: connectivity
TI-Tree: git://git.ti.com/connectivity-integration-tree/connectivity-ti-linux-kernel.git
TI-Branch: connectivity-ti-linux-3.14.y
* 'connectivity-ti-linux-3.14.y' of git://git.ti.com/connectivity-integration-tree/connectivity-ti-linux-kernel:
mmc: host: omap_hsmmc: Fix DTO and DCRC handling
Signed-off-by: Dan Murphy <DMurphy@ti.com>
-rw-r--r-- | drivers/mmc/host/omap_hsmmc.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index afb3deab4730..526f9b213550 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c | |||
@@ -1358,6 +1358,10 @@ static void omap_hsmmc_do_irq(struct omap_hsmmc_host *host, int status) | |||
1358 | 1358 | ||
1359 | if (status & (CTO_EN | CCRC_EN)) | 1359 | if (status & (CTO_EN | CCRC_EN)) |
1360 | end_cmd = 1; | 1360 | end_cmd = 1; |
1361 | if (host->data || host->response_busy) { | ||
1362 | end_trans = !end_cmd; | ||
1363 | host->response_busy = 0; | ||
1364 | } | ||
1361 | if (status & (CTO_EN | DTO_EN)) | 1365 | if (status & (CTO_EN | DTO_EN)) |
1362 | hsmmc_command_incomplete(host, -ETIMEDOUT, end_cmd); | 1366 | hsmmc_command_incomplete(host, -ETIMEDOUT, end_cmd); |
1363 | else if (status & (CCRC_EN | DCRC_EN)) | 1367 | else if (status & (CCRC_EN | DCRC_EN)) |
@@ -1377,10 +1381,6 @@ static void omap_hsmmc_do_irq(struct omap_hsmmc_host *host, int status) | |||
1377 | } | 1381 | } |
1378 | dev_dbg(mmc_dev(host->mmc), "AC12 err: 0x%x\n", ac12); | 1382 | dev_dbg(mmc_dev(host->mmc), "AC12 err: 0x%x\n", ac12); |
1379 | } | 1383 | } |
1380 | if (host->data || host->response_busy) { | ||
1381 | end_trans = !end_cmd; | ||
1382 | host->response_busy = 0; | ||
1383 | } | ||
1384 | } | 1384 | } |
1385 | 1385 | ||
1386 | OMAP_HSMMC_WRITE(host->base, STAT, status); | 1386 | OMAP_HSMMC_WRITE(host->base, STAT, status); |