Home
last modified time | relevance | path

Searched full:fvco (Results 1 – 25 of 54) sorted by relevance

123

/linux/drivers/clk/samsung/
H A Dclk-pll.c154 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()
225 u64 fvco = parent_rate; in samsung_pll35xx_recalc_rate() local
232 fvco *= mdiv; in samsung_pll35xx_recalc_rate()
[all …]
/linux/drivers/clk/imx/
H A Dclk-fracn-gppll.c75 * 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/drivers/clk/sprd/
H A Dpll.c156 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()
H A Dpll.h48 * @fvco: fvco threshold rate
49 * @fflag: fvco flag
59 u64 fvco; member
76 .fvco = _fvco, \
/linux/drivers/media/tuners/
H A Dfc0011.c171 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 …]
H A Dtda18250.c436 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/drivers/gpu/drm/sprd/
H A Dmegacores_pll.c44 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()
H A Dsprd_dsi.h76 u32 fvco; member
/linux/drivers/media/dvb-frontends/
H A Dstb6100.c301 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 …]
/linux/drivers/clk/
H A Dclk-sp7021.c139 /* 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()
H A Dclk-axi-clkgen.c132 unsigned long f, dout, best_f, fvco; in axi_clkgen_calc_params() local
159 fvco = fin * m / d; in axi_clkgen_calc_params()
161 dout = DIV_ROUND_CLOSEST(fvco, fout); in axi_clkgen_calc_params()
163 f = fvco / dout; in axi_clkgen_calc_params()
/linux/drivers/video/fbdev/matrox/
H A Dg450_pll.c20 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()
H A Dmatroxfb_maven.c302 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 …]
H A Dmatroxfb_misc.c164 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()
H A Dmatroxfb_Ti3026.c287 unsigned int fvco; in Ti3026_calcclock() local
292 fvco = PLL_calcclock(minfo, freq, fmax, &lin, &lfeed, &lpost); in Ti3026_calcclock()
293 fvco >>= (*post = lpost); in Ti3026_calcclock()
296 return fvco; in Ti3026_calcclock()
H A Dmatroxfb_DAC1064.c42 unsigned int fvco; in DAC1064_calcclock() local
49 fvco = PLL_calcclock(minfo, freq, fmax, in, feed, &p); in DAC1064_calcclock()
52 if (fvco <= 100000) in DAC1064_calcclock()
54 else if (fvco <= 140000) in DAC1064_calcclock()
56 else if (fvco <= 180000) in DAC1064_calcclock()
/linux/sound/soc/codecs/
H A Dnau8540.c663 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()
H A Dnau8824.c1279 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()
/linux/drivers/phy/freescale/
H A Dphy-fsl-imx8-mipi-dphy.c387 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/drivers/gpu/drm/renesas/rcar-du/
H A Drcar_lvds.c161 * 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()
H A Drcar_du_crtc.c94 * fin fvco fout fclkout in rcar_du_dpll_divider()
100 * fclkout = fvco / P / FDPLL -- (1) in rcar_du_dpll_divider()
102 * fin/M = fvco/P/N in rcar_du_dpll_divider()
104 * fvco = fin * P * N / M -- (2) in rcar_du_dpll_divider()
115 * 2kHz < fvco < 4096MHz in rcar_du_dpll_divider()
129 * To optimize calculations, use fout instead of fvco in rcar_du_dpll_divider()
/linux/Documentation/devicetree/bindings/clock/
H A Dstarfive,jh7110-pll.yaml15 Fvco = Fref * (NI + NF) / M / Q1
/linux/drivers/phy/rockchip/
H A Dphy-rockchip-samsung-hdptx.c690 unsigned int fvco, sdc; in rk_hdptx_phy_clk_pll_calc() local
700 fvco = fout * sdiv; in rk_hdptx_phy_clk_pll_calc()
702 if (fvco < 2000000 || fvco > 4000000) in rk_hdptx_phy_clk_pll_calc()
705 mdiv = DIV_ROUND_UP(fvco, fref); in rk_hdptx_phy_clk_pll_calc()
709 if (fref * mdiv - fvco) { in rk_hdptx_phy_clk_pll_calc()
717 rational_best_approximation(fref * mdiv - fvco, in rk_hdptx_phy_clk_pll_calc()
/linux/drivers/gpu/drm/loongson/
H A Dlsdc_pixpll.h18 * L1 Fref Fvco L2
/linux/drivers/gpu/drm/mgag200/
H A Dmgag200_drv.h162 * Fvco = Fref * (N / M)
163 * Fo = Fvco / P

123