MLK-12086-1 dts: imx6qdl-sabreauto: use external vmmc for sd3 optionally
authorDong Aisheng <b29396@freescale.com>
Fri, 10 Jan 2014 13:31:21 +0000 (21:31 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 19:49:36 +0000 (14:49 -0500)
commit0657c82a3e551304fe255d6ec5983af84a6dcf9b
treed5f2b40d7294f30ec57fec60fd3797102a33efec
parent67fe90959058a0f002dd19dc95bef64ff037b11a
MLK-12086-1 dts: imx6qdl-sabreauto: use external vmmc for sd3 optionally

SD3.0 cards require power cycle the card during suspend/resume,
or the card re-enumeration after resume will fail to be identified
as UHS card since the card is already working on 1.8v mode and refuse
to ack the S18R request, thus, it will then work on normal high speed
mode instead.

We have to use external vmmc regulator to power cycle the card during
suspend/resume to reset card signal voltage to 3.3v frist for the later
1.8v voltage switch.

However, due to the sabreauto board limitation, we can not use external
regulator to powere off card by default since the card power is shared
with card detect pullup. Disabling the vmmc regulator will also shutdown
the cd pullup which causes incorrect illusion of card exist.
(e.g. plug out the card, mmc core wll think the card is exist since cd pin
is low but it never can find the card)
HW rework removing R695 and enable PAD internal pullup is needed to
fix this isssue.

User can manually open the mask of vmmc in dts to enable using external
regulator if your board has done the rework as said above.
Or by default we still do not power off card during suspend.

Signed-off-by: Dong Aisheng <b29396@freescale.com>
(cherry picked from commit 2fd1bf9320bce1c22f2406c74277b7422653511e)
(cherry picked from commit 0804d85c137129db17766c3f4e236ae722d9b7db)
arch/arm/boot/dts/imx6qdl-sabreauto.dtsi