mmc: fsl_esdhc: workaround for hardware 3.3v IO reliability issue
authorYangbo Lu <yangbo.lu@nxp.com>
Tue, 19 May 2020 03:06:44 +0000 (11:06 +0800)
committerPeng Fan <peng.fan@nxp.com>
Mon, 15 Jun 2020 01:45:22 +0000 (09:45 +0800)
commitc927d65873c7706f436ab59a78d44a0eb80fe939
treed3842f37f3043195eae78172d2458cde39fdc690
parent9abf648436b49553e6cb4a7f03a021720616d75b
mmc: fsl_esdhc: workaround for hardware 3.3v IO reliability issue

When eSDHC operates at 3.3v, damage can accumulate in an internal
level shifter at a higher than expected rate. The faster the interface
runs, the more damage accumulates. This issue now is found on LX2160A
eSDHC1 for only SD card.

The hardware workaround is recommended to use an on-board level shifter
that is 1.8v on SoC side and 3.3v on SD card side.

For boards without hardware workaround, this option could be enabled,
ensuring 1.8v IO voltage and disabling eSDHC if no card.
This option assumes no hotplug, and u-boot has to make all the way to
to linux to use 1.8v UHS-I speed mode if has card.
If you do not want the workaround for better user experience, of course
you can choose to not select it running eSDHC in unsafe mode.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Acked-by: Peng Fan <peng.fan@nxp.com>
drivers/mmc/Kconfig
drivers/mmc/fsl_esdhc.c
include/fsl_esdhc.h