Home
last modified time | relevance | path

Searched refs:prescale (Results 1 – 25 of 59) sorted by relevance

123

/linux/drivers/iio/adc/
H A Dqcom-vadc-common.c305 const struct u32_fract *prescale,
309 const struct u32_fract *prescale,
313 const struct u32_fract *prescale,
317 const struct u32_fract *prescale,
321 const struct u32_fract *prescale,
325 const struct u32_fract *prescale,
329 const struct u32_fract *prescale,
409 const struct u32_fract *prescale, in qcom_vadc_scale_volt() argument
417 voltage *= prescale->denominator; in qcom_vadc_scale_volt()
418 result = div64_s64(voltage, prescale->numerator); in qcom_vadc_scale_volt()
[all …]
/linux/drivers/pwm/
H A Dpwm-pca9685.c171 u8 prescale; member
179 u8 prescale; in pca9685_round_waveform_tohw() local
186 .prescale = 0, in pca9685_round_waveform_tohw()
191 wfhw->onoff[0], wfhw->onoff[1], wfhw->onoff[2], wfhw->onoff[3], wfhw->prescale); in pca9685_round_waveform_tohw()
218 prescale = current_prescale; in pca9685_round_waveform_tohw()
220 prescale = best_prescale; in pca9685_round_waveform_tohw()
223 period_ns = PCA9685_COUNTER_RANGE * PCA9685_QUANTUM_NS(prescale); in pca9685_round_waveform_tohw()
225 duty = (unsigned)min_t(u64, wf->duty_length_ns, period_ns) / PCA9685_QUANTUM_NS(prescale); in pca9685_round_waveform_tohw()
230 on = (unsigned)min_t(u64, wf->duty_offset_ns, period_ns) / PCA9685_QUANTUM_NS(prescale); in pca9685_round_waveform_tohw()
242 .prescale = prescale, in pca9685_round_waveform_tohw()
[all …]
H A Dpwm-rz-mtu3.c79 u8 prescale[RZ_MTU3_MAX_HW_CHANNELS]; member
116 u8 prescale; in rz_mtu3_pwm_calculate_prescale() local
124 prescale = 3; in rz_mtu3_pwm_calculate_prescale()
126 prescale = (fls(prescaled_period_cycles) + 1) / 2; in rz_mtu3_pwm_calculate_prescale()
128 return prescale; in rz_mtu3_pwm_calculate_prescale()
282 u8 prescale, val; in rz_mtu3_pwm_get_state() local
295 prescale = FIELD_GET(RZ_MTU3_TCR_TPCS, val); in rz_mtu3_pwm_get_state()
298 tmp = NSEC_PER_SEC * (u64)pv << (2 * prescale); in rz_mtu3_pwm_get_state()
300 tmp = NSEC_PER_SEC * (u64)dc << (2 * prescale); in rz_mtu3_pwm_get_state()
313 static u16 rz_mtu3_pwm_calculate_pv_or_dc(u64 period_or_duty_cycle, u8 prescale) in rz_mtu3_pwm_calculate_pv_or_dc() argument
[all …]
H A Dpwm-microchip-core.c132 u8 prescale, u8 period_steps) in mchp_core_pwm_calc_duty() argument
142 tmp = (((u64)prescale) + 1) * NSEC_PER_SEC; in mchp_core_pwm_calc_duty()
183 u16 *prescale, u16 *period_steps) in mchp_core_pwm_calc_period() argument
211 *prescale = MCHPCOREPWM_PRESCALE_MAX; in mchp_core_pwm_calc_period()
255 *prescale = ((u16)tmp) / (MCHPCOREPWM_PERIOD_STEPS_MAX + 1) - 1; in mchp_core_pwm_calc_period()
278 u16 prescale, period_steps; in mchp_core_pwm_apply_locked() local
295 ret = mchp_core_pwm_calc_period(state, clk_rate, &prescale, &period_steps); in mchp_core_pwm_apply_locked()
317 if ((period_steps + 1) * (prescale + 1) < in mchp_core_pwm_apply_locked()
331 prescale = hw_prescale; in mchp_core_pwm_apply_locked()
335 duty_steps = mchp_core_pwm_calc_duty(state, clk_rate, prescale, period_steps); in mchp_core_pwm_apply_locked()
[all …]
H A Dpwm-imx-tpm.c70 u8 prescale; member
93 u32 rate, prescale, period_count, clock_unit; in pwm_imx_tpm_round_state() local
100 prescale = 0; in pwm_imx_tpm_round_state()
102 prescale = ilog2(clock_unit) + 1 - PWM_IMX_TPM_MOD_WIDTH; in pwm_imx_tpm_round_state()
104 if ((!FIELD_FIT(PWM_IMX_TPM_SC_PS, prescale))) in pwm_imx_tpm_round_state()
106 p->prescale = prescale; in pwm_imx_tpm_round_state()
108 period_count = (clock_unit + ((1 << prescale) >> 1)) >> prescale; in pwm_imx_tpm_round_state()
114 tmp = (u64)period_count << prescale; in pwm_imx_tpm_round_state()
142 u32 rate, val, prescale; in pwm_imx_tpm_get_state() local
151 prescale = FIELD_GET(PWM_IMX_TPM_SC_PS, val); in pwm_imx_tpm_get_state()
[all …]
H A Dpwm-rzg2l-gpt.c125 u8 prescale; in rzg2l_gpt_calculate_prescale() local
129 prescale = 5; in rzg2l_gpt_calculate_prescale()
131 prescale = (fls(prescaled_period_ticks) + 1) / 2; in rzg2l_gpt_calculate_prescale()
133 return prescale; in rzg2l_gpt_calculate_prescale()
206 u32 val, u8 prescale) in rzg2l_gpt_calculate_period_or_duty() argument
217 tmp = (u64)val << (2 * prescale); in rzg2l_gpt_calculate_period_or_duty()
232 u8 prescale; in rzg2l_gpt_get_state() local
236 prescale = FIELD_GET(RZG2L_GTCR_TPCS, val); in rzg2l_gpt_get_state()
239 state->period = rzg2l_gpt_calculate_period_or_duty(rzg2l_gpt, val, prescale); in rzg2l_gpt_get_state()
242 state->duty_cycle = rzg2l_gpt_calculate_period_or_duty(rzg2l_gpt, val, prescale); in rzg2l_gpt_get_state()
[all …]
H A Dpwm-sprd.c76 u32 val, duty, prescale; in sprd_pwm_get_state() local
106 prescale = val & SPRD_PWM_PRESCALE_MSK; in sprd_pwm_get_state()
107 tmp = (prescale + 1) * NSEC_PER_SEC * SPRD_PWM_MOD_MAX; in sprd_pwm_get_state()
112 tmp = (prescale + 1) * NSEC_PER_SEC * duty; in sprd_pwm_get_state()
127 u32 prescale, duty; in sprd_pwm_config() local
144 prescale = DIV_ROUND_CLOSEST_ULL(tmp, SPRD_PWM_MOD_MAX) - 1; in sprd_pwm_config()
145 if (prescale > SPRD_PWM_PRESCALE_MSK) in sprd_pwm_config()
146 prescale = SPRD_PWM_PRESCALE_MSK; in sprd_pwm_config()
156 sprd_pwm_write(spc, pwm->hwpwm, SPRD_PWM_PRESCALE, prescale); in sprd_pwm_config()
H A Dpwm-bcm-iproc.c75 u32 value, prescale; in iproc_pwmc_get_state() local
97 prescale = value >> IPROC_PWM_PRESCALE_SHIFT(pwm->hwpwm); in iproc_pwmc_get_state()
98 prescale &= IPROC_PWM_PRESCALE_MAX; in iproc_pwmc_get_state()
100 multi = NSEC_PER_SEC * (prescale + 1); in iproc_pwmc_get_state()
116 unsigned long prescale = IPROC_PWM_PRESCALE_MIN; in iproc_pwmc_apply() local
136 div = NSEC_PER_SEC * (prescale + 1); in iproc_pwmc_apply()
150 if (++prescale > IPROC_PWM_PRESCALE_MAX) in iproc_pwmc_apply()
159 value |= prescale << IPROC_PWM_PRESCALE_SHIFT(pwm->hwpwm); in iproc_pwmc_apply()
H A Dpwm-pxa.c73 unsigned long period_cycles, prescale, pv, dc; in pxa_pwm_config() local
85 prescale = (period_cycles - 1) / 1024; in pxa_pwm_config()
86 pv = period_cycles / (prescale + 1) - 1; in pxa_pwm_config()
88 if (prescale > 63) in pxa_pwm_config()
96 writel(prescale | PWMCR_SD, pc->mmio_base + offset + PWMCR); in pxa_pwm_config()
H A Dpwm-vt8500.c77 unsigned long period_cycles, prescale, pv, dc; in vt8500_pwm_config() local
94 prescale = (period_cycles - 1) / 4096; in vt8500_pwm_config()
95 pv = period_cycles / (prescale + 1) - 1; in vt8500_pwm_config()
99 if (prescale > 1023) { in vt8500_pwm_config()
108 writel(prescale, vt8500->base + REG_SCALAR(pwm->hwpwm)); in vt8500_pwm_config()
H A Dpwm-spear.c80 unsigned long prescale = PWMCR_MIN_PRESCALE, pv, dc; in spear_pwm_config() local
96 div *= 1 + prescale; in spear_pwm_config()
111 if (++prescale > PWMCR_MAX_PRESCALE) in spear_pwm_config()
127 prescale << PWMCR_PRESCALE_SHIFT); in spear_pwm_config()
H A Dpwm-sti.c117 unsigned int *prescale) in sti_pwm_get_prescale() argument
142 *prescale = ps; in sti_pwm_get_prescale()
160 unsigned int ncfg, value, prescale = 0; in sti_pwm_config() local
196 ret = sti_pwm_get_prescale(pc, period_ns, &prescale); in sti_pwm_config()
200 value = prescale & PWM_PRESCALE_LOW_MASK; in sti_pwm_config()
206 value = (prescale & PWM_PRESCALE_HIGH_MASK) >> 4; in sti_pwm_config()
231 prescale, period_ns, duty_ns, value); in sti_pwm_config()
H A Dpwm-imx27.c203 unsigned long period_cycles, duty_cycles, prescale, period_us, tmp; in pwm_imx27_apply() local
218 prescale = period_cycles / 0x10000 + 1; in pwm_imx27_apply()
220 period_cycles /= prescale; in pwm_imx27_apply()
224 duty_cycles /= prescale; in pwm_imx27_apply()
349 cr = MX3_PWMCR_PRESCALER_SET(prescale) | in pwm_imx27_apply()
H A Dpwm-bcm-kona.c105 unsigned long prescale = PRESCALE_MIN, pc, dc; in kona_pwmc_config() local
123 div *= 1 + prescale; in kona_pwmc_config()
136 if (++prescale > PRESCALE_MAX) in kona_pwmc_config()
144 value |= prescale << PRESCALE_SHIFT(chan); in kona_pwmc_config()
/linux/drivers/clocksource/
H A Dingenic-sysost.c96 unsigned int prescale; in ingenic_ost_percpu_timer_recalc_rate() local
98 prescale = readl(ost_clk->ost->base + info->ostccr_reg); in ingenic_ost_percpu_timer_recalc_rate()
100 prescale = FIELD_GET(OSTCCR_PRESCALE1_MASK, prescale); in ingenic_ost_percpu_timer_recalc_rate()
102 return parent_rate >> (prescale * 2); in ingenic_ost_percpu_timer_recalc_rate()
110 unsigned int prescale; in ingenic_ost_global_timer_recalc_rate() local
112 prescale = readl(ost_clk->ost->base + info->ostccr_reg); in ingenic_ost_global_timer_recalc_rate()
114 prescale = FIELD_GET(OSTCCR_PRESCALE2_MASK, prescale); in ingenic_ost_global_timer_recalc_rate()
116 return parent_rate >> (prescale * 2); in ingenic_ost_global_timer_recalc_rate()
121 u8 prescale; in ingenic_ost_get_prescale() local
123 for (prescale = 0; prescale < 2; prescale++) in ingenic_ost_get_prescale()
[all …]
/linux/drivers/clk/ingenic/
H A Dtcu.c159 unsigned int prescale; in ingenic_tcu_recalc_rate() local
162 ret = regmap_read(tcu_clk->tcu->map, info->tcsr_reg, &prescale); in ingenic_tcu_recalc_rate()
165 prescale = (prescale & TCU_TCSR_PRESCALE_MASK) >> TCU_TCSR_PRESCALE_LSB; in ingenic_tcu_recalc_rate()
167 return parent_rate >> (prescale * 2); in ingenic_tcu_recalc_rate()
172 u8 prescale; in ingenic_tcu_get_prescale() local
174 for (prescale = 0; prescale < 5; prescale++) in ingenic_tcu_get_prescale()
175 if ((rate >> (prescale * 2)) <= req_rate) in ingenic_tcu_get_prescale()
176 return prescale; in ingenic_tcu_get_prescale()
185 u8 prescale; in ingenic_tcu_determine_rate() local
192 prescale = ingenic_tcu_get_prescale(rate, req->rate); in ingenic_tcu_determine_rate()
[all …]
/linux/drivers/watchdog/
H A Drealtek_otto_wdt.c107 static int otto_wdt_tick_ms(struct otto_wdt_ctrl *ctrl, int prescale) in otto_wdt_tick_ms() argument
109 return DIV_ROUND_CLOSEST(1 << (25 + prescale), ctrl->clk_rate_khz); in otto_wdt_tick_ms()
133 unsigned int prescale; in otto_wdt_determine_timeouts() local
138 prescale = prescale_next; in otto_wdt_determine_timeouts()
139 if (prescale > OTTO_WDT_PRESCALE_MAX) in otto_wdt_determine_timeouts()
142 tick_ms = otto_wdt_tick_ms(ctrl, prescale); in otto_wdt_determine_timeouts()
156 v |= FIELD_PREP(OTTO_WDT_CTRL_PRESCALE, prescale); in otto_wdt_determine_timeouts()
/linux/drivers/i2c/busses/
H A Di2c-kempld.c226 long prescale; in kempld_i2c_device_init() local
240 prescale = pld->pld_clock / (bus_frequency * 5) - 1000; in kempld_i2c_device_init()
242 prescale = pld->pld_clock / (bus_frequency * 4) - 3000; in kempld_i2c_device_init()
244 if (prescale < 0) in kempld_i2c_device_init()
245 prescale = 0; in kempld_i2c_device_init()
248 prescale_corr = prescale / 1000; in kempld_i2c_device_init()
249 if (prescale % 1000 >= 500) in kempld_i2c_device_init()
/linux/arch/powerpc/platforms/52xx/
H A Dmpc52xx_gpt.c390 u32 prescale; in mpc52xx_gpt_do_start() local
424 prescale = (clocks >> 16) + 1; in mpc52xx_gpt_do_start()
425 do_div(clocks, prescale); in mpc52xx_gpt_do_start()
428 prescale, clocks); in mpc52xx_gpt_do_start()
440 out_be32(&gpt->regs->count, prescale << 16 | clocks); in mpc52xx_gpt_do_start()
494 u64 prescale; in mpc52xx_gpt_timer_period() local
501 prescale = period >> 16; in mpc52xx_gpt_timer_period()
503 if (prescale == 0) in mpc52xx_gpt_timer_period()
504 prescale = 0x10000; in mpc52xx_gpt_timer_period()
505 period = period * prescale * 1000000000ULL; in mpc52xx_gpt_timer_period()
/linux/drivers/gpu/drm/radeon/
H A Dradeon_i2c.c234 u32 prescale = 0; in radeon_get_i2c_prescale() local
260 prescale = m | (n << 8); in radeon_get_i2c_prescale()
268 prescale = (((sclk * 10)/(4 * 128 * 100) + 1) << 8) + 128; in radeon_get_i2c_prescale()
283 prescale = (127 << 8) + ((sclk * 10) / (4 * 127 * i2c_clock)); in radeon_get_i2c_prescale()
285 prescale = (((sclk * 10)/(4 * 128 * 100) + 1) << 8) + 128; in radeon_get_i2c_prescale()
314 return prescale; in radeon_get_i2c_prescale()
329 u32 prescale; in r100_hw_i2c_xfer() local
337 prescale = radeon_get_i2c_prescale(rdev); in r100_hw_i2c_xfer()
339 reg = ((prescale << RADEON_I2C_PRESCALE_SHIFT) | in r100_hw_i2c_xfer()
582 u32 prescale; in r500_hw_i2c_xfer() local
[all …]
/linux/drivers/media/i2c/
H A Dsaa717x.c807 int task, int prescale) in set_h_prescale() argument
833 if (vals[i].xpsc == prescale) in set_h_prescale()
987 int prescale, h_scale, v_scale; in saa717x_set_fmt() local
1008 prescale = SAA717X_NTSC_WIDTH / fmt->width; in saa717x_set_fmt()
1009 if (prescale == 0) in saa717x_set_fmt()
1010 prescale = 1; in saa717x_set_fmt()
1011 h_scale = 1024 * SAA717X_NTSC_WIDTH / prescale / fmt->width; in saa717x_set_fmt()
1016 set_h_prescale(sd, 0, prescale); in saa717x_set_fmt()
1017 set_h_prescale(sd, 1, prescale); in saa717x_set_fmt()
/linux/drivers/comedi/drivers/
H A Ddt3000.c344 unsigned int divider, base, prescale; in dt3k_ns_to_timer() local
349 for (prescale = 0; prescale < 16; prescale++) { in dt3k_ns_to_timer()
350 base = timer_base * (prescale + 1); in dt3k_ns_to_timer()
365 return (prescale << 16) | (divider); in dt3k_ns_to_timer()
369 prescale = 15; in dt3k_ns_to_timer()
370 base = timer_base * (prescale + 1); in dt3k_ns_to_timer()
373 return (prescale << 16) | (divider); in dt3k_ns_to_timer()
/linux/drivers/spi/
H A Dspi-fsl-lpspi.c97 u8 prescale; member
293 temp |= fsl_lpspi->config.prescale << 27; in fsl_lpspi_set_cmd()
339 u8 prescale; in fsl_lpspi_set_bitrate() local
357 for (prescale = 0; prescale <= prescale_max; prescale++) { in fsl_lpspi_set_bitrate()
358 scldiv = div / (1 << prescale) - 2; in fsl_lpspi_set_bitrate()
360 fsl_lpspi->config.prescale = prescale; in fsl_lpspi_set_bitrate()
372 (1 << prescale); in fsl_lpspi_set_bitrate()
375 perclk_rate, config.speed_hz, prescale, scldiv); in fsl_lpspi_set_bitrate()
/linux/drivers/media/pci/cobalt/
H A Dcobalt-i2c.c309 int prescale; in cobalt_i2c_init() local
315 prescale = ((ALT_CPU_FREQ) / (5 * I2C_FREQUENCY)) - 1; in cobalt_i2c_init()
344 iowrite8(prescale & 0xff, &regs->prerlo); in cobalt_i2c_init()
345 iowrite8((prescale >> 8) & 0xff, &regs->prerhi); in cobalt_i2c_init()
/linux/drivers/video/fbdev/
H A Datafb.c895 int prescale; in falcon_decode_var() local
1198 prescale = hxx_prescale(&par->hw.falcon); in falcon_decode_var()
1208 hdb_off = (base_off + 16 * plen) + prescale; in falcon_decode_var()
1213 hdb_off = (64 + base_off + (128 / bpp + 2) * plen) + prescale; in falcon_decode_var()
1215 hdb_off = (base_off + (128 / bpp + 18) * plen) + prescale; in falcon_decode_var()
1218 gstart = (prescale / 2 + plen * left_margin) / prescale; in falcon_decode_var()
1220 gend1 = gstart + roundup(xres, align) * plen / prescale; in falcon_decode_var()
1222 gend2 = gstart + xres * plen / prescale; in falcon_decode_var()
1224 (2 * prescale) - 2; in falcon_decode_var()
1227 par->HDB = gstart - hdb_off / prescale; in falcon_decode_var()
[all …]

123