/linux-6.3-rc2/drivers/pwm/ |
A 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() 164 if (duty_ns == pwm_get_duty_cycle(pwm) && in pwm_omap_dmtimer_config() 199 duty_cycles = pwm_omap_dmtimer_get_clock_cycles(clk_rate, duty_ns); in pwm_omap_dmtimer_config() 211 duty_ns, clk_rate); in pwm_omap_dmtimer_config() 217 duty_ns, period_ns, clk_rate); in pwm_omap_dmtimer_config()
|
A 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() 155 if (duty_ns == 0) { in stmpe_24xx_pwm_config() 163 } else if (duty_ns == period_ns) { in stmpe_24xx_pwm_config() 186 duty = duty_ns * 256; in stmpe_24xx_pwm_config()
|
A D | pwm-samsung.c | 66 u32 duty_ns; member 318 int duty_ns, int period_ns, bool force_period) in __pwm_samsung_config() argument 338 duty_ns, period_ns, period); in __pwm_samsung_config() 353 tcmp = duty_ns / tin_ns; in __pwm_samsung_config() 385 chan->duty_ns = duty_ns; in __pwm_samsung_config() 391 int duty_ns, int period_ns) in pwm_samsung_config() argument 393 return __pwm_samsung_config(chip, pwm, duty_ns, period_ns, false); in pwm_samsung_config() 654 __pwm_samsung_config(chip, pwm, chan->duty_ns, in pwm_samsung_resume()
|
A D | pwm-brcmstb.c | 97 u64 duty_ns, u64 period_ns) in brcmstb_pwm_config() argument 109 if (duty_ns == period_ns) { in brcmstb_pwm_config() 126 dc = mul_u64_u64_div_u64(duty_ns + 1, rate, NSEC_PER_SEC); in brcmstb_pwm_config() 132 if (pc == PWM_PERIOD_MIN || (dc < PWM_ON_MIN && duty_ns)) in brcmstb_pwm_config()
|
A D | pwm-pxa.c | 68 u64 duty_ns, u64 period_ns) in pxa_pwm_config() argument 90 if (duty_ns == period_ns) in pxa_pwm_config() 93 dc = mul_u64_u64_div_u64(pv + 1, duty_ns, period_ns); in pxa_pwm_config()
|
A D | pwm-lp3943.c | 95 u64 duty_ns, u64 period_ns) in lp3943_pwm_config() argument 132 duty_ns = min(duty_ns, period_ns); in lp3943_pwm_config() 133 val = (u8)((int)duty_ns * LP3943_MAX_DUTY / (int)period_ns); in lp3943_pwm_config()
|
A D | pwm-twl-led.c | 75 int duty_ns, int period_ns) in twl4030_pwmled_config() argument 77 int duty_cycle = DIV_ROUND_UP(duty_ns * TWL4030_LED_MAX, period_ns) + 1; in twl4030_pwmled_config() 196 int duty_ns, int period_ns) in twl6030_pwmled_config() argument 198 int duty_cycle = (duty_ns * TWL6030_LED_MAX) / period_ns; in twl6030_pwmled_config()
|
A D | pwm-lpc18xx-sct.c | 171 struct pwm_device *pwm, u64 duty_ns) in lpc18xx_pwm_config_duty() argument 181 val = mul_u64_u64_div_u64(duty_ns, lpc18xx_pwm->clk_rate, NSEC_PER_SEC); in lpc18xx_pwm_config_duty() 193 int duty_ns, int period_ns) in lpc18xx_pwm_config() argument 232 lpc18xx_pwm_config_duty(chip, pwm, duty_ns); in lpc18xx_pwm_config()
|
A D | pwm-imx1.c | 64 struct pwm_device *pwm, u64 duty_ns, u64 period_ns) in pwm_imx1_config() argument 87 p = mul_u64_u64_div_u64(max, duty_ns, period_ns); in pwm_imx1_config()
|
A D | pwm-lpc32xx.c | 30 int duty_ns, int period_ns) in lpc32xx_pwm_config() argument 47 duty_cycles = div64_u64((unsigned long long)(period_ns - duty_ns) * 256, in lpc32xx_pwm_config()
|
A D | pwm-renesas-tpu.c | 245 u64 duty_ns, u64 period_ns, bool enabled) in tpu_pwm_config() argument 304 if (duty_ns) in tpu_pwm_config() 305 duty = mul_u64_u64_div_u64(clk_rate, duty_ns, in tpu_pwm_config()
|
A D | pwm-rcar.c | 106 static int rcar_pwm_set_counter(struct rcar_pwm_chip *rp, int div, int duty_ns, in rcar_pwm_set_counter() argument 120 tmp = duty_ns * 100ULL; in rcar_pwm_set_counter()
|
A D | pwm-spear.c | 78 u64 duty_ns, u64 period_ns) in spear_pwm_config() argument 101 val = clk_rate * duty_ns; in spear_pwm_config()
|
A D | pwm-sprd.c | 121 int duty_ns, int period_ns) in sprd_pwm_config() argument 137 duty = duty_ns * SPRD_PWM_MOD_MAX / period_ns; in sprd_pwm_config()
|
A D | pwm-lpss.c | 125 int duty_ns, int period_ns) in pwm_lpss_prepare() argument 145 on_time_div = 255ULL * duty_ns; in pwm_lpss_prepare()
|
A D | pwm-bcm-kona.c | 102 u64 duty_ns, u64 period_ns) in kona_pwmc_config() argument 126 dc = mul_u64_u64_div_u64(rate, duty_ns, div); in kona_pwmc_config()
|
A D | pwm-vt8500.c | 73 u64 duty_ns, u64 period_ns) in vt8500_pwm_config() argument 104 c = (unsigned long long)pv * duty_ns; in vt8500_pwm_config()
|
A D | pwm-berlin.c | 91 u64 duty_ns, u64 period_ns) in berlin_pwm_config() argument 111 cycles *= duty_ns; in berlin_pwm_config()
|
A D | pwm-tegra.c | 99 int duty_ns, int period_ns) in tegra_pwm_config() argument 102 unsigned long long c = duty_ns; in tegra_pwm_config()
|
A D | pwm-tiecap.c | 51 int duty_ns, int period_ns, int enabled) in ecap_pwm_config() argument 68 c = c * duty_ns; in ecap_pwm_config()
|
A D | pwm-mediatek.c | 118 int duty_ns, int period_ns) in pwm_mediatek_config() argument 162 cnt_duty = DIV_ROUND_CLOSEST_ULL((u64)duty_ns * 1000, resolution); in pwm_mediatek_config()
|
A D | pwm-sti.c | 164 int duty_ns, int period_ns) in sti_pwm_config() argument 227 value = cdata->max_pwm_cnt * duty_ns / period_ns; in sti_pwm_config() 239 prescale, period_ns, duty_ns, value); in sti_pwm_config()
|
A D | pwm-twl.c | 61 u64 duty_ns, u64 period_ns) in twl_pwm_config() argument 63 int duty_cycle = DIV64_U64_ROUND_UP(duty_ns * TWL_PWM_MAX, period_ns) + 1; in twl_pwm_config()
|
A D | pwm-img.c | 92 int duty_ns, int period_ns) in img_pwm_config() argument 128 duty = DIV_ROUND_UP(timebase * duty_ns, period_ns); in img_pwm_config()
|
/linux-6.3-rc2/include/linux/ |
A D | pwm.h | 325 static inline int pwm_config(struct pwm_device *pwm, int duty_ns, in pwm_config() argument 333 if (duty_ns < 0 || period_ns < 0) in pwm_config() 337 if (state.duty_cycle == duty_ns && state.period == period_ns) in pwm_config() 340 state.duty_cycle = duty_ns; in pwm_config() 436 static inline int pwm_config(struct pwm_device *pwm, int duty_ns, in pwm_config() argument
|