Lines Matching refs:mf

310 		struct clk_pllv3_vf610_mf mf)  in clk_pllv3_vf610_mf_to_rate()  argument
315 temp64 *= mf.mfn; in clk_pllv3_vf610_mf_to_rate()
316 do_div(temp64, mf.mfd); in clk_pllv3_vf610_mf_to_rate()
318 return (parent_rate * mf.mfi) + temp64; in clk_pllv3_vf610_mf_to_rate()
324 struct clk_pllv3_vf610_mf mf; in clk_pllv3_vf610_rate_to_mf() local
327 mf.mfi = (rate >= 22 * parent_rate) ? 22 : 20; in clk_pllv3_vf610_rate_to_mf()
328 mf.mfd = 0x3fffffff; /* use max supported value for best accuracy */ in clk_pllv3_vf610_rate_to_mf()
330 if (rate <= parent_rate * mf.mfi) in clk_pllv3_vf610_rate_to_mf()
331 mf.mfn = 0; in clk_pllv3_vf610_rate_to_mf()
332 else if (rate >= parent_rate * (mf.mfi + 1)) in clk_pllv3_vf610_rate_to_mf()
333 mf.mfn = mf.mfd - 1; in clk_pllv3_vf610_rate_to_mf()
336 temp64 = rate - parent_rate * mf.mfi; in clk_pllv3_vf610_rate_to_mf()
337 temp64 *= mf.mfd; in clk_pllv3_vf610_rate_to_mf()
339 mf.mfn = temp64; in clk_pllv3_vf610_rate_to_mf()
342 return mf; in clk_pllv3_vf610_rate_to_mf()
349 struct clk_pllv3_vf610_mf mf; in clk_pllv3_vf610_recalc_rate() local
351 mf.mfn = readl_relaxed(pll->base + pll->num_offset); in clk_pllv3_vf610_recalc_rate()
352 mf.mfd = readl_relaxed(pll->base + pll->denom_offset); in clk_pllv3_vf610_recalc_rate()
353 mf.mfi = (readl_relaxed(pll->base) & pll->div_mask) ? 22 : 20; in clk_pllv3_vf610_recalc_rate()
355 return clk_pllv3_vf610_mf_to_rate(parent_rate, mf); in clk_pllv3_vf610_recalc_rate()
361 struct clk_pllv3_vf610_mf mf = clk_pllv3_vf610_rate_to_mf(*prate, rate); in clk_pllv3_vf610_round_rate() local
363 return clk_pllv3_vf610_mf_to_rate(*prate, mf); in clk_pllv3_vf610_round_rate()
370 struct clk_pllv3_vf610_mf mf = in clk_pllv3_vf610_set_rate() local
375 if (mf.mfi == 20) in clk_pllv3_vf610_set_rate()
381 writel_relaxed(mf.mfn, pll->base + pll->num_offset); in clk_pllv3_vf610_set_rate()
382 writel_relaxed(mf.mfd, pll->base + pll->denom_offset); in clk_pllv3_vf610_set_rate()