Re: [PATCH v7 2/2] pwm: sophgo: add pwm support for Sophgo CV1800 SoC

From: Thomas Bonnefille
Date: Sat Apr 05 2025 - 20:17:07 EST


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.

Thank you for this series !
Thomas