[PATCH v2] iio: adc: stm32: Simplify with dev_err_probe()

Andy Shevchenko andy.shevchenko at gmail.com
Thu Aug 27 04:27:12 EDT 2020


On Wed, Aug 26, 2020 at 7:19 PM Krzysztof Kozlowski <krzk at kernel.org> wrote:
>
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe().  Less code and also it prints the error value.






>         priv->aclk = devm_clk_get(&pdev->dev, "adc");
>         if (IS_ERR(priv->aclk)) {
>                 ret = PTR_ERR(priv->aclk);
> -               if (ret != -ENOENT) {
> -                       if (ret != -EPROBE_DEFER)
> -                               dev_err(&pdev->dev, "Can't get 'adc' clock\n");
> -                       return ret;
> -               }
> +               if (ret != -ENOENT)
> +                       return dev_err_probe(&pdev->dev, ret, "Can't get 'adc' clock\n");
> +
>                 priv->aclk = NULL;
>         }
>
>         priv->bclk = devm_clk_get(&pdev->dev, "bus");
>         if (IS_ERR(priv->bclk)) {
>                 ret = PTR_ERR(priv->bclk);
> -               if (ret != -ENOENT) {
> -                       if (ret != -EPROBE_DEFER)
> -                               dev_err(&pdev->dev, "Can't get 'bus' clock\n");
> -                       return ret;
> -               }
> +               if (ret != -ENOENT)
> +                       return dev_err_probe(&pdev->dev, ret, "Can't get 'bus' clock\n");
> +
>                 priv->bclk = NULL;
>         }

Again, devm_clk_get_optional() and even, if it exists,
devm_clk_bulk_get_optional().

Please, revisit all patches on this topic.

-- 
With Best Regards,
Andy Shevchenko



More information about the linux-arm-kernel mailing list