Lines Matching refs:pwm
69 void (*config)(struct pwm_chip *chip, struct pwm_device *pwm,
107 static int atmel_pwm_config(struct pwm_chip *chip, struct pwm_device *pwm, in atmel_pwm_config() argument
117 if (pwm_is_enabled(pwm) && (period_ns != pwm_get_period(pwm))) { in atmel_pwm_config()
149 val = atmel_pwm_ch_readl(atmel_pwm, pwm->hwpwm, PWM_CMR); in atmel_pwm_config()
151 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWM_CMR, val); in atmel_pwm_config()
152 atmel_pwm->config(chip, pwm, dty, prd); in atmel_pwm_config()
155 atmel_pwm->updated_pwms &= ~(1 << pwm->hwpwm); in atmel_pwm_config()
162 static void atmel_pwm_config_v1(struct pwm_chip *chip, struct pwm_device *pwm, in atmel_pwm_config_v1() argument
169 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV1_CUPD, dty); in atmel_pwm_config_v1()
171 val = atmel_pwm_ch_readl(atmel_pwm, pwm->hwpwm, PWM_CMR); in atmel_pwm_config_v1()
173 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWM_CMR, val); in atmel_pwm_config_v1()
179 if (pwm_is_enabled(pwm)) in atmel_pwm_config_v1()
185 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV1_CDTY, dty); in atmel_pwm_config_v1()
186 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV1_CPRD, prd); in atmel_pwm_config_v1()
189 static void atmel_pwm_config_v2(struct pwm_chip *chip, struct pwm_device *pwm, in atmel_pwm_config_v2() argument
194 if (pwm_is_enabled(pwm)) { in atmel_pwm_config_v2()
199 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV2_CDTYUPD, dty); in atmel_pwm_config_v2()
205 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV2_CDTY, dty); in atmel_pwm_config_v2()
206 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWMV2_CPRD, prd); in atmel_pwm_config_v2()
210 static int atmel_pwm_set_polarity(struct pwm_chip *chip, struct pwm_device *pwm, in atmel_pwm_set_polarity() argument
217 val = atmel_pwm_ch_readl(atmel_pwm, pwm->hwpwm, PWM_CMR); in atmel_pwm_set_polarity()
230 atmel_pwm_ch_writel(atmel_pwm, pwm->hwpwm, PWM_CMR, val); in atmel_pwm_set_polarity()
237 static int atmel_pwm_enable(struct pwm_chip *chip, struct pwm_device *pwm) in atmel_pwm_enable() argument
248 atmel_pwm_writel(atmel_pwm, PWM_ENA, 1 << pwm->hwpwm); in atmel_pwm_enable()
253 static void atmel_pwm_disable(struct pwm_chip *chip, struct pwm_device *pwm) in atmel_pwm_disable() argument
265 while (!(atmel_pwm->updated_pwms & (1 << pwm->hwpwm)) && in atmel_pwm_disable()
272 atmel_pwm_writel(atmel_pwm, PWM_DIS, 1 << pwm->hwpwm); in atmel_pwm_disable()
286 void (*config)(struct pwm_chip *chip, struct pwm_device *pwm,