Hi All,
We are trying to provide UHS-I support in SDHC driver "sdhci-esdhc-imx.c" in Linux 3.0.35 running on i.MX6 custom board.
PMIC(pf0100) VGEN4 LDO provides voltage required to the connector.
In esdhc_writew_le() whenever SDHCI_CTRL_VDD_180 is detected we are planning to change the VGEN4 LDO voltage to 3.3 to 1.8V which is required for high speed operation. And whenever normal SD card is detected VGEN4 voltage should again switch back to 1.8V to 3.3V.
How we can use the pfuze driver to achieve this voltage switching?
Thanks and Regards,
Vishakh
Hi Vishakh
switching procedure is described in SD specification, Figure 3-16
UHS-I: host send ACMD41, card replies if switch is allowed. If allowed
host send CMD11 to invoke voltage switch sequence.
Please refer to p.17 SD specification
https://www.sdcard.org/downloads/pls/pdf/part1_410.pdf
https://www.sdcard.org/downloads/pls/
also may be useful to look at patch
http://www.spinics.net/lists/linux-mmc/msg22850.html
Regarding pmic usage please check attached Linux Manual
Chapter 17 PF100 Regulator Driver.
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
Does the L3.0.35_4.0.0 BSP driver "sdhci-esdhc-imx.c" supports UHS-I?
Awaiting for your reply...
Thanks and Regards,
Vishakh
Hi Vishakh
I am afraid no.
Best regards
igor
Hi Igor,
As I observed "sdhci-esdhc-imx.c" supports 1.8V switching using VSELECT. Is this not sufficient to support UHS-I functionality. If not what are the further modifications required ?
We have spent lot of time debugging UHS-I. Any help from you will be appreciated.
With Regards,
Vishakh
Hi Vishakh
it is not supported as answered by i.mx application team (please ask local
fae to get access to link below)
https://community.freescale.com/message/345405#345405
you can try latest linux releases, the later the better, to use that
functionality.
Best regards
igor
Hi Igor,
Thank you for the reply.
Here are few more details with the current status.
After CMD11 we are changing the PMIC LDO voltage to 1.8V in sdhci_start_signal_voltage_switch() of sdhci.c. We are trying this way(may not be the right one), as we are not using VSELECT of SDHC.
Once this voltage switching is done, driver is unable to receive the CMD2 response and giving timeout error. Attached the log file.
Please let us know your thoughts on this.
Thanks and Regards,
Vishakh