On Wed, 13 Feb 2013, Marek Szyprowski wrote: > Hello, > > On 2/12/2013 11:10 PM, Guennadi Liakhovetski wrote: > > 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? > > The idea behind this patch it to avoid messing ocr mask and voltage > regulators when voltage regulator is a simple on/off switch, which doesn't > report any value. Wouldn't mmc_regulator_get_ocrmask() also report an error back in this case? > This solves the serious problems with sdhci driver when > dummy regulator is enabled in kconfig, otherwise the sdhci driver > concludes that no supported voltage is available and fails to initialize. > Using mmc_regulator_get_ocrmask() won't solve this problem. > > BTW, mmc_regulator_get_ocrmask() won't work with continuous range regulators. This seems like a problem, that has to be fixed... Thanks Guennadi --- 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