summaryrefslogtreecommitdiff
path: root/drivers/mmc/host/Kconfig
diff options
context:
space:
mode:
authorHaibo Chen <haibo.chen@nxp.com>2021-10-15 10:00:36 +0800
committerUlf Hansson <ulf.hansson@linaro.org>2021-10-19 12:46:05 +0200
commit9af372dc70e9fdcbb70939dac75365e7b88580b4 (patch)
tree1d8e94f3821bc307ad9222d18c47a27fa1d44e36 /drivers/mmc/host/Kconfig
parent6ab4e2eb5e956a61e4d53cea3ab8c866ba79a830 (diff)
mmc: sdhci-esdhc-imx: clear the buffer_read_ready to reset standard tuning circuit
To reset standard tuning circuit completely, after clear ESDHC_MIX_CTRL_EXE_TUNE, also need to clear bit buffer_read_ready, this operation will finally clear the USDHC IP internal logic flag execute_tuning_with_clr_buf, make sure the following normal data transfer will not be impacted by standard tuning logic used before. Find this issue when do quick SD card insert/remove stress test. During standard tuning prodedure, if remove SD card, USDHC standard tuning logic can't clear the internal flag execute_tuning_with_clr_buf. Next time when insert SD card, all data related commands can't get any data related interrupts, include data transfer complete interrupt, data timeout interrupt, data CRC interrupt, data end bit interrupt. Always trigger software timeout issue. Even reset the USDHC through bits in register SYS_CTRL (0x2C, bit28 reset tuning, bit26 reset data, bit 25 reset command, bit 24 reset all) can't recover this. From the user's point of view, USDHC stuck, SD can't be recognized any more. Fixes: d9370424c948 ("mmc: sdhci-esdhc-imx: reset tuning circuit when power on mmc card") Signed-off-by: Haibo Chen <haibo.chen@nxp.com> Acked-by: Adrian Hunter <adrian.hunter@intel.com> Cc: stable@vger.kernel.org Link: https://lore.kernel.org/r/1634263236-6111-1-git-send-email-haibo.chen@nxp.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'drivers/mmc/host/Kconfig')
0 files changed, 0 insertions, 0 deletions