On 04/20/2016 04:53 PM, Lars Persson wrote:
Add a start_signal_voltage_switch() operation to support enabling of UHS modes. Signed-off-by: Lars Persson <larper@xxxxxxxx> --- drivers/mmc/host/usdhi6rol0.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/drivers/mmc/host/usdhi6rol0.c b/drivers/mmc/host/usdhi6rol0.c index 807c06e..2585ea4 100644 --- a/drivers/mmc/host/usdhi6rol0.c +++ b/drivers/mmc/host/usdhi6rol0.c @@ -1147,12 +1147,25 @@ static void usdhi6_enable_sdio_irq(struct mmc_host *mmc, int enable) } } +static int usdhi6_sig_volt_switch(struct mmc_host *mmc, struct mmc_ios *ios) +{ + int ret; +
To support boards without regulator we need to put a IS_ERR_OR_NULL(mmc->supply.vqmmc) check here and bail out with return 0. Missing vqmmc is OK according to our binding document, but treated as an error by mmc_regulator_set_vqmmc().
+ ret = mmc_regulator_set_vqmmc(mmc, ios); + + if (ret < 0) + dev_warn(mmc_dev(mmc), "Voltage switch failed: %d\n", ret); + + return ret; +} + static struct mmc_host_ops usdhi6_ops = { .request = usdhi6_request, .set_ios = usdhi6_set_ios, .get_cd = usdhi6_get_cd, .get_ro = usdhi6_get_ro, .enable_sdio_irq = usdhi6_enable_sdio_irq, + .start_signal_voltage_switch = usdhi6_sig_volt_switch, }; /* State machine handlers */
-- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html