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