Message ID | 20240826083337.1835405-1-victor.liu@nxp.com |
---|---|
State | Accepted |
Headers | show |
Series | pwm: adp5585: Set OSC_EN bit to 1 when PWM state is enabled | expand |
Hi Liu, Thank you for the patch. On Mon, Aug 26, 2024 at 04:33:37PM +0800, Liu Ying wrote: > It turns out that OSC_EN bit in GERNERAL_CFG register has to be set to 1 > when PWM state is enabled, otherwise PWM signal won't be generated. Indeed, this likely got lost during one of the reworks. The apply function correctly clears the bit when disabling PWM, but doesn't set it otherwise. > Fixes: e9b503879fd2 ("pwm: adp5585: Add Analog Devices ADP5585 support") > Signed-off-by: Liu Ying <victor.liu@nxp.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Uwe, would you be able to queue this for v6.12 ? > --- > drivers/pwm/pwm-adp5585.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/pwm/pwm-adp5585.c b/drivers/pwm/pwm-adp5585.c > index ed7e8c6bcf32..40472ac5db64 100644 > --- a/drivers/pwm/pwm-adp5585.c > +++ b/drivers/pwm/pwm-adp5585.c > @@ -100,6 +100,10 @@ static int pwm_adp5585_apply(struct pwm_chip *chip, > if (ret) > return ret; > > + ret = regmap_set_bits(regmap, ADP5585_GENERAL_CFG, ADP5585_OSC_EN); > + if (ret) > + return ret; > + > return regmap_set_bits(regmap, ADP5585_PWM_CFG, ADP5585_PWM_EN); > } >
Hello Laurent, On Mon, Aug 26, 2024 at 11:50:49AM +0300, Laurent Pinchart wrote: > Thank you for the patch. > > On Mon, Aug 26, 2024 at 04:33:37PM +0800, Liu Ying wrote: > > It turns out that OSC_EN bit in GERNERAL_CFG register has to be set to 1 > > when PWM state is enabled, otherwise PWM signal won't be generated. > > Indeed, this likely got lost during one of the reworks. The apply > function correctly clears the bit when disabling PWM, but doesn't set it > otherwise. > > > Fixes: e9b503879fd2 ("pwm: adp5585: Add Analog Devices ADP5585 support") > > Signed-off-by: Liu Ying <victor.liu@nxp.com> > > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > > Uwe, would you be able to queue this for v6.12 ? Yes, I just merged Lee's immutable branch into my for-next branch to get e9b503879fd2 and applied this patch on top. Best regards Uwe
diff --git a/drivers/pwm/pwm-adp5585.c b/drivers/pwm/pwm-adp5585.c index ed7e8c6bcf32..40472ac5db64 100644 --- a/drivers/pwm/pwm-adp5585.c +++ b/drivers/pwm/pwm-adp5585.c @@ -100,6 +100,10 @@ static int pwm_adp5585_apply(struct pwm_chip *chip, if (ret) return ret; + ret = regmap_set_bits(regmap, ADP5585_GENERAL_CFG, ADP5585_OSC_EN); + if (ret) + return ret; + return regmap_set_bits(regmap, ADP5585_PWM_CFG, ADP5585_PWM_EN); }
It turns out that OSC_EN bit in GERNERAL_CFG register has to be set to 1 when PWM state is enabled, otherwise PWM signal won't be generated. Fixes: e9b503879fd2 ("pwm: adp5585: Add Analog Devices ADP5585 support") Signed-off-by: Liu Ying <victor.liu@nxp.com> --- drivers/pwm/pwm-adp5585.c | 4 ++++ 1 file changed, 4 insertions(+)