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 <[email protected]>
---
 drivers/leds/leds-lm3692x.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/drivers/leds/leds-lm3692x.c b/drivers/leds/leds-lm3692x.c
index e1e2d2b64a56..1d7ea1b76a12 100644
--- a/drivers/leds/leds-lm3692x.c
+++ b/drivers/leds/leds-lm3692x.c
@@ -394,13 +394,10 @@ static int lm3692x_probe_dt(struct lm3692x_led *led)
        led->regulator = devm_regulator_get_optional(&led->client->dev, "vled");
        if (IS_ERR(led->regulator)) {
                ret = PTR_ERR(led->regulator);
-               if (ret != -ENODEV) {
-                       if (ret != -EPROBE_DEFER)
-                               dev_err(&led->client->dev,
-                                       "Failed to get vled regulator: %d\n",
-                                       ret);
-                       return ret;
-               }
+               if (ret != -ENODEV)
+                       return dev_err_probe(&led->client->dev, ret,
+                                            "Failed to get vled regulator\n");
+
                led->regulator = NULL;
        }
 
-- 
2.17.1

Reply via email to