]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
mmc: sdhci: apply voltage range check only for non-fixed regulators
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 13 Nov 2012 13:32:14 +0000 (14:32 +0100)
committerChris Ball <cjb@laptop.org>
Mon, 26 Nov 2012 00:43:36 +0000 (19:43 -0500)
Fixed regulators cannot change their voltage, so disable all voltage
range checking for them, otherwise the driver fails to operate with
fixed regulators. Up to now it worked only by luck, because
regulator_is_supported_voltage() function returned incorrect values.
Commit "regulator: fix voltage check in regulator_is_supported_voltage()"
fixed that function and now additional check is needed for fixed
regulators.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/sdhci.c

index c7851c0aabce52226d118d50bbe95fe61b4094c2..6f6534e1fa60dbdd256b9575c56344e2a43c93e0 100644 (file)
@@ -2923,7 +2923,7 @@ int sdhci_add_host(struct sdhci_host *host)
                regulator_enable(host->vmmc);
 
 #ifdef CONFIG_REGULATOR
-       if (host->vmmc) {
+       if (host->vmmc && regulator_count_voltages(host->vmmc) > 1) {
                ret = regulator_is_supported_voltage(host->vmmc, 3300000,
                        3300000);
                if ((ret <= 0) || (!(caps[0] & SDHCI_CAN_VDD_330)))