Messages in this thread | | | Subject | Re: [PATCH v3 2/5] leds: lm3692x: Don't overwrite return value in error path | From | Dan Murphy <> | Date | Mon, 23 Sep 2019 09:16:47 -0500 |
| |
Guido
Thanks for the update
Reviewed-by: Dan Murphy <dmurphy@ti.com>
On 9/21/19 4:12 PM, Guido Günther wrote: > 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> > --- > drivers/leds/leds-lm3692x.c | 9 +++++---- > 1 file 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 @@ static int lm3692x_brightness_set(struct led_classdev *led_cdev, > 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 @@ static int lm3692x_init(struct lm3692x_led *led) > 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;
| |