[PATCH v4 2/2] pwm: visconti: Add Toshiba Visconti SoC PWM support

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Sat Apr 17 16:50:09 BST 2021


Hello Nobuhiro,

On Fri, Apr 16, 2021 at 09:15:23PM +0900, Nobuhiro Iwamatsu wrote:
> > > > For me the critical (and only) difference between "off" and
> > > > "duty cycle = 0" is that when a new configuration is to be applied. In
> > > > the "off" state a new period can (and should) start immediately, while
> > > > with "duty_cycle = 0" the rising edge should be delayed until the
> > > > currently running period is over.[1]
> > > > 
> > > > So the thing to do here (IMHO) is:
> > > > 
> > > > Iff with PIPGM_PCSR = 0 configuring a new setting (that is finalized
> > > > with writing a non-zero value to PIPGM_PCSR) completes the currently
> > > > running period, then always assume the PWM as enabled.
> > > 
> > > Yes, this device works that way.
> > 
> > OK, then please use
> > 
> > 	state->enabled = true
> > 
> > unconditionally in visconti_pwm_get_state().
> 
> Please let me check.
> If I unconditionally add 'state->enabled = true' to visconti_pwm_get_state(),
> state->enabled is set to true because visconti_pwm_get_state() is called when
> the device is created (this is when I write the device number to the export of
> /sys/class/pwm/pwmchip0 ).
> And since PIPGM_PCSR is 0 in this state, the pulse by PWM is not output.

A PWM that is currently configured with .enabled = true and .duty_cycle
= 0 doesn't have a pulse, so this is fine.

> However, I think this means that the device is working as this driver.

I don't understand this sentence.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20210417/e397ef11/attachment.sig>


More information about the linux-arm-kernel mailing list