arch/risc-v/src/mpfs/mpfs_corepwm.c: Disable PWM channels in setup

Set frequency to zero and disable channels in pwm_setup()
to avoid unexpected behaviour when starting PWM.

Signed-off-by: Jani Paalijarvi <jani.paalijarvi@unikie.com>
This commit is contained in:
Jani Paalijarvi
2024-09-04 10:08:51 +03:00
committed by Xiang Xiao
parent 7e6e18697c
commit 3613eb209a
+7
View File
@@ -557,6 +557,13 @@ static int pwm_setup(struct pwm_lowerhalf_s *dev)
struct mpfs_pwmtimer_s *priv = (struct mpfs_pwmtimer_s *)dev;
pwminfo("PWMID%u\n", priv->pwmid);
/* Make sure that frequency is zero and channels has been disabled */
priv->frequency = 0;
pwm_putreg(priv, MPFS_COREPWM_PWM_ENABLE_0_7_OFFSET, 0x00);
pwm_putreg(priv, MPFS_COREPWM_PWM_ENABLE_8_15_OFFSET, 0x00);
pwm_dumpregs(priv, "Initially");
return OK;