/linux/arch/x86/include/asm/ |
H A D | div64.h | 87 static inline u64 mul_u64_u64_div_u64(u64 a, u64 mul, u64 div) in mul_u64_u64_div_u64() function 97 #define mul_u64_u64_div_u64 mul_u64_u64_div_u64 macro 101 return mul_u64_u64_div_u64(a, mul, div); in mul_u64_u32_div()
|
/linux/lib/math/ |
H A D | div64.c | 186 #ifndef mul_u64_u64_div_u64 187 u64 mul_u64_u64_div_u64(u64 a, u64 b, u64 c) in mul_u64_u64_div_u64() function 268 EXPORT_SYMBOL(mul_u64_u64_div_u64);
|
H A D | test_mul_u64_u64_div_u64.c | 77 u64 result = mul_u64_u64_div_u64(a, b, c); in test_init()
|
/linux/drivers/pwm/ |
H A D | pwm-apple.c | 56 on_cycles = mul_u64_u64_div_u64(fpwm->clkrate, in apple_pwm_apply() 61 off_cycles = mul_u64_u64_div_u64(fpwm->clkrate, in apple_pwm_apply()
|
H A D | pwm-mtk-disp.c | 118 clk_div = mul_u64_u64_div_u64(state->period, rate, NSEC_PER_SEC) >> in mtk_disp_pwm_apply() 129 period = mul_u64_u64_div_u64(state->period, rate, div); in mtk_disp_pwm_apply() 133 high_width = mul_u64_u64_div_u64(state->duty_cycle, rate, div); in mtk_disp_pwm_apply()
|
H A D | pwm-ab8500.c | 77 div = min_t(u64, mul_u64_u64_div_u64(state->period, in ab8500_pwm_apply() 84 duty_steps = max_t(u64, mul_u64_u64_div_u64(state->duty_cycle, in ab8500_pwm_apply()
|
H A D | pwm-brcmstb.c | 124 pc = mul_u64_u64_div_u64(period_ns, rate, NSEC_PER_SEC); in brcmstb_pwm_config() 125 dc = mul_u64_u64_div_u64(duty_ns + 1, rate, NSEC_PER_SEC); in brcmstb_pwm_config()
|
H A D | pwm-axi-pwmgen.c | 69 period_cnt = mul_u64_u64_div_u64(state->period, ddata->clk_rate_hz, NSEC_PER_SEC); in axi_pwmgen_apply() 80 duty_cnt = mul_u64_u64_div_u64(state->duty_cycle, ddata->clk_rate_hz, NSEC_PER_SEC); in axi_pwmgen_apply()
|
H A D | pwm-lpc18xx-sct.c | 158 val = mul_u64_u64_div_u64(period_ns, lpc18xx_pwm->clk_rate, NSEC_PER_SEC); in lpc18xx_pwm_config_period() 180 val = mul_u64_u64_div_u64(duty_ns, lpc18xx_pwm->clk_rate, NSEC_PER_SEC); in lpc18xx_pwm_config_duty() 384 mul_u64_u64_div_u64(NSEC_PER_SEC, LPC18XX_PWM_TIMER_MAX, lpc18xx_pwm->clk_rate); in lpc18xx_pwm_probe()
|
H A D | pwm-sunplus.c | 91 dd_freq = mul_u64_u64_div_u64(clk_rate, state->period, (u64)SP7021_PWM_FREQ_SCALER in sunplus_pwm_apply() 116 duty = mul_u64_u64_div_u64(state->duty_cycle, clk_rate, in sunplus_pwm_apply()
|
H A D | pwm-bcm-kona.c | 124 pc = mul_u64_u64_div_u64(rate, period_ns, div); in kona_pwmc_config() 125 dc = mul_u64_u64_div_u64(rate, duty_ns, div); in kona_pwmc_config()
|
H A D | pwm-microchip-core.c | 145 duty_steps = mul_u64_u64_div_u64(state->duty_cycle, clk_rate, tmp); in mchp_core_pwm_calc_duty() 211 tmp = mul_u64_u64_div_u64(state->period, clk_rate, NSEC_PER_SEC); in mchp_core_pwm_calc_period()
|
H A D | pwm-clps711x.c | 55 val = mul_u64_u64_div_u64(state->duty_cycle, 0xf, state->period); in clps711x_pwm_apply()
|
H A D | pwm-renesas-tpu.c | 265 period = mul_u64_u64_div_u64(clk_rate, period_ns, NSEC_PER_SEC); in tpu_pwm_config() 303 duty = mul_u64_u64_div_u64(clk_rate, duty_ns, in tpu_pwm_config()
|
H A D | pwm-stm32.c | 339 prescaler = mul_u64_u64_div_u64(period_ns, clk_get_rate(priv->clk), in stm32_pwm_config() 344 prd = mul_u64_u64_div_u64(period_ns, clk_get_rate(priv->clk), in stm32_pwm_config() 368 dty = mul_u64_u64_div_u64(duty_ns, clk_get_rate(priv->clk), in stm32_pwm_config()
|
H A D | pwm-imx1.c | 88 p = mul_u64_u64_div_u64(max, duty_ns, period_ns); in pwm_imx1_config()
|
H A D | pwm-pxa.c | 93 dc = mul_u64_u64_div_u64(pv + 1, duty_ns, period_ns); in pxa_pwm_config()
|
H A D | pwm-meson.c | 179 cnt = mul_u64_u64_div_u64(fin_freq, period, NSEC_PER_SEC); in meson_pwm_calc() 194 duty_cnt = mul_u64_u64_div_u64(fin_freq, duty, NSEC_PER_SEC); in meson_pwm_calc()
|
H A D | pwm-tegra.c | 167 rate = mul_u64_u64_div_u64(pc->clk_rate, period_ns, in tegra_pwm_config()
|
/linux/include/linux/ |
H A D | ptp_clock_kernel.h | 279 *diff = mul_u64_u64_div_u64(base, (u64)scaled_ppm, 1000000ULL << 16); in diff_by_scaled_ppm()
|
H A D | math64.h | 285 u64 mul_u64_u64_div_u64(u64 a, u64 mul, u64 div);
|
/linux/drivers/net/wireless/intel/iwlwifi/mvm/ |
H A D | ptp.c | 74 diff = mul_u64_u64_div_u64(diff, data->scaled_freq, in iwl_mvm_ptp_get_adj_time()
|
/linux/drivers/ptp/ |
H A D | ptp_qoriq.c | 223 diff = mul_u64_u64_div_u64(adj, scaled_ppm, 32768000000); in ptp_qoriq_adjfine()
|
/linux/kernel/sched/ |
H A D | cputime.c | 584 stime = mul_u64_u64_div_u64(stime, rtime, stime + utime); in cputime_adjust()
|
/linux/block/ |
H A D | blk-throttle.c | 575 return mul_u64_u64_div_u64(bps_limit, (u64)jiffy_elapsed, (u64)HZ); in calculate_bytes_allowed()
|