mmc: tmio: Fix error handling when issuing CMD23
authorMasaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
Tue, 3 Apr 2018 21:57:03 +0000 (23:57 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Apr 2018 07:36:33 +0000 (09:36 +0200)
commit fc167daff581c01ebce8695e9618231cae3561a1 upstream.

If an error was detected when CMD23 was issued, command sequence should
be terminated with errors and CMD23 should be issued after retuning.

Fixes: 8b22c3c18be5 ("mmc: tmio: add CMD23 support")
Signed-off-by: Masaharu Hayakawa <masaharu.hayakawa.ry@renesas.com>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Cc: <stable@vger.kernel.org> # 4.13+
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/mmc/host/tmio_mmc_core.c

index 3a6d49f07e22d7273e85d49c8882400bb446b2dd..de1562f27fdb04e7d1e1cf3e34d8d976ca5d5828 100644 (file)
@@ -911,7 +911,7 @@ static void tmio_mmc_finish_request(struct tmio_mmc_host *host)
                host->check_scc_error(host);
 
        /* If SET_BLOCK_COUNT, continue with main command */
-       if (host->mrq) {
+       if (host->mrq && !mrq->cmd->error) {
                tmio_process_mrq(host, mrq);
                return;
        }