/kernel/linux/linux-5.10/drivers/clk/ |
H A D | clk-vt8500.c | 455 u32 mul; in wm8750_find_pll_bits() local 464 for (mul = 0; mul <= 255; mul++) { in wm8750_find_pll_bits() 465 tclk = parent_rate * (mul + 1) / ((div1 + 1) * (1 << div2)); in wm8750_find_pll_bits() 472 *multiplier = mul; in wm8750_find_pll_bits() 480 *multiplier = mul; in wm8750_find_pll_bits() 503 u32 mul; in wm8850_find_pll_bits() local 512 for (mul = 0; mul < in wm8850_find_pll_bits() 550 u32 filter, mul, div1, div2; vtwm_pll_set_rate() local 601 u32 filter, mul, div1, div2; vtwm_pll_round_rate() local [all...] |
H A D | clk-cdce706.c | 73 unsigned mul; member 168 "%s, pll: %d, mux: %d, mul: %u, div: %u\n", in cdce706_pll_recalc_rate() 169 __func__, hwd->idx, hwd->mux, hwd->mul, hwd->div); in cdce706_pll_recalc_rate() 172 if (hwd->div && hwd->mul) { in cdce706_pll_recalc_rate() 173 u64 res = (u64)parent_rate * hwd->mul; in cdce706_pll_recalc_rate() 189 unsigned long mul, div; in cdce706_pll_round_rate() local 198 &mul, &div); in cdce706_pll_round_rate() 199 hwd->mul = mul; in cdce706_pll_round_rate() 203 "%s, pll: %d, mul in cdce706_pll_round_rate() 215 unsigned long mul = hwd->mul, div = hwd->div; cdce706_pll_set_rate() local 295 unsigned long mul, div; cdce706_divider_round_rate() local [all...] |
H A D | clk-tango4.c | 25 u32 val, mul, div; in make_pll() local 29 mul = extract_pll_n(val) + 1; in make_pll() 31 clk_register_fixed_factor(NULL, name, parent, 0, mul, div); in make_pll() 39 u32 val, mul, div; in make_cd() local 43 mul = 1 << 27; in make_cd() 45 clk_register_fixed_factor(NULL, name, "pll2", 0, mul, div); in make_cd()
|
/kernel/linux/linux-6.6/drivers/clk/ |
H A D | clk-vt8500.c | 455 u32 mul; in wm8750_find_pll_bits() local 464 for (mul = 0; mul <= 255; mul++) { in wm8750_find_pll_bits() 465 tclk = parent_rate * (mul + 1) / ((div1 + 1) * (1 << div2)); in wm8750_find_pll_bits() 472 *multiplier = mul; in wm8750_find_pll_bits() 480 *multiplier = mul; in wm8750_find_pll_bits() 503 u32 mul; in wm8850_find_pll_bits() local 512 for (mul = 0; mul < in wm8850_find_pll_bits() 550 u32 filter, mul, div1, div2; vtwm_pll_set_rate() local 601 u32 filter, mul, div1, div2; vtwm_pll_round_rate() local [all...] |
H A D | clk-cdce706.c | 73 unsigned mul; member 169 "%s, pll: %d, mux: %d, mul: %u, div: %u\n", in cdce706_pll_recalc_rate() 170 __func__, hwd->idx, hwd->mux, hwd->mul, hwd->div); in cdce706_pll_recalc_rate() 173 if (hwd->div && hwd->mul) { in cdce706_pll_recalc_rate() 174 u64 res = (u64)parent_rate * hwd->mul; in cdce706_pll_recalc_rate() 190 unsigned long mul, div; in cdce706_pll_round_rate() local 199 &mul, &div); in cdce706_pll_round_rate() 200 hwd->mul = mul; in cdce706_pll_round_rate() 204 "%s, pll: %d, mul in cdce706_pll_round_rate() 216 unsigned long mul = hwd->mul, div = hwd->div; cdce706_pll_set_rate() local 297 unsigned long mul, div; cdce706_divider_determine_rate() local [all...] |
/kernel/linux/linux-5.10/drivers/clk/actions/ |
H A D | owl-factor.c | 29 unsigned int val, unsigned int *mul, unsigned int *div) in _get_table_div_mul() 35 *mul = clkt->mul; in _get_table_div_mul() 52 calc_rate = parent_rate * clkt->mul; in _get_table_val() 86 try_parent_rate = rate * clkt->div / clkt->mul; in owl_clk_val_best() 90 __func__, clkt->val, clkt->mul, clkt->div, in owl_clk_val_best() 103 cur_rate = DIV_ROUND_UP(parent_rate, clkt->div) * clkt->mul; in owl_clk_val_best() 126 unsigned int val, mul = 0, div = 1; in owl_factor_helper_round_rate() local 129 _get_table_div_mul(clkt, val, &mul, &div); in owl_factor_helper_round_rate() 131 return *parent_rate * mul / di in owl_factor_helper_round_rate() 28 _get_table_div_mul(const struct clk_factor_table *table, unsigned int val, unsigned int *mul, unsigned int *div) _get_table_div_mul() argument 150 u32 reg, val, mul, div; owl_factor_helper_recalc_rate() local [all...] |
H A D | owl-pll.c | 20 u32 mul; in owl_pll_calculate_mul() local 22 mul = DIV_ROUND_CLOSEST(rate, pll_hw->bfreq); in owl_pll_calculate_mul() 23 if (mul < pll_hw->min_mul) in owl_pll_calculate_mul() 24 mul = pll_hw->min_mul; in owl_pll_calculate_mul() 25 else if (mul > pll_hw->max_mul) in owl_pll_calculate_mul() 26 mul = pll_hw->max_mul; in owl_pll_calculate_mul() 28 return mul &= mul_mask(pll_hw); in owl_pll_calculate_mul() 65 u32 mul; in owl_pll_round_rate() local 76 mul = owl_pll_calculate_mul(pll_hw, rate); in owl_pll_round_rate() 78 return pll_hw->bfreq * mul; in owl_pll_round_rate() [all...] |
/kernel/linux/linux-6.6/drivers/clk/actions/ |
H A D | owl-factor.c | 28 unsigned int val, unsigned int *mul, unsigned int *div) in _get_table_div_mul() 34 *mul = clkt->mul; in _get_table_div_mul() 51 calc_rate = parent_rate * clkt->mul; in _get_table_val() 85 try_parent_rate = rate * clkt->div / clkt->mul; in owl_clk_val_best() 89 __func__, clkt->val, clkt->mul, clkt->div, in owl_clk_val_best() 102 cur_rate = DIV_ROUND_UP(parent_rate, clkt->div) * clkt->mul; in owl_clk_val_best() 125 unsigned int val, mul = 0, div = 1; in owl_factor_helper_round_rate() local 128 _get_table_div_mul(clkt, val, &mul, &div); in owl_factor_helper_round_rate() 130 return *parent_rate * mul / di in owl_factor_helper_round_rate() 27 _get_table_div_mul(const struct clk_factor_table *table, unsigned int val, unsigned int *mul, unsigned int *div) _get_table_div_mul() argument 149 u32 reg, val, mul, div; owl_factor_helper_recalc_rate() local [all...] |
H A D | owl-pll.c | 20 u32 mul; in owl_pll_calculate_mul() local 22 mul = DIV_ROUND_CLOSEST(rate, pll_hw->bfreq); in owl_pll_calculate_mul() 23 if (mul < pll_hw->min_mul) in owl_pll_calculate_mul() 24 mul = pll_hw->min_mul; in owl_pll_calculate_mul() 25 else if (mul > pll_hw->max_mul) in owl_pll_calculate_mul() 26 mul = pll_hw->max_mul; in owl_pll_calculate_mul() 28 return mul & mul_mask(pll_hw); in owl_pll_calculate_mul() 65 u32 mul; in owl_pll_round_rate() local 76 mul = owl_pll_calculate_mul(pll_hw, rate); in owl_pll_round_rate() 78 return pll_hw->bfreq * mul; in owl_pll_round_rate() [all...] |
/kernel/linux/linux-5.10/arch/mips/ar7/ |
H A D | clock.c | 70 u32 mul; member 99 int *postdiv, int *mul) in approximate() 108 *mul = i; in approximate() 116 int *mul) in calculate() 123 *mul = target / tmp_gcd; in calculate() 125 if ((*mul < 1) || (*mul >= 16)) in calculate() 131 if (base / *prediv * *mul / *postdiv != target) { in calculate() 132 approximate(base, target, prediv, postdiv, mul); in calculate() 133 tmp_freq = base / *prediv * *mul / *postdi in calculate() 98 approximate(int base, int target, int *prediv, int *postdiv, int *mul) approximate() argument 115 calculate(int base, int target, int *prediv, int *postdiv, int *mul) calculate() argument 169 int mul = ((pll & MUL_MASK) >> MUL_SHIFT) + 1; tnetd7300_get_clock() local 208 int prediv, postdiv, mul; tnetd7300_set_clock() local 261 tnetd7200_set_clock(int base, struct tnetd7200_clock *clock, int prediv, int postdiv, int postdiv2, int mul, u32 frequency) tnetd7200_set_clock() argument [all...] |
/kernel/linux/linux-6.6/arch/mips/ar7/ |
H A D | clock.c | 72 u32 mul; member 101 int *postdiv, int *mul) in approximate() 110 *mul = i; in approximate() 118 int *mul) in calculate() 125 *mul = target / tmp_gcd; in calculate() 127 if ((*mul < 1) || (*mul >= 16)) in calculate() 133 if (base / *prediv * *mul / *postdiv != target) { in calculate() 134 approximate(base, target, prediv, postdiv, mul); in calculate() 135 tmp_freq = base / *prediv * *mul / *postdi in calculate() 100 approximate(int base, int target, int *prediv, int *postdiv, int *mul) approximate() argument 117 calculate(int base, int target, int *prediv, int *postdiv, int *mul) calculate() argument 171 int mul = ((pll & MUL_MASK) >> MUL_SHIFT) + 1; tnetd7300_get_clock() local 210 int prediv, postdiv, mul; tnetd7300_set_clock() local 271 tnetd7200_set_clock(int base, struct tnetd7200_clock *clock, int prediv, int postdiv, int postdiv2, int mul, u32 frequency) tnetd7200_set_clock() argument [all...] |
/kernel/linux/linux-5.10/drivers/clk/tegra/ |
H A D | clk-utils.c | 16 int mul; in div_frac_get() local 21 mul = 1 << frac_width; in div_frac_get() 24 divider_ux1 *= mul; in div_frac_get() 32 divider_ux1 *= mul; in div_frac_get() 34 if (divider_ux1 < mul) in div_frac_get() 37 divider_ux1 -= mul; in div_frac_get()
|
H A D | clk-divider.c | 40 int div, mul; in clk_frac_div_recalc_rate() local 51 mul = get_mul(divider); in clk_frac_div_recalc_rate() 52 div += mul; in clk_frac_div_recalc_rate() 54 rate *= mul; in clk_frac_div_recalc_rate() 65 int div, mul; in clk_frac_div_round_rate() local 75 mul = get_mul(divider); in clk_frac_div_round_rate() 77 return DIV_ROUND_UP(output_rate * mul, div + mul); in clk_frac_div_round_rate()
|
/kernel/linux/linux-6.6/drivers/clk/tegra/ |
H A D | clk-utils.c | 16 int mul; in div_frac_get() local 21 mul = 1 << frac_width; in div_frac_get() 24 divider_ux1 *= mul; in div_frac_get() 32 divider_ux1 *= mul; in div_frac_get() 34 if (divider_ux1 < mul) in div_frac_get() 37 divider_ux1 -= mul; in div_frac_get()
|
H A D | clk-divider.c | 40 int div, mul; in clk_frac_div_recalc_rate() local 51 mul = get_mul(divider); in clk_frac_div_recalc_rate() 52 div += mul; in clk_frac_div_recalc_rate() 54 rate *= mul; in clk_frac_div_recalc_rate() 65 int div, mul; in clk_frac_div_round_rate() local 75 mul = get_mul(divider); in clk_frac_div_round_rate() 77 return DIV_ROUND_UP(output_rate * mul, div + mul); in clk_frac_div_round_rate()
|
/kernel/linux/linux-5.10/drivers/clk/at91/ |
H A D | clk-pll.c | 40 u16 mul; member 68 u16 mul; in clk_pll_prepare() local 72 mul = PLL_MUL(pllr, layout); in clk_pll_prepare() 76 (div == pll->div && mul == pll->mul)) in clk_pll_prepare() 89 ((pll->mul & layout->mul_mask) << layout->mul_shift)); in clk_pll_prepare() 117 if (!pll->div || !pll->mul) in clk_pll_recalc_rate() 120 return (parent_rate / pll->div) * (pll->mul + 1); in clk_pll_recalc_rate() 125 u32 *div, u32 *mul, in clk_pll_get_best_div_mul() 225 if (mul) in clk_pll_get_best_div_mul() 123 clk_pll_get_best_div_mul(struct clk_pll *pll, unsigned long rate, unsigned long parent_rate, u32 *div, u32 *mul, u32 *index) clk_pll_get_best_div_mul() argument 248 u32 mul; clk_pll_set_rate() local [all...] |
/kernel/linux/linux-5.10/drivers/cpufreq/ |
H A D | cpufreq-nforce2.c | 25 #define NFORCE2_PLL(mul, div) (0x100000 | (mul << 8) | div) 69 unsigned char mul, div; in nforce2_calc_fsb() local 71 mul = (pll >> 8) & 0xff; in nforce2_calc_fsb() 75 return NFORCE2_XTAL * mul / div; in nforce2_calc_fsb() 89 unsigned char mul = 0, div = 0; in nforce2_calc_pll() local 93 while (((mul == 0) || (div == 0)) && (tried <= 3)) { in nforce2_calc_pll() 98 mul = xmul; in nforce2_calc_pll() 104 if ((mul == 0) || (div == 0)) in nforce2_calc_pll() 107 return NFORCE2_PLL(mul, di in nforce2_calc_pll() [all...] |
/kernel/linux/linux-6.6/drivers/cpufreq/ |
H A D | cpufreq-nforce2.c | 25 #define NFORCE2_PLL(mul, div) (0x100000 | (mul << 8) | div) 69 unsigned char mul, div; in nforce2_calc_fsb() local 71 mul = (pll >> 8) & 0xff; in nforce2_calc_fsb() 75 return NFORCE2_XTAL * mul / div; in nforce2_calc_fsb() 89 unsigned char mul = 0, div = 0; in nforce2_calc_pll() local 93 while (((mul == 0) || (div == 0)) && (tried <= 3)) { in nforce2_calc_pll() 98 mul = xmul; in nforce2_calc_pll() 104 if ((mul == 0) || (div == 0)) in nforce2_calc_pll() 107 return NFORCE2_PLL(mul, di in nforce2_calc_pll() [all...] |
/kernel/linux/linux-6.6/drivers/clk/at91/ |
H A D | clk-pll.c | 40 u16 mul; member 69 u16 mul; in clk_pll_prepare() local 73 mul = PLL_MUL(pllr, layout); in clk_pll_prepare() 77 (div == pll->div && mul == pll->mul)) in clk_pll_prepare() 90 ((pll->mul & layout->mul_mask) << layout->mul_shift)); in clk_pll_prepare() 118 if (!pll->div || !pll->mul) in clk_pll_recalc_rate() 121 return (parent_rate / pll->div) * (pll->mul + 1); in clk_pll_recalc_rate() 126 u32 *div, u32 *mul, in clk_pll_get_best_div_mul() 226 if (mul) in clk_pll_get_best_div_mul() 124 clk_pll_get_best_div_mul(struct clk_pll *pll, unsigned long rate, unsigned long parent_rate, u32 *div, u32 *mul, u32 *index) clk_pll_get_best_div_mul() argument 249 u32 mul; clk_pll_set_rate() local [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | math64.h | 159 static inline u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift) in mul_u64_u32_shr() argument 161 return (u64)(((unsigned __int128)a * mul) >> shift); in mul_u64_u32_shr() 166 static inline u64 mul_u64_u64_shr(u64 a, u64 mul, unsigned int shift) in mul_u64_u64_shr() argument 168 return (u64)(((unsigned __int128)a * mul) >> shift); in mul_u64_u64_shr() 175 static inline u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift) in mul_u64_u32_shr() argument 183 ret = mul_u32_u32(al, mul) >> shift; in mul_u64_u32_shr() 185 ret += mul_u32_u32(ah, mul) << (32 - shift); in mul_u64_u32_shr() 238 static inline u64 mul_u64_u32_div(u64 a, u32 mul, u32 divisor) in mul_u64_u32_div() argument 252 rl.ll = mul_u32_u32(u.l.low, mul); in mul_u64_u32_div() 253 rh.ll = mul_u32_u32(u.l.high, mul) in mul_u64_u32_div() [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | math64.h | 164 static __always_inline u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift) in mul_u64_u32_shr() argument 166 return (u64)(((unsigned __int128)a * mul) >> shift); in mul_u64_u32_shr() 171 static __always_inline u64 mul_u64_u64_shr(u64 a, u64 mul, unsigned int shift) in mul_u64_u64_shr() argument 173 return (u64)(((unsigned __int128)a * mul) >> shift); in mul_u64_u64_shr() 180 static __always_inline u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift) in mul_u64_u32_shr() argument 188 ret = mul_u32_u32(al, mul) >> shift; in mul_u64_u32_shr() 190 ret += mul_u32_u32(ah, mul) << (32 - shift); in mul_u64_u32_shr() 261 static inline u64 mul_u64_u32_div(u64 a, u32 mul, u32 divisor) in mul_u64_u32_div() argument 275 rl.ll = mul_u32_u32(u.l.low, mul); in mul_u64_u32_div() 276 rh.ll = mul_u32_u32(u.l.high, mul) in mul_u64_u32_div() [all...] |
/kernel/linux/linux-5.10/drivers/net/wireless/ath/ath9k/ |
H A D | common.h | 39 #define ATH_EP_MUL(x, mul) ((x) * (mul)) 47 #define ATH_EP_RND(x, mul) \ 48 (((x) + ((mul)/2)) / (mul))
|
/kernel/linux/linux-6.6/drivers/net/wireless/ath/ath9k/ |
H A D | common.h | 39 #define ATH_EP_MUL(x, mul) ((x) * (mul)) 47 #define ATH_EP_RND(x, mul) \ 48 (((x) + ((mul)/2)) / (mul))
|
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/ |
H A D | i915_fixed.h | 75 static inline u32 mul_round_up_u32_fixed16(u32 val, uint_fixed_16_16_t mul) in mul_round_up_u32_fixed16() argument 79 tmp = mul_u32_u32(val, mul.val); in mul_round_up_u32_fixed16() 87 uint_fixed_16_16_t mul) in mul_fixed16() 91 tmp = mul_u32_u32(val.val, mul.val); in mul_fixed16() 118 static inline uint_fixed_16_16_t mul_u32_fixed16(u32 val, uint_fixed_16_16_t mul) in mul_u32_fixed16() argument 122 tmp = mul_u32_u32(val, mul.val); in mul_u32_fixed16() 86 mul_fixed16(uint_fixed_16_16_t val, uint_fixed_16_16_t mul) mul_fixed16() argument
|
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/ |
H A D | i915_fixed.h | 75 static inline u32 mul_round_up_u32_fixed16(u32 val, uint_fixed_16_16_t mul) in mul_round_up_u32_fixed16() argument 79 tmp = mul_u32_u32(val, mul.val); in mul_round_up_u32_fixed16() 87 uint_fixed_16_16_t mul) in mul_fixed16() 91 tmp = mul_u32_u32(val.val, mul.val); in mul_fixed16() 118 static inline uint_fixed_16_16_t mul_u32_fixed16(u32 val, uint_fixed_16_16_t mul) in mul_u32_fixed16() argument 122 tmp = mul_u32_u32(val, mul.val); in mul_u32_fixed16() 86 mul_fixed16(uint_fixed_16_16_t val, uint_fixed_16_16_t mul) mul_fixed16() argument
|