Message ID | 128d2bb662f174ed84c61dc268940bd87878f0d1.1506146101.git.christophe.jaillet@wanadoo.fr (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sat, 23 Sep 2017 08:06:20 +0200 Christophe JAILLET <christophe.jaillet@wanadoo.fr> wrote: > If we can not enable the regulator, go through the error handling path > instead of silently continuing. > > Fixes: 7cc97d77ee8a ("iio: adc: twl4030: Fix ADC[3:6] readings") > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Applied to the fixes-togreg-post-rc1 branch of iio.git. I haven't explicitly marked this one for stable as it isn't broken as such, just inconsistent. Thanks, Jonathan > --- > This patch is highly speculative. > I don't find logical to return an error if we don't find the 'vusb3v1' > regulator, but continue if we find it, but can't enable it. > Returning an error if both cases (i.e. failing 'devm_regulator_get()' or > 'regulator_enable)' seems the usual pattern in all the .probe functions > with a 'regulator_enable()' call have looked at (~ 10 of them taken > randomly) > --- > drivers/iio/adc/twl4030-madc.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/iio/adc/twl4030-madc.c b/drivers/iio/adc/twl4030-madc.c > index 32db23d9a483..e3cfb91bffc6 100644 > --- a/drivers/iio/adc/twl4030-madc.c > +++ b/drivers/iio/adc/twl4030-madc.c > @@ -893,8 +893,10 @@ static int twl4030_madc_probe(struct platform_device *pdev) > } > > ret = regulator_enable(madc->usb3v1); > - if (ret) > + if (ret) { > dev_err(madc->dev, "could not enable 3v1 bias regulator\n"); > + goto err_i2c; > + } > > ret = iio_device_register(iio_dev); > if (ret) { -- To unsubscribe from this list: send the line "unsubscribe linux-iio" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/iio/adc/twl4030-madc.c b/drivers/iio/adc/twl4030-madc.c index 32db23d9a483..e3cfb91bffc6 100644 --- a/drivers/iio/adc/twl4030-madc.c +++ b/drivers/iio/adc/twl4030-madc.c @@ -893,8 +893,10 @@ static int twl4030_madc_probe(struct platform_device *pdev) } ret = regulator_enable(madc->usb3v1); - if (ret) + if (ret) { dev_err(madc->dev, "could not enable 3v1 bias regulator\n"); + goto err_i2c; + } ret = iio_device_register(iio_dev); if (ret) {
If we can not enable the regulator, go through the error handling path instead of silently continuing. Fixes: 7cc97d77ee8a ("iio: adc: twl4030: Fix ADC[3:6] readings") Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> --- This patch is highly speculative. I don't find logical to return an error if we don't find the 'vusb3v1' regulator, but continue if we find it, but can't enable it. Returning an error if both cases (i.e. failing 'devm_regulator_get()' or 'regulator_enable)' seems the usual pattern in all the .probe functions with a 'regulator_enable()' call have looked at (~ 10 of them taken randomly) --- drivers/iio/adc/twl4030-madc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)