>From the HPG:
In some platform, SDCC controller can be connected to either an eMMC device or
an SD card. The PADs for SD card are dual-voltage that support 3v/1.8v. Those
PADs have a control signal  (io_pad_pwr_switch/mode18 ) that indicates whether
the PAD works in 3v or 1.8v.

For SD usage the default value of this signal is ???0???, and SD driver changes 
it
to ???1??? as a part of voltage switching sequence.
For eMMC usage, SW should configure this signal to ???1??? and supply 1.8v to 
PADs
before starting any activity on the eMMC BUS.

To set this signal, write the following in the
SDC1_SDCC_HC_VENDOR_SPECIFIC_FUNC register:
        HC_IO_PAD_PWR_SWITCH: bit 16
                HC_IO_PAD_PWR_SWITCH_EN: bit 15

Changes since v1:
        Modified comments on io_pad related changes.
        Split some read+modify+write commands to multiple lines

Changes since v2:
        IO_PAD_PWR_SWITCH_EN will be set only if we have info regarding what
        voltage is supported by the regulators.
        Replaced regulator_list_voltage() API with
        regulator_is_supported_voltage().

Changes since v3:
        Removed unnecessary prints and extra lines.

Krishna Konda (1):
  mmc: sdhci-msm: support voltage pad switching

Vijay Viswanath (1):
  mmc: sdhci-msm: Add support to store supported vdd-io voltages

 drivers/mmc/host/sdhci-msm.c | 99 +++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 97 insertions(+), 2 deletions(-)

-- 
 Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc. 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux 
Foundation Collaborative Project.

Reply via email to