Lines Matching refs:clki

380 	struct ufs_clk_info *clki;  in ufshcd_print_clk_freqs()  local
386 list_for_each_entry(clki, head, list) { in ufshcd_print_clk_freqs()
387 if (!IS_ERR_OR_NULL(clki->clk) && clki->min_freq && in ufshcd_print_clk_freqs()
388 clki->max_freq) in ufshcd_print_clk_freqs()
390 clki->name, clki->curr_freq); in ufshcd_print_clk_freqs()
922 struct ufs_clk_info *clki; in ufshcd_scale_clks() local
934 list_for_each_entry(clki, head, list) { in ufshcd_scale_clks()
935 if (!IS_ERR_OR_NULL(clki->clk)) { in ufshcd_scale_clks()
936 if (scale_up && clki->max_freq) { in ufshcd_scale_clks()
937 if (clki->curr_freq == clki->max_freq) in ufshcd_scale_clks()
941 ret = clk_set_rate(clki->clk, clki->max_freq); in ufshcd_scale_clks()
944 __func__, clki->name, in ufshcd_scale_clks()
945 clki->max_freq, ret); in ufshcd_scale_clks()
949 "scaled up", clki->name, in ufshcd_scale_clks()
950 clki->curr_freq, in ufshcd_scale_clks()
951 clki->max_freq); in ufshcd_scale_clks()
953 clki->curr_freq = clki->max_freq; in ufshcd_scale_clks()
955 } else if (!scale_up && clki->min_freq) { in ufshcd_scale_clks()
956 if (clki->curr_freq == clki->min_freq) in ufshcd_scale_clks()
960 ret = clk_set_rate(clki->clk, clki->min_freq); in ufshcd_scale_clks()
963 __func__, clki->name, in ufshcd_scale_clks()
964 clki->min_freq, ret); in ufshcd_scale_clks()
968 "scaled down", clki->name, in ufshcd_scale_clks()
969 clki->curr_freq, in ufshcd_scale_clks()
970 clki->min_freq); in ufshcd_scale_clks()
971 clki->curr_freq = clki->min_freq; in ufshcd_scale_clks()
975 clki->name, clk_get_rate(clki->clk)); in ufshcd_scale_clks()
998 struct ufs_clk_info *clki; in ufshcd_is_devfreq_scaling_required() local
1004 list_for_each_entry(clki, head, list) { in ufshcd_is_devfreq_scaling_required()
1005 if (!IS_ERR_OR_NULL(clki->clk)) { in ufshcd_is_devfreq_scaling_required()
1006 if (scale_up && clki->max_freq) { in ufshcd_is_devfreq_scaling_required()
1007 if (clki->curr_freq == clki->max_freq) in ufshcd_is_devfreq_scaling_required()
1010 } else if (!scale_up && clki->min_freq) { in ufshcd_is_devfreq_scaling_required()
1011 if (clki->curr_freq == clki->min_freq) in ufshcd_is_devfreq_scaling_required()
1245 struct ufs_clk_info *clki; in ufshcd_devfreq_target() local
1265 clki = list_first_entry(&hba->clk_list_head, struct ufs_clk_info, list); in ufshcd_devfreq_target()
1266 scale_up = (*freq == clki->max_freq) ? true : false; in ufshcd_devfreq_target()
1337 struct ufs_clk_info *clki; in ufshcd_devfreq_init() local
1345 clki = list_first_entry(clk_list, struct ufs_clk_info, list); in ufshcd_devfreq_init()
1346 dev_pm_opp_add(hba->dev, clki->min_freq, 0); in ufshcd_devfreq_init()
1347 dev_pm_opp_add(hba->dev, clki->max_freq, 0); in ufshcd_devfreq_init()
1357 dev_pm_opp_remove(hba->dev, clki->min_freq); in ufshcd_devfreq_init()
1358 dev_pm_opp_remove(hba->dev, clki->max_freq); in ufshcd_devfreq_init()
1370 struct ufs_clk_info *clki; in ufshcd_devfreq_remove() local
1378 clki = list_first_entry(clk_list, struct ufs_clk_info, list); in ufshcd_devfreq_remove()
1379 dev_pm_opp_remove(hba->dev, clki->min_freq); in ufshcd_devfreq_remove()
1380 dev_pm_opp_remove(hba->dev, clki->max_freq); in ufshcd_devfreq_remove()
6992 struct ufs_clk_info *clki; in __ufshcd_setup_clocks() local
7012 list_for_each_entry(clki, head, list) { in __ufshcd_setup_clocks()
7013 if (!IS_ERR_OR_NULL(clki->clk)) { in __ufshcd_setup_clocks()
7014 if (skip_ref_clk && !strcmp(clki->name, "ref_clk")) in __ufshcd_setup_clocks()
7017 clk_state_changed = on ^ clki->enabled; in __ufshcd_setup_clocks()
7018 if (on && !clki->enabled) { in __ufshcd_setup_clocks()
7019 ret = clk_prepare_enable(clki->clk); in __ufshcd_setup_clocks()
7022 __func__, clki->name, ret); in __ufshcd_setup_clocks()
7025 } else if (!on && clki->enabled) { in __ufshcd_setup_clocks()
7026 clk_disable_unprepare(clki->clk); in __ufshcd_setup_clocks()
7028 clki->enabled = on; in __ufshcd_setup_clocks()
7030 clki->name, on ? "en" : "dis"); in __ufshcd_setup_clocks()
7047 list_for_each_entry(clki, head, list) { in __ufshcd_setup_clocks()
7048 if (!IS_ERR_OR_NULL(clki->clk) && clki->enabled) in __ufshcd_setup_clocks()
7049 clk_disable_unprepare(clki->clk); in __ufshcd_setup_clocks()
7074 struct ufs_clk_info *clki; in ufshcd_init_clocks() local
7081 list_for_each_entry(clki, head, list) { in ufshcd_init_clocks()
7082 if (!clki->name) in ufshcd_init_clocks()
7085 clki->clk = devm_clk_get(dev, clki->name); in ufshcd_init_clocks()
7086 if (IS_ERR(clki->clk)) { in ufshcd_init_clocks()
7087 ret = PTR_ERR(clki->clk); in ufshcd_init_clocks()
7089 __func__, clki->name, ret); in ufshcd_init_clocks()
7093 if (clki->max_freq) { in ufshcd_init_clocks()
7094 ret = clk_set_rate(clki->clk, clki->max_freq); in ufshcd_init_clocks()
7097 __func__, clki->name, in ufshcd_init_clocks()
7098 clki->max_freq, ret); in ufshcd_init_clocks()
7101 clki->curr_freq = clki->max_freq; in ufshcd_init_clocks()
7104 clki->name, clk_get_rate(clki->clk)); in ufshcd_init_clocks()