mmc: cqhci: add emmc hardware reset after cqe recovery

When an eMMC error occurs due to changes in hardware conditions
(such as temperature, voltage, etc.), it may not return to normal
without reinitializing the eMMC. In this case, adding hardware
reset and reinitialization can solve the problem.

Change-Id: Ie2164175c59402d06fcb0d774aaba6d712f947d9
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
This commit is contained in:
Yifeng Zhao
2024-11-20 17:38:58 +08:00
committed by Tao Huang
parent d84e5b6f72
commit 4d97053164

View File

@@ -1120,6 +1120,9 @@ static void cqhci_recovery_finish(struct mmc_host *mmc)
cqhci_set_irqs(cq_host, CQHCI_IS_MASK);
/* Add emmc hardware reset after cqe recovery. */
mmc_hw_reset(mmc->card);
pr_debug("%s: cqhci: recovery done\n", mmc_hostname(mmc));
}