summaryrefslogtreecommitdiffstats
path: root/drivers/leds/leds-lm3692x.c
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2019-09-21 14:12:09 -0700
committerPavel <pavel@ucw.cz>2019-11-03 17:37:46 +0100
commitd0f9cc49e9c8afae49f0efc7927156dbd555ee93 (patch)
tree7288c820b4fabcbb913dd65096257558e363ecce /drivers/leds/leds-lm3692x.c
parent1051da2cfc7ef37ffc3e7a595dc80fefb41f09ad (diff)
downloadlinux-stable-d0f9cc49e9c8afae49f0efc7927156dbd555ee93.tar.gz
linux-stable-d0f9cc49e9c8afae49f0efc7927156dbd555ee93.tar.bz2
linux-stable-d0f9cc49e9c8afae49f0efc7927156dbd555ee93.zip
leds: lm3692x: Don't overwrite return value in error path
The driver currently reports successful initialization on every failure as long as it's able to power off the regulator. Don't check the return value of regulator_disable to avoid that. Signed-off-by: Guido Günther <agx@sigxcpu.org> Acked-by: Pavel Machek <pavel@ucw.cz> Reviewed-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Pavel Machek <pavel@ucw.cz>
Diffstat (limited to 'drivers/leds/leds-lm3692x.c')
-rw-r--r--drivers/leds/leds-lm3692x.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/leds/leds-lm3692x.c b/drivers/leds/leds-lm3692x.c
index 487228c2bed2..ad76e34455ff 100644
--- a/drivers/leds/leds-lm3692x.c
+++ b/drivers/leds/leds-lm3692x.c
@@ -198,7 +198,7 @@ out:
static int lm3692x_init(struct lm3692x_led *led)
{
int enable_state;
- int ret;
+ int ret, reg_ret;
if (led->regulator) {
ret = regulator_enable(led->regulator);
@@ -313,14 +313,15 @@ out:
gpiod_direction_output(led->enable_gpio, 0);
if (led->regulator) {
- ret = regulator_disable(led->regulator);
- if (ret)
+ reg_ret = regulator_disable(led->regulator);
+ if (reg_ret)
dev_err(&led->client->dev,
- "Failed to disable regulator\n");
+ "Failed to disable regulator: %d\n", reg_ret);
}
return ret;
}
+
static int lm3692x_probe_dt(struct lm3692x_led *led)
{
struct fwnode_handle *child = NULL;