summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWolfram Sang <wsa+renesas@sang-engineering.com>2017-03-14 11:09:19 +0100
committerUlf Hansson <ulf.hansson@linaro.org>2017-04-24 21:41:16 +0200
commiteb7c00e1461124ad0e85f1a9a3954d7164809c13 (patch)
tree1bc05a377be85bb7d0f7f33644fb70b2257a4bcf
parent022f731e03d190d0e4f52f2b1bd90fae0eadd56d (diff)
downloadlinux-0-day-eb7c00e1461124ad0e85f1a9a3954d7164809c13.tar.gz
linux-0-day-eb7c00e1461124ad0e85f1a9a3954d7164809c13.tar.xz
mmc: host: tmio: fill in response from auto cmd12
After we received the dataend interrupt, R1 response register carries the value from the automatically generated stop command. Report that info back to the MMC block layer, so we will be notified in case of e.g. ECC errors which happened during the last transfer. Reviewed-by: Simon Horman <horms+renesas@verge.net.au> Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
-rw-r--r--drivers/mmc/host/tmio_mmc_pio.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mmc/host/tmio_mmc_pio.c b/drivers/mmc/host/tmio_mmc_pio.c
index 42a912a3de677..5b01d22932cdb 100644
--- a/drivers/mmc/host/tmio_mmc_pio.c
+++ b/drivers/mmc/host/tmio_mmc_pio.c
@@ -557,6 +557,9 @@ void tmio_mmc_do_data_irq(struct tmio_mmc_host *host)
dev_err(&host->pdev->dev, "unsupported stop: CMD%u,0x%x. We did CMD12,0\n",
stop->opcode, stop->arg);
+ /* fill in response from auto CMD12 */
+ stop->resp[0] = sd_ctrl_read16_and_16_as_32(host, CTL_RESPONSE);
+
sd_ctrl_write16(host, CTL_STOP_INTERNAL_ACTION, 0);
}