Lines Matching refs:rate
140 static long vt8500_dclk_round_rate(struct clk_hw *hw, unsigned long rate, in vt8500_dclk_round_rate() argument
146 if (rate == 0) in vt8500_dclk_round_rate()
149 divisor = *prate / rate; in vt8500_dclk_round_rate()
152 if (rate * divisor < *prate) in vt8500_dclk_round_rate()
166 static int vt8500_dclk_set_rate(struct clk_hw *hw, unsigned long rate, in vt8500_dclk_set_rate() argument
173 if (rate == 0) in vt8500_dclk_set_rate()
176 divisor = parent_rate / rate; in vt8500_dclk_set_rate()
358 static void vt8500_find_pll_bits(unsigned long rate, unsigned long parent_rate, in vt8500_find_pll_bits() argument
364 if ((rate < parent_rate * 4) || (rate > parent_rate * 62)) { in vt8500_find_pll_bits()
370 if (rate <= parent_rate * 31) in vt8500_find_pll_bits()
376 *multiplier = rate / (parent_rate / *prediv); in vt8500_find_pll_bits()
379 if (tclk != rate) in vt8500_find_pll_bits()
381 rate, tclk); in vt8500_find_pll_bits()
384 static void wm8650_find_pll_bits(unsigned long rate, unsigned long parent_rate, in wm8650_find_pll_bits() argument
398 if (tclk > rate) in wm8650_find_pll_bits()
401 rate_err = rate - tclk; in wm8650_find_pll_bits()
418 pr_warn("%s: requested rate %lu, found rate %lu\n", __func__, rate, in wm8650_find_pll_bits()
419 rate - best_err); in wm8650_find_pll_bits()
452 static void wm8750_find_pll_bits(unsigned long rate, unsigned long parent_rate, in wm8750_find_pll_bits() argument
466 if (tclk > rate) in wm8750_find_pll_bits()
469 rate_err = rate - tclk; in wm8750_find_pll_bits()
487 pr_warn("%s: requested rate %lu, found rate %lu\n", __func__, rate, in wm8750_find_pll_bits()
488 rate - best_err); in wm8750_find_pll_bits()
496 static void wm8850_find_pll_bits(unsigned long rate, unsigned long parent_rate, in wm8850_find_pll_bits() argument
511 if (tclk > rate) in wm8850_find_pll_bits()
514 rate_err = rate - tclk; in wm8850_find_pll_bits()
531 pr_warn("%s: requested rate %lu, found rate %lu\n", __func__, rate, in wm8850_find_pll_bits()
532 rate - best_err); in wm8850_find_pll_bits()
539 static int vtwm_pll_set_rate(struct clk_hw *hw, unsigned long rate, in vtwm_pll_set_rate() argument
551 vt8500_find_pll_bits(rate, parent_rate, &mul, &div1); in vtwm_pll_set_rate()
555 wm8650_find_pll_bits(rate, parent_rate, &mul, &div1, &div2); in vtwm_pll_set_rate()
559 wm8750_find_pll_bits(rate, parent_rate, &filter, &mul, &div1, &div2); in vtwm_pll_set_rate()
563 wm8850_find_pll_bits(rate, parent_rate, &mul, &div1, &div2); in vtwm_pll_set_rate()
582 static long vtwm_pll_round_rate(struct clk_hw *hw, unsigned long rate, in vtwm_pll_round_rate() argument
591 vt8500_find_pll_bits(rate, *prate, &mul, &div1); in vtwm_pll_round_rate()
595 wm8650_find_pll_bits(rate, *prate, &mul, &div1, &div2); in vtwm_pll_round_rate()
599 wm8750_find_pll_bits(rate, *prate, &filter, &mul, &div1, &div2); in vtwm_pll_round_rate()
603 wm8850_find_pll_bits(rate, *prate, &mul, &div1, &div2); in vtwm_pll_round_rate()