mmc: use regulator_can_change_voltage() instead of regulator_count_voltages
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 4 Dec 2012 14:01:02 +0000 (15:01 +0100)
committerChris Ball <cjb@laptop.org>
Sun, 24 Feb 2013 19:37:14 +0000 (14:37 -0500)
mmc_regulator_set_ocr() depends on the ability of regulator to change the
voltage value. When regulator cannot change its voltage output, some code
is skipped to avoid reporting false errors on some boards, which use MMC
hosts with fixed regulators (e.g. Samsung Goni and UniversalC210 boards).

This patch replaces a hacky workaround based on regulator_count_voltages()
value with the correct call to recently introduced
regulator_can_change_voltage() function in regulators core.

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

index 6f3bc1a97ba8c118c57f8789d2bb3ba98933b40c..08a3cf2a7610882c3e2957a61e9318604adeeaa4 100644 (file)
@@ -1235,7 +1235,7 @@ int mmc_regulator_set_ocr(struct mmc_host *mmc,
                 */
                voltage = regulator_get_voltage(supply);
 
-               if (regulator_count_voltages(supply) == 1)
+               if (!regulator_can_change_voltage(supply))
                        min_uV = max_uV = voltage;
 
                if (voltage < 0)