Re: [PATCH v7 2/2] pwm: sophgo: add pwm support for Sophgo CV1800 SoC
From: Jingbao Qiu
Date: Mon Apr 07 2025 - 01:39:26 EST
On Sun, Apr 6, 2025 at 8:16 AM Thomas Bonnefille
<thomas.bonnefille@xxxxxxxxxxx> wrote:
>
> Hello,
>
> On Sat Jun 1, 2024 at 1:53 PM CEST, Uwe Kleine-König wrote:
> > On Wed, May 01, 2024 at 04:32:42PM +0800, Jingbao Qiu wrote:
> >> [...]
> >> + if ((state & BIT(pwm->hwpwm)) && enable)
> >> + regmap_update_bits(priv->map, PWM_CV1800_OE,
> >> + PWM_CV1800_OE_MASK(pwm->hwpwm),
> >> + PWM_CV1800_REG_ENABLE(pwm->hwpwm));
> >
> > This looks strange. If BIT(hwpwm) is already set, set it again?!
> > Also if you used the caching implemented in regmap, you don't need to
> > make this conditional.
> >
>
> I was testing the series and noticed indeed an issue in this driver at
> those lines. If PWM_CV1800_OE isn't set by something else than the
> kernel it will never be set and so, there will never be a PWM outputted.
>
> Using :
> if (!(state & BIT(pwm->hwpwm)) && enable)
> Solved the issue but as Uwe said you can probably rely on regmap caching
> to avoid this condition.
>
> >
> > ...
> >
>
> Do you plan on sending a new iteration some day ? I may have some time
> to continue the upstreaming process if you need to.
>
I am so happy you can continue finish this patch.
Best regards
Jingbao Qiu