/drivers/pwm/ |
D | pwm-lpc18xx-sct.c | 99 unsigned int period_ns; member 148 static void lpc18xx_pwm_config_period(struct pwm_chip *chip, u64 period_ns) in lpc18xx_pwm_config_period() argument 159 val = mul_u64_u64_div_u64(period_ns, lpc18xx_pwm->clk_rate, NSEC_PER_SEC); in lpc18xx_pwm_config_period() 193 int duty_ns, int period_ns) in lpc18xx_pwm_config() argument 198 if (period_ns < lpc18xx_pwm->min_period_ns || in lpc18xx_pwm_config() 199 period_ns > lpc18xx_pwm->max_period_ns) { in lpc18xx_pwm_config() 200 dev_err(chip->dev, "period %d not in range\n", period_ns); in lpc18xx_pwm_config() 214 if (requested_events > 2 && lpc18xx_pwm->period_ns != period_ns && in lpc18xx_pwm_config() 215 lpc18xx_pwm->period_ns) { in lpc18xx_pwm_config() 222 if ((requested_events <= 2 && lpc18xx_pwm->period_ns != period_ns) || in lpc18xx_pwm_config() [all …]
|
D | pwm-samsung.c | 65 u32 period_ns; member 304 int duty_ns, int period_ns, bool force_period) in __pwm_samsung_config() argument 315 if (period_ns > NSEC_PER_SEC) in __pwm_samsung_config() 325 if (chan->period_ns != period_ns || force_period) { in __pwm_samsung_config() 329 period = NSEC_PER_SEC / period_ns; in __pwm_samsung_config() 332 duty_ns, period_ns, period); in __pwm_samsung_config() 339 tcnt = period_ns / tin_ns; in __pwm_samsung_config() 377 chan->period_ns = period_ns; in __pwm_samsung_config() 385 int duty_ns, int period_ns) in pwm_samsung_config() argument 387 return __pwm_samsung_config(chip, pwm, duty_ns, period_ns, false); in pwm_samsung_config() [all …]
|
D | pwm-lp3943.c | 96 int duty_ns, int period_ns) in lp3943_pwm_config() argument 121 period_ns = clamp(period_ns, LP3943_MIN_PERIOD, LP3943_MAX_PERIOD); in lp3943_pwm_config() 122 val = (u8)(period_ns / LP3943_MIN_PERIOD - 1); in lp3943_pwm_config() 128 duty_ns = min(duty_ns, period_ns); in lp3943_pwm_config() 129 val = (u8)(duty_ns * LP3943_MAX_DUTY / period_ns); in lp3943_pwm_config()
|
D | pwm-lpc32xx.c | 30 int duty_ns, int period_ns) in lpc32xx_pwm_config() argument 39 period_cycles = div64_u64(c * period_ns, in lpc32xx_pwm_config() 47 duty_cycles = div64_u64((unsigned long long)(period_ns - duty_ns) * 256, in lpc32xx_pwm_config() 48 period_ns); in lpc32xx_pwm_config()
|
D | pwm-tegra.c | 96 int duty_ns, int period_ns) in tegra_pwm_config() argument 110 c = DIV_ROUND_CLOSEST_ULL(c, period_ns); in tegra_pwm_config() 117 if (period_ns < pc->min_period_ns) in tegra_pwm_config() 146 period_ns); in tegra_pwm_config() 159 hz = DIV_ROUND_CLOSEST_ULL(100ULL * NSEC_PER_SEC, period_ns); in tegra_pwm_config()
|
D | pwm-omap-dmtimer.c | 153 int duty_ns, int period_ns) in pwm_omap_dmtimer_config() argument 162 duty_ns, period_ns); in pwm_omap_dmtimer_config() 165 period_ns == pwm_get_period(pwm)) in pwm_omap_dmtimer_config() 198 period_cycles = pwm_omap_dmtimer_get_clock_cycles(clk_rate, period_ns); in pwm_omap_dmtimer_config() 204 period_ns, clk_rate); in pwm_omap_dmtimer_config() 217 duty_ns, period_ns, clk_rate); in pwm_omap_dmtimer_config()
|
D | pwm-pxa.c | 61 int duty_ns, int period_ns) in pxa_pwm_config() argument 72 c = c * period_ns; in pxa_pwm_config() 84 if (duty_ns == period_ns) in pxa_pwm_config() 87 dc = (pv + 1) * duty_ns / period_ns; in pxa_pwm_config()
|
D | pwm-fsl-ftm.c | 133 unsigned int period_ns, in fsl_pwm_calculate_period_clk() argument 142 c = c * period_ns; in fsl_pwm_calculate_period_clk() 160 unsigned int period_ns, in fsl_pwm_calculate_period() argument 167 ret = fsl_pwm_calculate_period_clk(fpc, period_ns, FSL_PWM_CLK_SYS, in fsl_pwm_calculate_period() 183 ret = fsl_pwm_calculate_period_clk(fpc, period_ns, m0, periodcfg); in fsl_pwm_calculate_period() 187 return fsl_pwm_calculate_period_clk(fpc, period_ns, m1, periodcfg); in fsl_pwm_calculate_period() 196 unsigned int period_ns = fsl_pwm_ticks_to_ns(fpc, period); in fsl_pwm_calculate_duty() local 199 do_div(duty, period_ns); in fsl_pwm_calculate_duty()
|
D | pwm-rcar.c | 73 static int rcar_pwm_get_clock_division(struct rcar_pwm_chip *rp, int period_ns) in rcar_pwm_get_clock_division() argument 82 tmp = (u64)period_ns * clk_rate + div - 1; in rcar_pwm_get_clock_division() 107 int period_ns) in rcar_pwm_set_counter() argument 116 tmp = period_ns * 100ULL; in rcar_pwm_set_counter()
|
D | pwm-stmpe.c | 100 int duty_ns, int period_ns) in stmpe_24xx_pwm_config() argument 153 pwm->hwpwm, duty_ns, period_ns); in stmpe_24xx_pwm_config() 163 } else if (duty_ns == period_ns) { in stmpe_24xx_pwm_config() 187 duty = DIV_ROUND_CLOSEST(duty, period_ns); in stmpe_24xx_pwm_config()
|
D | pwm-img.c | 93 int duty_ns, int period_ns) in img_pwm_config() argument 101 if (period_ns < pwm_chip->min_period_ns || in img_pwm_config() 102 period_ns > pwm_chip->max_period_ns) { in img_pwm_config() 108 output_clk_hz = DIV_ROUND_UP(NSEC_PER_SEC, period_ns); in img_pwm_config() 129 duty = DIV_ROUND_UP(timebase * duty_ns, period_ns); in img_pwm_config()
|
D | pwm-twl-led.c | 59 int duty_ns, int period_ns) in twl4030_pwmled_config() argument 61 int duty_cycle = DIV_ROUND_UP(duty_ns * TWL4030_LED_MAX, period_ns) + 1; in twl4030_pwmled_config() 141 int duty_ns, int period_ns) in twl6030_pwmled_config() argument 143 int duty_cycle = (duty_ns * TWL6030_LED_MAX) / period_ns; in twl6030_pwmled_config()
|
D | pwm-mediatek.c | 118 int duty_ns, int period_ns) in pwm_mediatek_config() argument 139 cnt_period = DIV_ROUND_CLOSEST_ULL((u64)period_ns * 1000, resolution); in pwm_mediatek_config() 143 cnt_period = DIV_ROUND_CLOSEST_ULL((u64)period_ns * 1000, in pwm_mediatek_config() 149 dev_err(chip->dev, "period %d not supported\n", period_ns); in pwm_mediatek_config()
|
D | pwm-brcmstb.c | 98 int duty_ns, int period_ns) in brcmstb_pwm_config() argument 110 if (duty_ns == period_ns) { in brcmstb_pwm_config() 126 tmp = period_ns * rate; in brcmstb_pwm_config()
|
D | pwm-lpss.c | 88 int duty_ns, int period_ns) in pwm_lpss_prepare() argument 95 do_div(freq, period_ns); in pwm_lpss_prepare() 109 do_div(on_time_div, period_ns); in pwm_lpss_prepare()
|
D | pwm-sti.c | 165 int duty_ns, int period_ns) in sti_pwm_config() argument 177 period_same = (period_ns == pwm_get_period(cur)); in sti_pwm_config() 205 ret = sti_pwm_get_prescale(pc, period_ns, &prescale); in sti_pwm_config() 228 value = cdata->max_pwm_cnt * duty_ns / period_ns; in sti_pwm_config() 240 prescale, period_ns, duty_ns, value); in sti_pwm_config()
|
D | pwm-sprd.c | 120 int duty_ns, int period_ns) in sprd_pwm_config() argument 136 duty = duty_ns * SPRD_PWM_MOD_MAX / period_ns; in sprd_pwm_config() 138 tmp = (u64)chn->clk_rate * period_ns; in sprd_pwm_config()
|
D | pwm-vt8500.c | 73 int duty_ns, int period_ns) in vt8500_pwm_config() argument 88 c = c * period_ns; in vt8500_pwm_config() 105 do_div(c, period_ns); in vt8500_pwm_config()
|
D | pwm-hibvt.c | 100 int duty_cycle_ns, int period_ns) in hibvt_pwm_config() argument 107 period = div_u64(freq * period_ns, 1000); in hibvt_pwm_config() 108 duty = div_u64(period * duty_cycle_ns, period_ns); in hibvt_pwm_config()
|
D | pwm-imx1.c | 64 struct pwm_device *pwm, int duty_ns, int period_ns) in pwm_imx1_config() argument 87 p = max * duty_ns / period_ns; in pwm_imx1_config()
|
D | pwm-berlin.c | 91 u64 duty_ns, u64 period_ns) in berlin_pwm_config() argument 99 cycles *= period_ns; in berlin_pwm_config() 112 do_div(cycles, period_ns); in berlin_pwm_config()
|
/drivers/gpu/drm/i915/ |
D | i915_pmu.c | 293 static void engine_sample(struct intel_engine_cs *engine, unsigned int period_ns) in engine_sample() argument 304 add_sample(&pmu->sample[I915_SAMPLE_WAIT], period_ns); in engine_sample() 306 add_sample(&pmu->sample[I915_SAMPLE_SEMA], period_ns); in engine_sample() 325 add_sample(&pmu->sample[I915_SAMPLE_BUSY], period_ns); in engine_sample() 329 engines_sample(struct intel_gt *gt, unsigned int period_ns) in engines_sample() argument 348 engine_sample(engine, period_ns); in engines_sample() 351 engine_sample(engine, period_ns); in engines_sample() 372 frequency_sample(struct intel_gt *gt, unsigned int period_ns) in frequency_sample() argument 405 intel_gpu_freq(rps, val), period_ns / 1000); in frequency_sample() 411 period_ns / 1000); in frequency_sample() [all …]
|
/drivers/gpu/drm/vkms/ |
D | vkms_crtc.c | 24 output->period_ns); in vkms_vblank_simulate() 73 out->period_ns = ktime_set(0, vblank->framedur_ns); in vkms_enable_vblank() 74 hrtimer_start(&out->vblank_hrtimer, out->period_ns, HRTIMER_MODE_REL); in vkms_enable_vblank() 113 *vblank_time -= output->period_ns; in vkms_get_vblank_timestamp()
|
/drivers/mtd/nand/raw/ |
D | pl35x-nand-controller.c | 101 #define TO_CYCLES(ps, period_ns) (DIV_ROUND_UP((ps) / 1000, period_ns)) argument 793 unsigned int period_ns, val; in pl35x_nfc_setup_interface() local 811 period_ns = NSEC_PER_SEC / clk_get_rate(mclk); in pl35x_nfc_setup_interface() 817 val = TO_CYCLES(sdr->tRC_min, period_ns); in pl35x_nfc_setup_interface() 825 val = TO_CYCLES(sdr->tWC_min, period_ns); in pl35x_nfc_setup_interface() 836 val = TO_CYCLES(sdr->tWP_min, period_ns); in pl35x_nfc_setup_interface() 841 val = TO_CYCLES(sdr->tCLR_min, period_ns); in pl35x_nfc_setup_interface() 846 val = TO_CYCLES(sdr->tAR_min, period_ns); in pl35x_nfc_setup_interface() 851 val = TO_CYCLES(sdr->tRR_min, period_ns); in pl35x_nfc_setup_interface()
|
/drivers/net/ethernet/renesas/ |
D | ravb_ptp.c | 232 u64 period_ns; in ravb_ptp_perout() local 235 period_ns = req->period.sec * NSEC_PER_SEC + req->period.nsec; in ravb_ptp_perout() 243 if (period_ns > U32_MAX) { in ravb_ptp_perout() 253 perout->period = (u32)period_ns; in ravb_ptp_perout()
|