Re: [PATCH 04/24] Input: gpio-vibra - Simplify with dev_err_probe()

From: Andy Shevchenko
Date: Thu Aug 27 2020 - 05:04:15 EST


On Wed, Aug 26, 2020 at 9:20 PM 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.

> vibrator->vcc = devm_regulator_get(&pdev->dev, "vcc");
> err = PTR_ERR_OR_ZERO(vibrator->vcc);
> - if (err) {
> - if (err != -EPROBE_DEFER)
> - dev_err(&pdev->dev, "Failed to request regulator: %d\n",
> - err);
> - return err;
> - }
> + if (err)
> + return dev_err_probe(&pdev->dev, err, "Failed to request regulator\n");

Can it be rather
if (IS_ERR())
return dev_err_probe(dev, PTR_ERR());
w/o err be involved?

> vibrator->gpio = devm_gpiod_get(&pdev->dev, "enable", GPIOD_OUT_LOW);
> err = PTR_ERR_OR_ZERO(vibrator->gpio);
> - if (err) {
> - if (err != -EPROBE_DEFER)
> - dev_err(&pdev->dev, "Failed to request main gpio: %d\n",
> - err);
> - return err;
> - }
> + if (err)
> + return dev_err_probe(&pdev->dev, err, "Failed to request main gpio\n");

Ditto.


--
With Best Regards,
Andy Shevchenko