On Wed, 9 Sep 2020 at 20:36, Jonathan Cameron <jic23@xxxxxxxxxx> wrote: > > On Sat, 29 Aug 2020 08:47:16 +0200 > Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote: > > > Common pattern of handling deferred probe can be simplified with > > dev_err_probe(). Less code and also it prints the error value. > > > > Signed-off-by: Krzysztof Kozlowski <krzk@xxxxxxxxxx> > > Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx> > > > I don't have the thread to hand, but this tripped a warning next > and the patch was dropped as a result. See below. Thanks for letting me know. If you mean the warning caused by: https://lore.kernel.org/lkml/20200909073716.GA560912@xxxxxxxxx/ then the driver-core patch was dropped, not the iio one: https://lore.kernel.org/linux-next/20200909074130.GB561485@xxxxxxxxx/T/#t So we are good here :) Best regards, Krzysztof > Jonathan > > --- > > > > Changes since v2: > > 1. Wrap dev_err_probe() lines at 80 character > > > > Changes since v1: > > 1. Convert to devm_clk_get_optional > > 2. Update also stm32-dfsdm-core and stm32-dac-core. > > 3. Wrap around 100 characters (accepted by checkpatch). > > --- > > drivers/iio/adc/stm32-adc-core.c | 75 ++++++++++-------------------- > > drivers/iio/adc/stm32-adc.c | 10 ++-- > > drivers/iio/adc/stm32-dfsdm-adc.c | 10 ++-- > > drivers/iio/adc/stm32-dfsdm-core.c | 9 ++-- > > drivers/iio/dac/stm32-dac-core.c | 5 +- > > 5 files changed, 35 insertions(+), 74 deletions(-) > > > > diff --git a/drivers/iio/adc/stm32-adc-core.c b/drivers/iio/adc/stm32-adc-core.c > > index 0e2068ec068b..3f27b4817a42 100644 > > --- a/drivers/iio/adc/stm32-adc-core.c > > +++ b/drivers/iio/adc/stm32-adc-core.c > > @@ -582,11 +582,9 @@ static int stm32_adc_core_switches_probe(struct device *dev, > > priv->syscfg = syscon_regmap_lookup_by_phandle(np, "st,syscfg"); > > if (IS_ERR(priv->syscfg)) { > > ret = PTR_ERR(priv->syscfg); > > - if (ret != -ENODEV) { > > - if (ret != -EPROBE_DEFER) > > - dev_err(dev, "Can't probe syscfg: %d\n", ret); > > - return ret; > > - } > > + if (ret != -ENODEV) > > + return dev_err_probe(dev, ret, "Can't probe syscfg\n"); > > + > > priv->syscfg = NULL; > > } > > > > @@ -596,12 +594,9 @@ static int stm32_adc_core_switches_probe(struct device *dev, > > priv->booster = devm_regulator_get_optional(dev, "booster"); > > if (IS_ERR(priv->booster)) { > > ret = PTR_ERR(priv->booster); > > - if (ret != -ENODEV) { > > - if (ret != -EPROBE_DEFER) > > - dev_err(dev, "can't get booster %d\n", > > - ret); > > - return ret; > > - } > > + if (ret != -ENODEV) > > + dev_err_probe(dev, ret, "can't get booster\n"); > > This tripped a warning and got the patch dropped because we no longer > return on error.