lkml.org 
[lkml]   [2019]   [Sep]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/5] leds: lm3692x: Don't overwrite return value in error path
From
Date
Guido

On 9/17/19 9:19 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>
> ---
> drivers/leds/leds-lm3692x.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/leds/leds-lm3692x.c b/drivers/leds/leds-lm3692x.c
> index 487228c2bed2..f394669ad8f2 100644
> --- a/drivers/leds/leds-lm3692x.c
> +++ b/drivers/leds/leds-lm3692x.c
> @@ -312,15 +312,12 @@ static int lm3692x_init(struct lm3692x_led *led)
> if (led->enable_gpio)
> gpiod_direction_output(led->enable_gpio, 0);
>
> - if (led->regulator) {
> - ret = regulator_disable(led->regulator);
> - if (ret)
> - dev_err(&led->client->dev,
> - "Failed to disable regulator\n");
> - }
> + if (led->regulator)
> + regulator_disable(led->regulator);

The change is ok and makes sense but I believe that if the regulator was
not properly disabled there needs to be some error message t0o.

If the code got here then there is either a fault or an I/O issue not a
regulator issue.

The regulator failing to disable should be logged.

Dan


>
> return ret;
> }
> +
> static int lm3692x_probe_dt(struct lm3692x_led *led)
> {
> struct fwnode_handle *child = NULL;

\
 
 \ /
  Last update: 2019-09-18 20:31    [W:0.080 / U:0.208 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site