| /linux/drivers/iio/adc/ |
| H A D | qcom-vadc-common.c | 305 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 …]
|
| H A D | qcom-spmi-adc5-gen3.c | 377 ret = qcom_adc5_hw_scale(prop->scale_fn_type, prop->prescale, in adc5_gen3_read_raw() 507 prop->common_props.prescale = adc->data->adc_chans[chan].prescale_index; in adc5_gen3_get_fw_channel_data() 515 prop->common_props.prescale = ret; in adc5_gen3_get_fw_channel_data() 725 common_props->prescale, in adc5_gen3_get_scaled_reading() 738 common_props->prescale, in adc5_gen3_therm_code_to_temp()
|
| H A D | qcom-pm8xxx-xoadc.c | 177 const struct u32_fract prescale; member 220 .prescale = { \ 664 &ch->hwchan->prescale, in pm8xxx_read_raw() 820 ch->amux_ip_rsv, ch->decimation, hwchan->prescale.numerator, in pm8xxx_xoadc_parse_channel() 821 hwchan->prescale.denominator, hwchan->scale_fn_type); in pm8xxx_xoadc_parse_channel()
|
| /linux/drivers/pwm/ |
| H A D | pwm-rz-mtu3.c | 79 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 D | pwm-microchip-core.c | 132 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 D | pwm-rzg2l-gpt.c | 124 u8 prescale; in rzg2l_gpt_calculate_prescale() local 128 prescale = 5; in rzg2l_gpt_calculate_prescale() 130 prescale = (fls(prescaled_period_ticks) + 1) / 2; in rzg2l_gpt_calculate_prescale() 132 return prescale; in rzg2l_gpt_calculate_prescale() 205 u32 val, u8 prescale) in rzg2l_gpt_calculate_period_or_duty() argument 216 tmp = (u64)val << (2 * prescale); in rzg2l_gpt_calculate_period_or_duty() 231 u8 prescale; in rzg2l_gpt_get_state() local 235 prescale = FIELD_GET(RZG2L_GTCR_TPCS, val); in rzg2l_gpt_get_state() 238 state->period = rzg2l_gpt_calculate_period_or_duty(rzg2l_gpt, val, prescale); in rzg2l_gpt_get_state() 241 state->duty_cycle = rzg2l_gpt_calculate_period_or_duty(rzg2l_gpt, val, prescale); in rzg2l_gpt_get_state() [all …]
|
| H A D | pwm-sprd.c | 75 u32 val, duty, prescale; in sprd_pwm_get_state() local 105 prescale = val & SPRD_PWM_PRESCALE_MSK; in sprd_pwm_get_state() 106 tmp = (prescale + 1) * NSEC_PER_SEC * SPRD_PWM_MOD_MAX; in sprd_pwm_get_state() 111 tmp = (prescale + 1) * NSEC_PER_SEC * duty; in sprd_pwm_get_state() 126 u32 prescale, duty; in sprd_pwm_config() local 143 prescale = DIV_ROUND_CLOSEST_ULL(tmp, SPRD_PWM_MOD_MAX) - 1; in sprd_pwm_config() 144 if (prescale > SPRD_PWM_PRESCALE_MSK) in sprd_pwm_config() 145 prescale = SPRD_PWM_PRESCALE_MSK; in sprd_pwm_config() 155 sprd_pwm_write(spc, pwm->hwpwm, SPRD_PWM_PRESCALE, prescale); in sprd_pwm_config()
|
| H A D | pwm-pxa.c | 72 unsigned long period_cycles, prescale, pv, dc; in pxa_pwm_config() local 84 prescale = (period_cycles - 1) / 1024; in pxa_pwm_config() 85 pv = period_cycles / (prescale + 1) - 1; in pxa_pwm_config() 87 if (prescale > 63) in pxa_pwm_config() 95 writel(prescale | PWMCR_SD, pc->mmio_base + offset + PWMCR); in pxa_pwm_config()
|
| H A D | pwm-vt8500.c | 76 unsigned long period_cycles, prescale, pv, dc; in vt8500_pwm_config() local 93 prescale = (period_cycles - 1) / 4096; in vt8500_pwm_config() 94 pv = period_cycles / (prescale + 1) - 1; in vt8500_pwm_config() 98 if (prescale > 1023) { in vt8500_pwm_config() 107 writel(prescale, vt8500->base + REG_SCALAR(pwm->hwpwm)); in vt8500_pwm_config()
|
| H A D | pwm-spear.c | 80 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()
|
| /linux/drivers/clocksource/ |
| H A D | ingenic-sysost.c | 96 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 D | tcu.c | 159 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 D | realtek_otto_wdt.c | 99 static int otto_wdt_tick_ms(struct otto_wdt_ctrl *ctrl, int prescale) in otto_wdt_tick_ms() argument 101 return DIV_ROUND_CLOSEST(1 << (25 + prescale), ctrl->clk_rate_khz); in otto_wdt_tick_ms() 119 unsigned int prescale; in otto_wdt_determine_timeouts() local 124 prescale = prescale_next; in otto_wdt_determine_timeouts() 125 if (prescale > OTTO_WDT_PRESCALE_MAX) in otto_wdt_determine_timeouts() 128 tick_ms = otto_wdt_tick_ms(ctrl, prescale); in otto_wdt_determine_timeouts() 140 val |= FIELD_PREP(OTTO_WDT_CTRL_PRESCALE, prescale); in otto_wdt_determine_timeouts()
|
| /linux/drivers/gpu/drm/radeon/ |
| H A D | radeon_i2c.c | 234 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/pci/cobalt/ |
| H A D | cobalt-i2c.c | 309 int prescale; in cobalt_i2c_init() local 315 prescale = ((ALT_CPU_FREQ) / (5 * I2C_FREQUENCY)) - 1; in cobalt_i2c_init() 344 iowrite8(prescale & 0xff, ®s->prerlo); in cobalt_i2c_init() 345 iowrite8((prescale >> 8) & 0xff, ®s->prerhi); in cobalt_i2c_init()
|
| /linux/include/linux/iio/adc/ |
| H A D | qcom-vadc-common.h | 139 const struct u32_fract *prescale, 144 int (*scale_fn)(const struct u32_fract *prescale,
|
| /linux/Documentation/devicetree/bindings/display/ |
| H A D | cirrus,clps711x-fb.txt | 12 - ac-prescale : LCD AC bias frequency. This frequency is the required 31 ac-prescale = <17>;
|
| /linux/drivers/media/pci/cx88/ |
| H A D | cx88-core.c | 754 static int set_pll(struct cx88_core *core, int prescale, u32 ofreq) in set_pll() argument 761 if (prescale < 2) in set_pll() 762 prescale = 2; in set_pll() 763 if (prescale > 5) in set_pll() 764 prescale = 5; in set_pll() 766 pll = ofreq * 8 * prescale * (u64)(1 << 20); in set_pll() 768 reg = (pll & 0x3ffffff) | (pre[prescale] << 26); in set_pll() 781 prescale, ofreq); in set_pll() 787 dprintk(1, "pll NOT locked [pre=%d,ofreq=%d]\n", prescale, ofreq); in set_pll()
|
| /linux/drivers/i2c/busses/ |
| H A D | i2c-ocores.c | 405 int prescale; in ocores_init() local 413 prescale = (i2c->ip_clock_khz / (5 * i2c->bus_clock_khz)) - 1; in ocores_init() 414 prescale = clamp(prescale, 0, 0xffff); in ocores_init() 416 diff = i2c->ip_clock_khz / (5 * (prescale + 1)) - i2c->bus_clock_khz; in ocores_init() 424 oc_setreg(i2c, OCI2C_PRELOW, prescale & 0xff); in ocores_init() 425 oc_setreg(i2c, OCI2C_PREHIGH, prescale >> 8); in ocores_init()
|
| H A D | i2c-xlp9xx.c | 306 u32 prescale; in xlp9xx_i2c_init() local 312 prescale = DIV_ROUND_UP(priv->ip_clk_hz, priv->clk_hz); in xlp9xx_i2c_init() 313 prescale = ((prescale - 8) / 5) - 1; in xlp9xx_i2c_init() 317 xlp9xx_write_i2c_reg(priv, XLP9XX_I2C_DIV, prescale); in xlp9xx_i2c_init()
|
| H A D | i2c-axxia.c | 185 u32 prescale; in axxia_i2c_init() local 231 for (prescale = 0; prescale < 15; ++prescale) { in axxia_i2c_init() 240 writel(prescale, idev->base + TIMER_CLOCK_DIV); in axxia_i2c_init()
|
| H A D | i2c-img-scb.c | 1152 unsigned int i, data, prescale, inc, int_bitrate, filt; in img_i2c_init() local 1195 prescale = SCB_OPT_INC * clk_khz / (256 * 16 * bitrate_khz); in img_i2c_init() 1196 prescale = clamp_t(unsigned int, prescale, 1, 8); in img_i2c_init() 1197 clk_khz /= prescale; in img_i2c_init() 1227 data = filt | ((inc & SCB_INC_MASK) << SCB_INC_SHIFT) | (prescale - 1); in img_i2c_init()
|
| /linux/drivers/comedi/drivers/ |
| H A D | dt282x.c | 366 unsigned int prescale, base, divider; in dt282x_ns_to_timer() local 368 for (prescale = 0; prescale <= DT2821_PRESCALE_MAX; prescale++) { in dt282x_ns_to_timer() 369 if (prescale == 1) /* 0 and 1 are both divide by 1 */ in dt282x_ns_to_timer() 371 base = DT2821_OSC_BASE * DT2821_PRESCALE(prescale); in dt282x_ns_to_timer() 388 prescale = DT2821_PRESCALE_MAX; in dt282x_ns_to_timer() 390 base = DT2821_OSC_BASE * DT2821_PRESCALE(prescale); in dt282x_ns_to_timer() 393 return DT2821_TMRCTR_PRESCALE(prescale) | in dt282x_ns_to_timer()
|
| /linux/drivers/input/keyboard/ |
| H A D | ep93xx_keypad.c | 64 u16 prescale; member 135 val |= (keypad->prescale << KEY_INIT_PRSCL_SHIFT) & KEY_INIT_PRSCL_MASK; in ep93xx_keypad_config() 226 device_property_read_u16(dev, "cirrus,prescale", &keypad->prescale); in ep93xx_keypad_probe()
|
| /linux/sound/soc/codecs/ |
| H A D | wm8580.c | 373 u32 prescale:1; member 431 pll_div->prescale = 1; in pll_factors() 434 pll_div->prescale = 0; in pll_factors() 453 pll_div->n, pll_div->k, pll_div->prescale, pll_div->freqmode, in pll_factors() 515 reg |= pll_div.prescale | pll_div.postscale << 1 | in wm8580_set_dai_pll()
|