Hi Uwe,
On Sat, Jan 5, 2019 at 4:42 PM, Uwe Kleine-König
<u.kleine-koenig@xxxxxxxxxxxxxx> wrote:
On Thu, Dec 27, 2018 at 07:13:04PM +0100, Paul Cercueil wrote:
The ingenic-timer "TCU" driver provides us with a regmap, that we
can
use to safely access the TCU registers.
While this driver is devicetree-compatible, it is never (as of now)
probed from devicetree, so this change does not introduce a ABI
problem
with current devicetree files.
Does it change behaviour? If so, how?
No, it does not change the behaviour.
@@ -113,26 +117,37 @@ static int jz4740_pwm_apply(struct pwm_chip
*chip, struct pwm_device *pwm,
jz4740_pwm_disable(chip, pwm);
- jz4740_timer_set_count(pwm->hwpwm, 0);
- jz4740_timer_set_duty(pwm->hwpwm, duty);
- jz4740_timer_set_period(pwm->hwpwm, period);
+ /* Set abrupt shutdown */
+ regmap_update_bits(jz4740->map, TCU_REG_TCSRc(pwm->hwpwm),
+ TCU_TCSR_PWM_SD, TCU_TCSR_PWM_SD);
I think I already pointed that out before: abrupt mode is wrong. If
.apply is called with a new set of parameters the currently running
period with the old values is expected to complete before the new
values
take effect.
You pointed it, indeed; but I won't change it until I can verify that
the
behaviour is correct (which does not seem to be the case even if I leave
this bit cleared). Besides, this is the TCU patchset, fixes and patches
unrelated to the TCU don't belong here.
Best regards
Uwe
Kind regards,
-Paul