[PATCH 04/12] mmc: sdhci: call voltage_switch callback also for the 3.3V case

Gregory CLEMENT gregory.clement at free-electrons.com
Thu Jun 9 00:10:10 PDT 2016

From: Victor Gu <xigu at marvell.com>

Currently the voltage switch callback function is only called in the 1.8V
case. However, given the name this callback should be called in the 3.3V
case too. It is needed for the Xenon controller.

[gregory.clement at free-electrons.com: split the initial commit and
modify the log]

Signed-off-by: Victor Gu <xigu at marvell.com>
Signed-off-by: Marcin Wojtas <mw at semihalf.com>
Signed-off-by: Gregory CLEMENT <gregory.clement at free-electrons.com>
 drivers/mmc/host/sdhci.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index fd4e9a84f739..b07219426d39 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -1749,6 +1749,10 @@ static int sdhci_start_signal_voltage_switch(struct mmc_host *mmc,
 		/* Wait for 5ms */
 		usleep_range(5000, 5500);
+		/* Some controller need to do more when switching */
+		if (host->ops->voltage_switch)
+			host->ops->voltage_switch(host);
 		/* 3.3V regulator output should be stable within 5 ms */
 		ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2);
 		if (!(ctrl & SDHCI_CTRL_VDD_180))

More information about the linux-arm-kernel mailing list