mmc: host: tmio: don't BUG on unsupported stop commands
authorWolfram Sang <wsa+renesas@sang-engineering.com>
Tue, 14 Mar 2017 10:09:18 +0000 (11:09 +0100)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 24 Apr 2017 19:41:15 +0000 (21:41 +0200)
Halting the kernel on an unsupported stop command seems overkill, report
the error and say what we already did (due to autocmd12) instead.

Reviewed-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/tmio_mmc_pio.c

index c655c9de1dde6993d854a174c8b598a9a60e9acc..42a912a3de677cf489e72b3fed1271efdb1ae292 100644 (file)
@@ -553,10 +553,11 @@ void tmio_mmc_do_data_irq(struct tmio_mmc_host *host)
        }
 
        if (stop) {
-               if (stop->opcode == MMC_STOP_TRANSMISSION && !stop->arg)
-                       sd_ctrl_write16(host, CTL_STOP_INTERNAL_ACTION, 0);
-               else
-                       BUG();
+               if (stop->opcode != MMC_STOP_TRANSMISSION || stop->arg)
+                       dev_err(&host->pdev->dev, "unsupported stop: CMD%u,0x%x. We did CMD12,0\n",
+                               stop->opcode, stop->arg);
+
+               sd_ctrl_write16(host, CTL_STOP_INTERNAL_ACTION, 0);
        }
 
        schedule_work(&host->done);