Lines Matching refs:rate
497 unsigned long *rate) in clk_fs660c32_vco_get_rate() argument
501 *rate = input * nd; in clk_fs660c32_vco_get_rate()
510 unsigned long rate = 0; in quadfs_pll_fs660c32_recalc_rate() local
514 if (clk_fs660c32_vco_get_rate(parent_rate, ¶ms, &rate)) in quadfs_pll_fs660c32_recalc_rate()
520 return rate; in quadfs_pll_fs660c32_recalc_rate()
552 static long quadfs_pll_fs660c32_round_rate(struct clk_hw *hw, unsigned long rate in quadfs_pll_fs660c32_round_rate() argument
557 if (!clk_fs660c32_vco_get_params(*prate, rate, ¶ms)) in quadfs_pll_fs660c32_round_rate()
558 clk_fs660c32_vco_get_rate(*prate, ¶ms, &rate); in quadfs_pll_fs660c32_round_rate()
562 rate, (unsigned int)params.sdiv, in quadfs_pll_fs660c32_round_rate()
566 return rate; in quadfs_pll_fs660c32_round_rate()
569 static int quadfs_pll_fs660c32_set_rate(struct clk_hw *hw, unsigned long rate, in quadfs_pll_fs660c32_set_rate() argument
577 if (!rate || !parent_rate) in quadfs_pll_fs660c32_set_rate()
580 if (!clk_fs660c32_vco_get_params(parent_rate, rate, ¶ms)) in quadfs_pll_fs660c32_set_rate()
798 unsigned long *rate) in clk_fs216c65_get_rate() argument
812 *rate = div64_u64(P15 * nd * input * 32, res); in clk_fs216c65_get_rate()
818 unsigned long *rate) in clk_fs432c65_get_rate() argument
832 *rate = div64_u64(P15 * nd * input * 32, res); in clk_fs432c65_get_rate()
840 const struct stm_fs *fs, unsigned long *rate) in clk_fs660c32_dig_get_rate() argument
857 *rate = (unsigned long)div64_u64(input * P20 * 32, res); in clk_fs660c32_dig_get_rate()
898 unsigned long prev_rate, rate = 0; in quadfs_find_best_rate() local
905 prev_rate = rate; in quadfs_find_best_rate()
910 clk_fs_get_rate(prate, &fs->data->rtbl[index], &rate); in quadfs_find_best_rate()
912 diff_rate = abs(drate - rate); in quadfs_find_best_rate()
915 rate = prev_rate; in quadfs_find_best_rate()
922 if (drate == rate) in quadfs_find_best_rate()
923 return rate; in quadfs_find_best_rate()
930 return rate; in quadfs_find_best_rate()
937 unsigned long rate = 0; in quadfs_recalc_rate() local
947 if (clk_fs_get_rate(parent_rate, ¶ms, &rate)) { in quadfs_recalc_rate()
952 pr_debug("%s:%s rate %lu\n", clk_hw_get_name(hw), __func__, rate); in quadfs_recalc_rate()
954 return rate; in quadfs_recalc_rate()
957 static long quadfs_round_rate(struct clk_hw *hw, unsigned long rate, in quadfs_round_rate() argument
962 rate = quadfs_find_best_rate(hw, rate, *prate, ¶ms); in quadfs_round_rate()
966 rate, (unsigned int)params.sdiv, (unsigned int)params.mdiv, in quadfs_round_rate()
969 return rate; in quadfs_round_rate()
989 static int quadfs_set_rate(struct clk_hw *hw, unsigned long rate, in quadfs_set_rate() argument
997 if (!rate || !parent_rate) in quadfs_set_rate()
1002 hwrate = quadfs_find_best_rate(hw, rate, parent_rate, ¶ms); in quadfs_set_rate()