Hello Pavel, On Wed, Nov 30, 2022 at 04:21:41PM +0100, Uwe Kleine-König wrote: > .get_state() can return an error indication. Make use of it to propagate > failing hardware accesses. > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxxxx> > --- > drivers/leds/rgb/leds-qcom-lpg.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/leds/rgb/leds-qcom-lpg.c b/drivers/leds/rgb/leds-qcom-lpg.c > index 741cc2fd817d..0dcc046a9a19 100644 > --- a/drivers/leds/rgb/leds-qcom-lpg.c > +++ b/drivers/leds/rgb/leds-qcom-lpg.c > @@ -982,20 +982,20 @@ static int lpg_pwm_get_state(struct pwm_chip *chip, struct pwm_device *pwm, > > ret = regmap_read(lpg->map, chan->base + LPG_SIZE_CLK_REG, &val); > if (ret) > - return 0; > + return ret; > > refclk = lpg_clk_rates[val & PWM_CLK_SELECT_MASK]; > if (refclk) { > ret = regmap_read(lpg->map, chan->base + LPG_PREDIV_CLK_REG, &val); > if (ret) > - return 0; > + return ret; > > pre_div = lpg_pre_divs[FIELD_GET(PWM_FREQ_PRE_DIV_MASK, val)]; > m = FIELD_GET(PWM_FREQ_EXP_MASK, val); > > ret = regmap_bulk_read(lpg->map, chan->base + PWM_VALUE_REG, &pwm_value, sizeof(pwm_value)); > if (ret) > - return 0; > + return ret; > > state->period = DIV_ROUND_UP_ULL((u64)NSEC_PER_SEC * LPG_RESOLUTION * pre_div * (1 << m), refclk); > state->duty_cycle = DIV_ROUND_UP_ULL((u64)NSEC_PER_SEC * pwm_value * pre_div * (1 << m), refclk); > @@ -1006,7 +1006,7 @@ static int lpg_pwm_get_state(struct pwm_chip *chip, struct pwm_device *pwm, > > ret = regmap_read(lpg->map, chan->base + PWM_ENABLE_CONTROL_REG, &val); > if (ret) > - return 0; > + return ret; > > state->enabled = FIELD_GET(LPG_ENABLE_CONTROL_OUTPUT, val); > state->polarity = PWM_POLARITY_NORMAL; It would be great to get an Ack from you for this patch and the led part of patch 1 to take it via the PWM tree. Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |
Attachment:
signature.asc
Description: PGP signature