leds: lm3692x: Simplify with dev_err_probe()
authorKrzysztof Kozlowski <krzk@kernel.org>
Wed, 26 Aug 2020 14:50:10 +0000 (16:50 +0200)
committerPavel Machek <pavel@ucw.cz>
Wed, 9 Sep 2020 09:20:09 +0000 (11:20 +0200)
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@kernel.org>
Signed-off-by: Pavel Machek <pavel@ucw.cz>
drivers/leds/leds-lm3692x.c

index e1e2d2b..1d7ea1b 100644 (file)
@@ -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;
        }