]> git.baikalelectronics.ru Git - kernel.git/commit
mmc: sdhci-esdhc-imx: fix HS400 timing issue
authorBOUGH CHEN <haibo.chen@nxp.com>
Thu, 27 Dec 2018 11:20:24 +0000 (11:20 +0000)
committerUlf Hansson <ulf.hansson@linaro.org>
Mon, 25 Feb 2019 07:40:58 +0000 (08:40 +0100)
commit613dc6cc4dcefbd3d5c89bdf539711c0efaa612c
tree5a4549c7cb9b26c3ac6bd1c04daa6974f7d932c2
parentcb205ab943aa3a981744dc08b246d45ea78e4841
mmc: sdhci-esdhc-imx: fix HS400 timing issue

Now tuning reset will be done when the timing is MMC_TIMING_LEGACY/
MMC_TIMING_MMC_HS/MMC_TIMING_SD_HS. But for timing MMC_TIMING_MMC_HS,
we can not do tuning reset, otherwise HS400 timing is not right.

Here is the process of init HS400, first finish tuning in HS200 mode,
then switch to HS mode and 8 bit DDR mode, finally switch to HS400
mode. If we do tuning reset in HS mode, this will cause HS400 mode
lost the tuning setting, which will cause CRC error.

Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Cc: stable@vger.kernel.org # v4.12+
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Fixes: 87c218d46250 ("mmc: sdhci-esdhc-imx: reset tuning circuit when power on mmc card")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-esdhc-imx.c