
Subject: [PATCH v3 3/3] mmc: renesas-sdhi: Send stop when MMC tuning command fails
From: Hai Pham hai.pham.ud@renesas.com
When tuning command (CMD21) fails with command error, call mmc_send_stop_transmission() to send stop command (CMD12).
Reviewed-by: Takeshi Kihara takeshi.kihara.df@renesas.com Reviewed-by: Marek Vasut marek.vasut+renesas@mailbox.org Signed-off-by: Hai Pham hai.pham.ud@renesas.com Signed-off-by: Marek Vasut marek.vasut+renesas@mailbox.org [Marek: Add dev_dbg() message in case tuning abort fails Move tuning opcode check from mmc_abort_tuning()]
V2: Update on previous patch changes V3: Update on previous patch changes
Cc: "Ying-Chun Liu (PaulLiu)" paul.liu@linaro.org Cc: Hai Pham hai.pham.ud@renesas.com Cc: Jaehoon Chung jh80.chung@samsung.com Cc: Loic Poulain loic.poulain@linaro.org Cc: Peng Fan peng.fan@nxp.com Cc: Simon Glass sjg@chromium.org Cc: Takeshi Kihara takeshi.kihara.df@renesas.com
drivers/mmc/renesas-sdhi.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/drivers/mmc/renesas-sdhi.c b/drivers/mmc/renesas-sdhi.c index 280d96dbc2d..8e716f74491 100644 --- a/drivers/mmc/renesas-sdhi.c +++ b/drivers/mmc/renesas-sdhi.c @@ -611,6 +611,17 @@ int renesas_sdhi_execute_tuning(struct udevice *dev, uint opcode) priv->smpcmp |= BIT(i);
mdelay(1);
/*
* eMMC specification specifies that CMD12 can be used to
stop a tuning
* command, but SD specification does not, so do nothing
unless it is
* eMMC.
*/
if (ret && (opcode ==
MMC_CMD_SEND_TUNING_BLOCK_HS200)) {
ret = mmc_send_stop_transmission(mmc, false);
if (ret < 0)
dev_dbg(dev, "Tuning abort fail (%d)\n",
ret);
}
}
ret = renesas_sdhi_select_tuning(priv, taps);
Reviewed-by: Peng Fan peng.fan@nxp.com
-- 2.39.2