Lines Matching refs:parent_rate
127 unsigned long parent_rate, in calc_best_divided_rate() argument
138 div = parent_rate / rate; in calc_best_divided_rate()
142 divided_rate = parent_rate / div; in calc_best_divided_rate()
143 divided_rate_down = parent_rate / div_up; in calc_best_divided_rate()
158 unsigned long parent_rate) in pbclk_recalc_rate() argument
162 return parent_rate / pbclk_read_pbdiv(pb); in pbclk_recalc_rate()
166 unsigned long *parent_rate) in pbclk_round_rate() argument
168 return calc_best_divided_rate(rate, *parent_rate, in pbclk_round_rate()
173 unsigned long parent_rate) in pbclk_set_rate() argument
187 div = DIV_ROUND_CLOSEST(parent_rate, rate); in pbclk_set_rate()
299 static unsigned long roclk_calc_rate(unsigned long parent_rate, in roclk_calc_rate() argument
311 rate64 = parent_rate; in roclk_calc_rate()
315 rate64 = parent_rate / (rodiv << 1); in roclk_calc_rate()
317 rate64 = parent_rate; in roclk_calc_rate()
323 unsigned long parent_rate, in roclk_calc_div_trim() argument
340 if (parent_rate <= rate) { in roclk_calc_div_trim()
346 div = parent_rate / (rate << 1); in roclk_calc_div_trim()
347 frac = parent_rate; in roclk_calc_div_trim()
364 unsigned long parent_rate) in roclk_recalc_rate() argument
377 return roclk_calc_rate(parent_rate, rodiv, rotrim); in roclk_recalc_rate()
381 unsigned long *parent_rate) in roclk_round_rate() argument
386 roclk_calc_div_trim(rate, *parent_rate, &rodiv, &rotrim); in roclk_round_rate()
389 return roclk_calc_rate(*parent_rate, rodiv, rotrim); in roclk_round_rate()
397 unsigned long parent_rate, best_parent_rate = 0; in roclk_determine_rate() local
408 parent_rate = clk_hw_get_rate(parent_clk); in roclk_determine_rate()
409 if (req->rate > parent_rate) in roclk_determine_rate()
412 nearest_rate = roclk_round_rate(hw, req->rate, &parent_rate); in roclk_determine_rate()
416 best_parent_rate = parent_rate; in roclk_determine_rate()
482 unsigned long parent_rate, in roclk_set_rate_and_parent() argument
491 roclk_calc_div_trim(rate, parent_rate, &rodiv, &trim); in roclk_set_rate_and_parent()
494 parent_rate, rate, rodiv, trim); in roclk_set_rate_and_parent()
543 unsigned long parent_rate) in roclk_set_rate() argument
547 return roclk_set_rate_and_parent(hw, rate, parent_rate, index); in roclk_set_rate()
605 unsigned long parent_rate, in spll_calc_mult_div() argument
613 parent_rate /= pll->idiv; in spll_calc_mult_div()
617 rate64 = parent_rate; in spll_calc_mult_div()
638 rate, parent_rate, best_mul, best_div, best_rate); in spll_calc_mult_div()
650 unsigned long parent_rate) in spll_clk_recalc_rate() argument
665 pll_in_rate = parent_rate / pll->idiv; in spll_clk_recalc_rate()
674 unsigned long *parent_rate) in spll_clk_round_rate() argument
678 return spll_calc_mult_div(pll, rate, *parent_rate, NULL, NULL); in spll_clk_round_rate()
682 unsigned long parent_rate) in spll_clk_set_rate() argument
689 ret = spll_calc_mult_div(pll, rate, parent_rate, &mult, &odiv); in spll_clk_set_rate()
777 static unsigned long sclk_get_rate(struct clk_hw *hw, unsigned long parent_rate) in sclk_get_rate() argument
785 return parent_rate / div; in sclk_get_rate()
789 unsigned long *parent_rate) in sclk_round_rate() argument
791 return calc_best_divided_rate(rate, *parent_rate, SLEW_SYSDIV, 1); in sclk_round_rate()
795 unsigned long rate, unsigned long parent_rate) in sclk_set_rate() argument
802 div = parent_rate / rate; in sclk_set_rate()
1001 unsigned long parent_rate) in sosc_clk_calc_rate() argument