Lines Matching refs:fll_div
2732 static int fll_factors(struct _fll_div *fll_div, unsigned int Fref, in fll_factors() argument
2742 fll_div->fll_refclk_div = 0; in fll_factors()
2745 fll_div->fll_refclk_div++; in fll_factors()
2770 fll_div->fll_outdiv = div - 1; in fll_factors()
2777 fll_div->fll_fratio = fll_fratios[i].fll_fratio; in fll_factors()
2787 fll_div->n = target / (fratio * Fref); in fll_factors()
2790 fll_div->theta = 0; in fll_factors()
2791 fll_div->lambda = 0; in fll_factors()
2795 fll_div->theta = (target - (fll_div->n * fratio * Fref)) in fll_factors()
2797 fll_div->lambda = (fratio * Fref) / gcd_fll; in fll_factors()
2801 fll_div->n, fll_div->theta, fll_div->lambda); in fll_factors()
2803 fll_div->fll_fratio, fll_div->fll_outdiv, in fll_factors()
2804 fll_div->fll_refclk_div); in fll_factors()
2813 struct _fll_div fll_div; in wm8962_set_fll() local
2837 ret = fll_factors(&fll_div, Fref, Fout); in wm8962_set_fll()
2861 if (fll_div.theta || fll_div.lambda) in wm8962_set_fll()
2870 (fll_div.fll_outdiv << WM8962_FLL_OUTDIV_SHIFT) | in wm8962_set_fll()
2871 (fll_div.fll_refclk_div)); in wm8962_set_fll()
2874 WM8962_FLL_FRATIO_MASK, fll_div.fll_fratio); in wm8962_set_fll()
2876 snd_soc_component_write(component, WM8962_FLL_CONTROL_6, fll_div.theta); in wm8962_set_fll()
2877 snd_soc_component_write(component, WM8962_FLL_CONTROL_7, fll_div.lambda); in wm8962_set_fll()
2878 snd_soc_component_write(component, WM8962_FLL_CONTROL_8, fll_div.n); in wm8962_set_fll()