Lines Matching refs:period_ns
98 unsigned int period_ns;
136 * when duty_ns == period_ns. LPC18xx SCT allows to set a conflict
147 static void lpc18xx_pwm_config_period(struct pwm_chip *chip, u64 period_ns)
154 * With period_ns < max_period_ns this also fits into an u32.
155 * As period_ns >= min_period_ns = DIV_ROUND_UP(NSEC_PER_SEC, lpc18xx_pwm->clk_rate);
158 val = mul_u64_u64_div_u64(period_ns, lpc18xx_pwm->clk_rate, NSEC_PER_SEC);
178 * With duty_ns <= period_ns < max_period_ns this also fits into an u32.
192 int duty_ns, int period_ns)
197 if (period_ns < lpc18xx_pwm->min_period_ns ||
198 period_ns > lpc18xx_pwm->max_period_ns) {
199 dev_err(pwmchip_parent(chip), "period %d not in range\n", period_ns);
213 if (requested_events > 2 && lpc18xx_pwm->period_ns != period_ns &&
214 lpc18xx_pwm->period_ns) {
221 if ((requested_events <= 2 && lpc18xx_pwm->period_ns != period_ns) ||
222 !lpc18xx_pwm->period_ns) {
223 lpc18xx_pwm->period_ns = period_ns;
224 lpc18xx_pwm_config_period(chip, period_ns);