/linux-6.12.1/drivers/clk/samsung/ |
D | clk-pll.c | 154 u64 fvco = parent_rate; in samsung_pll2126_recalc_rate() local 161 fvco *= (mdiv + 8); in samsung_pll2126_recalc_rate() 162 do_div(fvco, (pdiv + 2) << sdiv); in samsung_pll2126_recalc_rate() 164 return (unsigned long)fvco; in samsung_pll2126_recalc_rate() 187 u64 fvco = parent_rate; in samsung_pll3000_recalc_rate() local 194 fvco *= (2 * (mdiv + 8)); in samsung_pll3000_recalc_rate() 195 do_div(fvco, pdiv << sdiv); in samsung_pll3000_recalc_rate() 197 return (unsigned long)fvco; in samsung_pll3000_recalc_rate() 224 u64 fvco = parent_rate; in samsung_pll35xx_recalc_rate() local 231 fvco *= mdiv; in samsung_pll35xx_recalc_rate() [all …]
|
/linux-6.12.1/drivers/clk/imx/ |
D | clk-fracn-gppll.c | 75 * Fvco = (Fref / rdiv) * (MFI + MFN / MFD) 76 * Fout = Fvco / odiv 78 * The Fvco should be in range 2.5Ghz to 5Ghz 101 * Fvco = (Fref / rdiv) * MFI 102 * Fout = Fvco / odiv 104 * The Fvco should be in range 2.5Ghz to 5Ghz 159 u64 fvco = parent_rate; in clk_fracn_gppll_recalc_rate() local 206 /* Fvco = (Fref / rdiv) * MFI */ in clk_fracn_gppll_recalc_rate() 207 fvco = fvco * mfi; in clk_fracn_gppll_recalc_rate() 208 do_div(fvco, rdiv * odiv); in clk_fracn_gppll_recalc_rate() [all …]
|
/linux-6.12.1/drivers/clk/sprd/ |
D | pll.c | 156 u64 tmp, refin, fvco = rate; in _sprd_pll_set_rate() local 174 if (width && ((pll->fflag == 1 && fvco <= pll->fvco) || in _sprd_pll_set_rate() 175 (pll->fflag == 0 && fvco > pll->fvco))) in _sprd_pll_set_rate() 178 if (width && fvco <= pll->fvco) in _sprd_pll_set_rate() 179 fvco = fvco * 2; in _sprd_pll_set_rate() 191 nint = do_div(fvco, refin * CLK_PLL_1M); in _sprd_pll_set_rate() 202 tmp = fvco - refin * nint * CLK_PLL_1M; in _sprd_pll_set_rate() 208 ibias_val = pll_get_ibias(fvco, pll->itable); in _sprd_pll_set_rate()
|
D | pll.h | 48 * @fvco: fvco threshold rate 49 * @fflag: fvco flag 59 u64 fvco; member 76 .fvco = _fvco, \
|
/linux-6.12.1/drivers/media/tuners/ |
D | fc0011.c | 171 u32 fvco, xin, frac, xdiv, xdivr; in fc0011_set_params() local 190 fvco = freq * 64; in fc0011_set_params() 193 fvco = freq * 32; in fc0011_set_params() 196 fvco = freq * 16; in fc0011_set_params() 199 fvco = freq * 8; in fc0011_set_params() 202 fvco = freq * 4; in fc0011_set_params() 207 xdiv = fvco / 18000; in fc0011_set_params() 209 frac = fvco - xdiv * 18000; in fc0011_set_params() 222 if (fvco - xdiv * 18000 >= 9000) in fc0011_set_params() 260 if (fvco < 2320000) { in fc0011_set_params() [all …]
|
D | tda18250.c | 436 unsigned long fvco; in tda18250_pll_calc() local 447 fvco = lopd * scale * ((c->frequency / 1000) + dev->if_frequency); in tda18250_pll_calc() 453 *icp = (fvco < 6622000) ? 0x05 : 0x02; in tda18250_pll_calc() 459 *icp = (fvco < 6622000) ? 0x05 : 0x02; in tda18250_pll_calc() 462 if (fvco < 6643000) { in tda18250_pll_calc() 466 } else if (fvco < 6811000) { in tda18250_pll_calc() 479 *icp = (fvco < 6811000) ? 0x05 : 0x02; in tda18250_pll_calc() 486 "lopd=%d scale=%u fvco=%lu, rdiv=%d ndiv=%d icp=%d", in tda18250_pll_calc() 487 lopd, scale, fvco, *rdiv, *ndiv, *icp); in tda18250_pll_calc()
|
/linux-6.12.1/drivers/gpu/drm/sprd/ |
D | megacores_pll.c | 44 pll->fvco = pll->potential_fvco; in dphy_calc_pll_param() 50 if (pll->fvco == 0) in dphy_calc_pll_param() 53 if (pll->fvco >= VCO_BAND_LOW && pll->fvco <= VCO_BAND_MID) { in dphy_calc_pll_param() 58 } else if (pll->fvco > VCO_BAND_MID && pll->fvco <= VCO_BAND_HIGH) { in dphy_calc_pll_param() 65 pll->nint = pll->fvco / pll->ref_clk; in dphy_calc_pll_param() 66 tmp = pll->fvco * factor * mhz; in dphy_calc_pll_param()
|
/linux-6.12.1/drivers/media/dvb-frontends/ |
D | stb6100.c | 301 u32 nint, nfrac, fvco; in stb6100_get_frequency() local 314 fvco = (nfrac * state->reference >> (9 - psd2)) + (nint * state->reference << psd2); in stb6100_get_frequency() 315 *frequency = state->frequency = fvco >> (odiv + 1); in stb6100_get_frequency() 318 "frequency = %u kHz, odiv = %u, psd2 = %u, fxtal = %u kHz, fvco = %u kHz, N(I) = %u, N(F) = %u", in stb6100_get_frequency() 319 state->frequency, odiv, psd2, state->reference, fvco, nint, nfrac); in stb6100_get_frequency() 331 u32 srate = 0, fvco, nint, nfrac; in stb6100_set_frequency() local 384 fvco = frequency << (1 + odiv); in stb6100_set_frequency() 386 nint = fvco / (state->reference << psd2); in stb6100_set_frequency() 388 nfrac = DIV_ROUND_CLOSEST((fvco - (nint * state->reference << psd2)) in stb6100_set_frequency() 434 …"frequency = %u, srate = %u, g = %u, odiv = %u, psd2 = %u, fxtal = %u, osm = %u, fvco = %u, N(I) =… in stb6100_set_frequency() [all …]
|
D | stv6111.c | 444 u32 p = 1, psel = 0, fvco, div, frac; in set_lof() local 459 fvco = frequency * p; in set_lof() 460 div = fvco / state->ref_freq; in set_lof() 461 frac = fvco % state->ref_freq; in set_lof() 465 if (fvco < 2700000) in set_lof() 467 else if (fvco < 2950000) in set_lof() 469 else if (fvco < 3300000) in set_lof() 471 else if (fvco < 3700000) in set_lof() 473 else if (fvco < 4200000) in set_lof() 475 else if (fvco < 4800000) in set_lof()
|
/linux-6.12.1/drivers/clk/ |
D | clk-xgene.c | 75 unsigned long fvco; in xgene_clk_pll_recalc_rate() local 90 fvco = parent_rate * (N_DIV_RD(pll) + 4); in xgene_clk_pll_recalc_rate() 94 * Fvco = Fref * NFB; in xgene_clk_pll_recalc_rate() 95 * Fout = Fvco / NOUT; in xgene_clk_pll_recalc_rate() 101 fvco = fref * nfb; in xgene_clk_pll_recalc_rate() 105 * fvco = Reference clock * FBDIVC in xgene_clk_pll_recalc_rate() 106 * PLL freq = fvco / NOUT in xgene_clk_pll_recalc_rate() 109 fvco = parent_rate * SC_N_DIV_RD(pll); in xgene_clk_pll_recalc_rate() 112 clk_hw_get_name(hw), fvco / nout, parent_rate, in xgene_clk_pll_recalc_rate() 115 return fvco / nout; in xgene_clk_pll_recalc_rate()
|
D | clk-sp7021.c | 139 /* TODO: set proper FVCO range */ 153 unsigned long fvco, nf; in plltv_integer_div() local 160 fvco = freq << r; in plltv_integer_div() 161 if (fvco <= FVCO_MAX) in plltv_integer_div() 167 nf = fvco * m_table[m]; in plltv_integer_div() 220 unsigned long fvco, nf, f, fout = 0; in plltv_fractional_div() local 227 fvco = freq << r; in plltv_fractional_div() 228 if (fvco <= FVCO_MAX) in plltv_fractional_div() 246 nf = fvco * m; in plltv_fractional_div()
|
D | clk-axi-clkgen.c | 131 unsigned long f, dout, best_f, fvco; in axi_clkgen_calc_params() local 158 fvco = fin * m / d; in axi_clkgen_calc_params() 160 dout = DIV_ROUND_CLOSEST(fvco, fout); in axi_clkgen_calc_params() 162 f = fvco / dout; in axi_clkgen_calc_params()
|
/linux-6.12.1/drivers/phy/st/ |
D | phy-stm32-usbphyc.c | 207 unsigned long long fvco, ndiv, frac; in stm32_usbphyc_get_pll_params() local 210 * | FVCO = INFF*2*(NDIV + FRACT/2^16) when DITHER_DISABLE[1] = 1 in stm32_usbphyc_get_pll_params() 211 * | FVCO = 2880MHz in stm32_usbphyc_get_pll_params() 215 * => PLLNDIV = integer part of (FVCO / (INFF*2)) in stm32_usbphyc_get_pll_params() 216 * => PLLFRACIN = fractional part of(FVCO / INFF*2) * 2^16 in stm32_usbphyc_get_pll_params() 217 * <=> PLLFRACIN = ((FVCO / (INFF*2)) - PLLNDIV) * 2^16 in stm32_usbphyc_get_pll_params() 219 fvco = (unsigned long long)PLL_FVCO_MHZ * HZ_PER_MHZ; in stm32_usbphyc_get_pll_params() 221 ndiv = fvco; in stm32_usbphyc_get_pll_params() 225 frac = fvco * (1 << 16); in stm32_usbphyc_get_pll_params()
|
/linux-6.12.1/drivers/video/fbdev/matrox/ |
D | g450_pll.c | 20 static inline unsigned int g450_vco2f(unsigned char p, unsigned int fvco) { in g450_vco2f() argument 21 return (p & 0x40) ? fvco : fvco >> ((p & 3) + 1); in g450_vco2f() 57 unsigned int *fvco, unsigned int mnp) in g450_nextpll() argument 60 unsigned int tvco = *fvco; in g450_nextpll() 80 *fvco = tvco; in g450_nextpll()
|
D | matroxfb_maven.c | 302 unsigned int fvco; in matroxfb_mavenclock() local 305 fvco = matroxfb_PLL_mavenclock(&maven1000_pll, ctl, htotal, vtotal, in, feed, &p, htotal2); in matroxfb_mavenclock() 306 if (!fvco) in matroxfb_mavenclock() 309 if (fvco <= 100000000) in matroxfb_mavenclock() 311 else if (fvco <= 140000000) in matroxfb_mavenclock() 313 else if (fvco <= 180000000) in matroxfb_mavenclock() 323 unsigned int fvco; in DAC1064_calcclock() local 326 fvco = matroxfb_PLL_calcclock(&maven_pll, freq, fmax, in, feed, &p); in DAC1064_calcclock() 328 if (fvco <= 100000) in DAC1064_calcclock() 330 else if (fvco <= 140000) in DAC1064_calcclock() [all …]
|
D | matroxfb_misc.c | 164 unsigned int diff, fvco; in matroxfb_PLL_calcclock() local 172 fvco = (fxtal * (n + 1)) / (m + 1); in matroxfb_PLL_calcclock() 173 if (fvco < fwant) in matroxfb_PLL_calcclock() 174 diff = fwant - fvco; in matroxfb_PLL_calcclock() 176 diff = fvco - fwant; in matroxfb_PLL_calcclock() 182 bestvco = fvco; in matroxfb_PLL_calcclock()
|
/linux-6.12.1/drivers/mmc/host/ |
D | sdhci-esdhc-mcf.c | 224 u32 fvco, fsys, fesdhc, temp; in esdhc_mcf_pltfm_set_clock() local 245 * fvco = fsys * outdvi1 + 1 in esdhc_mcf_pltfm_set_clock() 246 * fshdc = fvco / outdiv3 + 1 in esdhc_mcf_pltfm_set_clock() 250 fvco = fsys * ((temp & 0x1f) + 1); in esdhc_mcf_pltfm_set_clock() 251 fesdhc = fvco / (((temp >> 10) & 0x1f) + 1); in esdhc_mcf_pltfm_set_clock()
|
/linux-6.12.1/sound/soc/codecs/ |
D | nau8540.c | 663 u64 fvco, fvco_max; in nau8540_calc_fll_param() local 696 fvco = 256ULL * fs * 2 * mclk_src_scaling[i].param; in nau8540_calc_fll_param() 697 if (fvco > NAU_FVCO_MIN && fvco < NAU_FVCO_MAX && in nau8540_calc_fll_param() 698 fvco_max < fvco) { in nau8540_calc_fll_param() 699 fvco_max = fvco; in nau8540_calc_fll_param() 710 fvco = div_u64(fvco_max << 16, fref * fll_param->ratio); in nau8540_calc_fll_param() 711 fll_param->fll_int = (fvco >> 16) & 0x3FF; in nau8540_calc_fll_param() 712 fll_param->fll_frac = fvco & 0xFFFF; in nau8540_calc_fll_param()
|
D | nau8824.c | 1279 u64 fvco, fvco_max; in nau8824_calc_fll_param() local 1312 fvco = 256ULL * fs * 2 * mclk_src_scaling[i].param; in nau8824_calc_fll_param() 1313 if (fvco > NAU_FVCO_MIN && fvco < NAU_FVCO_MAX && in nau8824_calc_fll_param() 1314 fvco_max < fvco) { in nau8824_calc_fll_param() 1315 fvco_max = fvco; in nau8824_calc_fll_param() 1326 fvco = div_u64(fvco_max << 16, fref * fll_param->ratio); in nau8824_calc_fll_param() 1327 fll_param->fll_int = (fvco >> 16) & 0x3FF; in nau8824_calc_fll_param() 1328 fll_param->fll_frac = fvco & 0xFFFF; in nau8824_calc_fll_param()
|
D | nau8821.c | 1275 u64 fvco, fvco_max; in nau8821_calc_fll_param() local 1308 fvco = 256ULL * fs * 2 * mclk_src_scaling[i].param; in nau8821_calc_fll_param() 1309 if (fvco > NAU_FVCO_MIN && fvco < NAU_FVCO_MAX && in nau8821_calc_fll_param() 1310 fvco_max < fvco) { in nau8821_calc_fll_param() 1311 fvco_max = fvco; in nau8821_calc_fll_param() 1322 fvco = div_u64(fvco_max << 24, fref * fll_param->ratio); in nau8821_calc_fll_param() 1323 fll_param->fll_int = (fvco >> 24) & 0x3ff; in nau8821_calc_fll_param() 1324 fll_param->fll_frac = fvco & 0xffffff; in nau8821_calc_fll_param()
|
/linux-6.12.1/drivers/phy/freescale/ |
D | phy-fsl-imx8-mipi-dphy.c | 387 unsigned long fvco; in mixel_dphy_configure_lvds_phy() local 413 * ----- FVCO ------------ --------------- in mixel_dphy_configure_lvds_phy() 418 fvco = data_rate * co; in mixel_dphy_configure_lvds_phy() 420 if (fvco >= MIN_VCO_FREQ) in mixel_dphy_configure_lvds_phy() 424 if (fvco < MIN_VCO_FREQ || fvco > MAX_VCO_FREQ) { in mixel_dphy_configure_lvds_phy() 425 dev_err(&phy->dev, "VCO frequency %lu is out of range\n", fvco); in mixel_dphy_configure_lvds_phy()
|
/linux-6.12.1/drivers/gpu/drm/renesas/rcar-du/ |
D | rcar_lvds.c | 161 * Fin --> | 1/M | -Fpdf-> | PFD | --> | VCO | -Fvco-> | 1/E | --> Fout in rcar_lvds_d3_e3_pll_calc() 210 * Fvco = Fin * N / M in rcar_lvds_d3_e3_pll_calc() 217 unsigned long fvco; in rcar_lvds_d3_e3_pll_calc() local 226 * Fout = Fvco / E in rcar_lvds_d3_e3_pll_calc() 228 fvco = fpfd * n; in rcar_lvds_d3_e3_pll_calc() 229 e_min = fvco > 1039500000 ? 1 : 0; in rcar_lvds_d3_e3_pll_calc() 241 fout = fvco / (1 << e) / div7; in rcar_lvds_d3_e3_pll_calc()
|
/linux-6.12.1/Documentation/devicetree/bindings/clock/ |
D | starfive,jh7110-pll.yaml | 15 Fvco = Fref * (NI + NF) / M / Q1
|
/linux-6.12.1/drivers/phy/rockchip/ |
D | phy-rockchip-samsung-hdptx.c | 698 unsigned int fvco, sdc; in rk_hdptx_phy_clk_pll_calc() local 708 fvco = fout * sdiv; in rk_hdptx_phy_clk_pll_calc() 710 if (fvco < 2000000 || fvco > 4000000) in rk_hdptx_phy_clk_pll_calc() 713 mdiv = DIV_ROUND_UP(fvco, fref); in rk_hdptx_phy_clk_pll_calc() 717 if (fref * mdiv - fvco) { in rk_hdptx_phy_clk_pll_calc() 725 rational_best_approximation(fref * mdiv - fvco, in rk_hdptx_phy_clk_pll_calc()
|
/linux-6.12.1/drivers/gpu/drm/loongson/ |
D | lsdc_pixpll.h | 18 * L1 Fref Fvco L2
|