Lines Matching full:prescaler
119 unsigned int prescaler; in sun4i_pwm_get_state() local
141 prescaler = 1; in sun4i_pwm_get_state()
143 prescaler = prescaler_table[PWM_REG_PRESCAL(val, pwm->hwpwm)]; in sun4i_pwm_get_state()
145 if (prescaler == 0) in sun4i_pwm_get_state()
161 tmp = (u64)prescaler * NSEC_PER_SEC * PWM_REG_DTY(val); in sun4i_pwm_get_state()
164 tmp = (u64)prescaler * NSEC_PER_SEC * PWM_REG_PRD(val); in sun4i_pwm_get_state()
174 unsigned int prescaler = 0; in sun4i_pwm_calculate() local
189 /* First, test without any prescaler when available */ in sun4i_pwm_calculate()
190 prescaler = PWM_PRESCAL_MASK; in sun4i_pwm_calculate()
192 * When not using any prescaler, the clock period in nanoseconds in sun4i_pwm_calculate()
199 prescaler = 0; in sun4i_pwm_calculate()
202 if (prescaler == 0) { in sun4i_pwm_calculate()
204 for (prescaler = 0; prescaler < PWM_PRESCAL_MASK; prescaler++) { in sun4i_pwm_calculate()
205 unsigned int pval = prescaler_table[prescaler]; in sun4i_pwm_calculate()
226 *prsclr = prescaler; in sun4i_pwm_calculate()
238 unsigned int delay_us, prescaler = 0; in sun4i_pwm_apply() local
252 ret = sun4i_pwm_calculate(sun4i_pwm, state, &duty, &period, &prescaler, in sun4i_pwm_apply()
276 if (PWM_REG_PRESCAL(ctrl, pwm->hwpwm) != prescaler) { in sun4i_pwm_apply()
277 /* Prescaler changed, the clock has to be gated */ in sun4i_pwm_apply()
282 ctrl |= BIT_CH(prescaler, pwm->hwpwm); in sun4i_pwm_apply()