Hi Marek On Tue, 12 Feb 2013, Marek Szyprowski wrote: > Some regulators don't report any voltage values, so checking supported > voltage range results in disabling all SDHCI_CAN_VDD_* flags and > registration failure. This patch finally provides a correct fix for the > registration of SDHCI driver with all possible voltage regulators: > dummy, fixed and regulated without using regulator_count_voltages() > hacks. > > Signed-off-by: Marek Szyprowski <m.szyprowski@xxxxxxxxxxx> > --- > drivers/mmc/host/sdhci.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > index ba586ae..735526b 100644 > --- a/drivers/mmc/host/sdhci.c > +++ b/drivers/mmc/host/sdhci.c > @@ -2976,7 +2976,11 @@ int sdhci_add_host(struct sdhci_host *host) > } > > #ifdef CONFIG_REGULATOR > - if (host->vmmc) { > + /* > + * Voltage range check makes sense only if regulator reports > + * any voltage value. > + */ > + if (host->vmmc && regulator_get_voltage(host->vmmc) > 0) { > ret = regulator_is_supported_voltage(host->vmmc, 2700000, > 3600000); Wouldn't using mmc_regulator_get_ocrmask() be a better option? Thanks Guennadi > if ((ret <= 0) || (!(caps[0] & SDHCI_CAN_VDD_330))) > -- > 1.7.9.5 > > -- > 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 > --- Guennadi Liakhovetski, Ph.D. Freelance Open-Source Software Developer http://www.open-technology.de/ -- 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