/openbmc/linux/drivers/clk/rockchip/ |
H A D | clk-half-divider.c | 39 unsigned int i, bestdiv = 0; in clk_half_divider_bestdiv() local 50 bestdiv = DIV_ROUND_UP_ULL(((u64)parent_rate * 2), rate); in clk_half_divider_bestdiv() 51 if (bestdiv < 3) in clk_half_divider_bestdiv() 52 bestdiv = 0; in clk_half_divider_bestdiv() 54 bestdiv = (bestdiv - 3) / 2; in clk_half_divider_bestdiv() 55 bestdiv = bestdiv > maxdiv ? maxdiv : bestdiv; in clk_half_divider_bestdiv() 56 return bestdiv; in clk_half_divider_bestdiv() 81 bestdiv = i; in clk_half_divider_bestdiv() 87 if (!bestdiv) { in clk_half_divider_bestdiv() 88 bestdiv = div_mask(width); in clk_half_divider_bestdiv() [all …]
|
/openbmc/linux/drivers/clk/zynqmp/ |
H A D | divider.c | 129 u32 bestdiv; in zynqmp_clk_divider_round_rate() local 135 ret = zynqmp_pm_clock_getdivider(clk_id, &bestdiv); in zynqmp_clk_divider_round_rate() 141 bestdiv = bestdiv & 0xFFFF; in zynqmp_clk_divider_round_rate() 143 bestdiv = bestdiv >> 16; in zynqmp_clk_divider_round_rate() 146 bestdiv = 1 << bestdiv; in zynqmp_clk_divider_round_rate() 148 return DIV_ROUND_UP_ULL((u64)*prate, bestdiv); in zynqmp_clk_divider_round_rate()
|
/openbmc/linux/drivers/clk/ti/ |
H A D | divider.c | 172 int i, bestdiv = 0; in ti_clk_divider_bestdiv() local 183 bestdiv = _div_round(divider->table, parent_rate, rate); in ti_clk_divider_bestdiv() 184 bestdiv = bestdiv == 0 ? 1 : bestdiv; in ti_clk_divider_bestdiv() 185 bestdiv = bestdiv > maxdiv ? maxdiv : bestdiv; in ti_clk_divider_bestdiv() 186 return bestdiv; in ti_clk_divider_bestdiv() 211 bestdiv = i; in ti_clk_divider_bestdiv() 217 if (!bestdiv) { in ti_clk_divider_bestdiv() 218 bestdiv = divider->max; in ti_clk_divider_bestdiv() 223 return bestdiv; in ti_clk_divider_bestdiv()
|
/openbmc/linux/drivers/clk/ |
H A D | clk-divider.c | 295 int i, bestdiv = 0; in clk_divider_bestdiv() local 306 bestdiv = _div_round(table, parent_rate, rate, flags); in clk_divider_bestdiv() 307 bestdiv = bestdiv == 0 ? 1 : bestdiv; in clk_divider_bestdiv() 308 bestdiv = bestdiv > maxdiv ? maxdiv : bestdiv; in clk_divider_bestdiv() 309 return bestdiv; in clk_divider_bestdiv() 332 bestdiv = i; in clk_divider_bestdiv() 338 if (!bestdiv) { in clk_divider_bestdiv() 339 bestdiv = _get_maxdiv(table, width, flags); in clk_divider_bestdiv() 343 return bestdiv; in clk_divider_bestdiv()
|
H A D | clk-versaclock3.c | 503 unsigned int bestdiv; in vc3_div_round_rate() local 507 regmap_read(vc3->regmap, div_data->offs, &bestdiv); in vc3_div_round_rate() 508 bestdiv >>= div_data->shift; in vc3_div_round_rate() 509 bestdiv &= VC3_DIV_MASK(div_data->width); in vc3_div_round_rate() 510 bestdiv = vc3_get_div(div_data->table, bestdiv, div_data->flags); in vc3_div_round_rate() 511 return DIV_ROUND_UP(*parent_rate, bestdiv); in vc3_div_round_rate()
|
/openbmc/linux/drivers/clk/meson/ |
H A D | sclk-div.c | 54 int bestdiv = 0, i; in sclk_div_bestdiv() local 85 bestdiv = i; in sclk_div_bestdiv() 91 if (!bestdiv) in sclk_div_bestdiv() 92 bestdiv = sclk_div_maxdiv(sclk); in sclk_div_bestdiv() 96 return bestdiv; in sclk_div_bestdiv()
|
/openbmc/linux/drivers/clk/at91/ |
H A D | clk-pll.c | 134 unsigned long bestdiv; in clk_pll_get_best_div_mul() local 197 bestdiv = tmpdiv; in clk_pll_get_best_div_mul() 225 *div = bestdiv; in clk_pll_get_best_div_mul()
|
/openbmc/linux/drivers/clk/bcm/ |
H A D | clk-iproc-pll.c | 639 unsigned int bestdiv; in iproc_clk_determine_rate() local 646 bestdiv = DIV_ROUND_CLOSEST(req->best_parent_rate, req->rate); in iproc_clk_determine_rate() 647 if (bestdiv < 2) in iproc_clk_determine_rate() 650 if (bestdiv > 256) in iproc_clk_determine_rate() 651 bestdiv = 256; in iproc_clk_determine_rate() 653 req->rate = req->best_parent_rate / bestdiv; in iproc_clk_determine_rate()
|
/openbmc/linux/drivers/clk/nxp/ |
H A D | clk-lpc32xx.c | 962 unsigned int bestdiv; in clk_divider_round_rate() local 966 regmap_read(clk_regmap, divider->reg, &bestdiv); in clk_divider_round_rate() 967 bestdiv >>= divider->shift; in clk_divider_round_rate() 968 bestdiv &= div_mask(divider->width); in clk_divider_round_rate() 969 bestdiv = _get_div(divider->table, bestdiv, divider->flags, in clk_divider_round_rate() 971 return DIV_ROUND_UP(*prate, bestdiv); in clk_divider_round_rate()
|
/openbmc/linux/drivers/gpu/drm/i915/display/ |
H A D | intel_dpll_mgr.c | 2371 static void icl_wrpll_get_multipliers(int bestdiv, int *pdiv, in icl_wrpll_get_multipliers() argument 2375 if (bestdiv % 2 == 0) { in icl_wrpll_get_multipliers() 2376 if (bestdiv == 2) { in icl_wrpll_get_multipliers() 2380 } else if (bestdiv % 4 == 0) { in icl_wrpll_get_multipliers() 2382 *qdiv = bestdiv / 4; in icl_wrpll_get_multipliers() 2384 } else if (bestdiv % 6 == 0) { in icl_wrpll_get_multipliers() 2386 *qdiv = bestdiv / 6; in icl_wrpll_get_multipliers() 2388 } else if (bestdiv % 5 == 0) { in icl_wrpll_get_multipliers() 2390 *qdiv = bestdiv / 10; in icl_wrpll_get_multipliers() 2392 } else if (bestdiv % 14 == 0) { in icl_wrpll_get_multipliers() [all …]
|