Message ID | m3r58k1hlc.fsf@pullcord.laptop.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 04/30/2011 06:35 AM, Chris Ball wrote: > The regulator subsystem provides stubbed out versions of its calls that > are always present (so that they can be used without needing #ifdefs). > But the regulator_get() stub always returns an error value according > to IS_ERR(), which leads sdhci to print messages like "mmc0: no vmmc > regulator found" on every boot, even if CONFIG_REGULATOR is not set. > > This patch fixes that (and removes the unwanted message) by having > the regulator_get() call occur inside an #ifdef CONFIG_REGULATOR. Shouldn't the stubbed version of regulator_get return NULL, which is not treated as an error by IS_ERR? - Lars -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi Lars, On Sat, Apr 30 2011, Lars-Peter Clausen wrote: > On 04/30/2011 06:35 AM, Chris Ball wrote: >> The regulator subsystem provides stubbed out versions of its calls that >> are always present (so that they can be used without needing #ifdefs). >> But the regulator_get() stub always returns an error value according >> to IS_ERR(), which leads sdhci to print messages like "mmc0: no vmmc >> regulator found" on every boot, even if CONFIG_REGULATOR is not set. >> >> This patch fixes that (and removes the unwanted message) by having >> the regulator_get() call occur inside an #ifdef CONFIG_REGULATOR. > > Shouldn't the stubbed version of regulator_get return NULL, which is not > treated as an error by IS_ERR? Oops, thanks -- you're right, of course. I withdraw the patch. - Chris.
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c index e5cfe70..e29e77a 100644 --- a/drivers/mmc/host/sdhci.c +++ b/drivers/mmc/host/sdhci.c @@ -2059,15 +2059,17 @@ int sdhci_add_host(struct sdhci_host *host) mmc_hostname(mmc), host); if (ret) goto untasklet; +#ifdef CONFIG_REGULATOR host->vmmc = regulator_get(mmc_dev(mmc), "vmmc"); if (IS_ERR(host->vmmc)) { printk(KERN_INFO "%s: no vmmc regulator found\n", mmc_hostname(mmc)); host->vmmc = NULL; } else { regulator_enable(host->vmmc); } +#endif /* CONFIG_REGULATOR */ sdhci_init(host, 0); #ifdef CONFIG_MMC_DEBUG
The regulator subsystem provides stubbed out versions of its calls that are always present (so that they can be used without needing #ifdefs). But the regulator_get() stub always returns an error value according to IS_ERR(), which leads sdhci to print messages like "mmc0: no vmmc regulator found" on every boot, even if CONFIG_REGULATOR is not set. This patch fixes that (and removes the unwanted message) by having the regulator_get() call occur inside an #ifdef CONFIG_REGULATOR. Reported-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Chris Ball <cjb@laptop.org> --- drivers/mmc/host/sdhci.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)