Lines Matching refs:clki

466 	struct ufs_clk_info *clki;  in ufshcd_print_clk_freqs()  local
472 list_for_each_entry(clki, head, list) { in ufshcd_print_clk_freqs()
473 if (!IS_ERR_OR_NULL(clki->clk) && clki->min_freq && in ufshcd_print_clk_freqs()
474 clki->max_freq) in ufshcd_print_clk_freqs()
476 clki->name, clki->curr_freq); in ufshcd_print_clk_freqs()
1029 struct ufs_clk_info *clki; in ufshcd_set_clk_freq() local
1035 list_for_each_entry(clki, head, list) { in ufshcd_set_clk_freq()
1036 if (!IS_ERR_OR_NULL(clki->clk)) { in ufshcd_set_clk_freq()
1037 if (scale_up && clki->max_freq) { in ufshcd_set_clk_freq()
1038 if (clki->curr_freq == clki->max_freq) in ufshcd_set_clk_freq()
1041 ret = clk_set_rate(clki->clk, clki->max_freq); in ufshcd_set_clk_freq()
1044 __func__, clki->name, in ufshcd_set_clk_freq()
1045 clki->max_freq, ret); in ufshcd_set_clk_freq()
1049 "scaled up", clki->name, in ufshcd_set_clk_freq()
1050 clki->curr_freq, in ufshcd_set_clk_freq()
1051 clki->max_freq); in ufshcd_set_clk_freq()
1053 clki->curr_freq = clki->max_freq; in ufshcd_set_clk_freq()
1055 } else if (!scale_up && clki->min_freq) { in ufshcd_set_clk_freq()
1056 if (clki->curr_freq == clki->min_freq) in ufshcd_set_clk_freq()
1059 ret = clk_set_rate(clki->clk, clki->min_freq); in ufshcd_set_clk_freq()
1062 __func__, clki->name, in ufshcd_set_clk_freq()
1063 clki->min_freq, ret); in ufshcd_set_clk_freq()
1067 "scaled down", clki->name, in ufshcd_set_clk_freq()
1068 clki->curr_freq, in ufshcd_set_clk_freq()
1069 clki->min_freq); in ufshcd_set_clk_freq()
1070 clki->curr_freq = clki->min_freq; in ufshcd_set_clk_freq()
1074 clki->name, clk_get_rate(clki->clk)); in ufshcd_set_clk_freq()
1123 struct ufs_clk_info *clki; in ufshcd_is_devfreq_scaling_required() local
1129 list_for_each_entry(clki, head, list) { in ufshcd_is_devfreq_scaling_required()
1130 if (!IS_ERR_OR_NULL(clki->clk)) { in ufshcd_is_devfreq_scaling_required()
1131 if (scale_up && clki->max_freq) { in ufshcd_is_devfreq_scaling_required()
1132 if (clki->curr_freq == clki->max_freq) in ufshcd_is_devfreq_scaling_required()
1135 } else if (!scale_up && clki->min_freq) { in ufshcd_is_devfreq_scaling_required()
1136 if (clki->curr_freq == clki->min_freq) in ufshcd_is_devfreq_scaling_required()
1409 struct ufs_clk_info *clki; in ufshcd_devfreq_target() local
1422 clki = list_first_entry(&hba->clk_list_head, struct ufs_clk_info, list); in ufshcd_devfreq_target()
1424 *freq = (unsigned long) clk_round_rate(clki->clk, *freq); in ufshcd_devfreq_target()
1440 scale_up = *freq == clki->max_freq; in ufshcd_devfreq_target()
1442 *freq = clki->min_freq; in ufshcd_devfreq_target()
1473 struct ufs_clk_info *clki; in ufshcd_devfreq_get_dev_status() local
1486 clki = list_first_entry(clk_list, struct ufs_clk_info, list); in ufshcd_devfreq_get_dev_status()
1492 stat->current_frequency = clki->curr_freq; in ufshcd_devfreq_get_dev_status()
1517 struct ufs_clk_info *clki; in ufshcd_devfreq_init() local
1525 clki = list_first_entry(clk_list, struct ufs_clk_info, list); in ufshcd_devfreq_init()
1526 dev_pm_opp_add(hba->dev, clki->min_freq, 0); in ufshcd_devfreq_init()
1527 dev_pm_opp_add(hba->dev, clki->max_freq, 0); in ufshcd_devfreq_init()
1539 dev_pm_opp_remove(hba->dev, clki->min_freq); in ufshcd_devfreq_init()
1540 dev_pm_opp_remove(hba->dev, clki->max_freq); in ufshcd_devfreq_init()
1552 struct ufs_clk_info *clki; in ufshcd_devfreq_remove() local
1560 clki = list_first_entry(clk_list, struct ufs_clk_info, list); in ufshcd_devfreq_remove()
1561 dev_pm_opp_remove(hba->dev, clki->min_freq); in ufshcd_devfreq_remove()
1562 dev_pm_opp_remove(hba->dev, clki->max_freq); in ufshcd_devfreq_remove()
8919 struct ufs_clk_info *clki; in ufshcd_setup_clocks() local
8932 list_for_each_entry(clki, head, list) { in ufshcd_setup_clocks()
8933 if (!IS_ERR_OR_NULL(clki->clk)) { in ufshcd_setup_clocks()
8939 clki->keep_link_active) in ufshcd_setup_clocks()
8942 clk_state_changed = on ^ clki->enabled; in ufshcd_setup_clocks()
8943 if (on && !clki->enabled) { in ufshcd_setup_clocks()
8944 ret = clk_prepare_enable(clki->clk); in ufshcd_setup_clocks()
8947 __func__, clki->name, ret); in ufshcd_setup_clocks()
8950 } else if (!on && clki->enabled) { in ufshcd_setup_clocks()
8951 clk_disable_unprepare(clki->clk); in ufshcd_setup_clocks()
8953 clki->enabled = on; in ufshcd_setup_clocks()
8955 clki->name, on ? "en" : "dis"); in ufshcd_setup_clocks()
8965 list_for_each_entry(clki, head, list) { in ufshcd_setup_clocks()
8966 if (!IS_ERR_OR_NULL(clki->clk) && clki->enabled) in ufshcd_setup_clocks()
8967 clk_disable_unprepare(clki->clk); in ufshcd_setup_clocks()
9000 struct ufs_clk_info *clki; in ufshcd_init_clocks() local
9007 list_for_each_entry(clki, head, list) { in ufshcd_init_clocks()
9008 if (!clki->name) in ufshcd_init_clocks()
9011 clki->clk = devm_clk_get(dev, clki->name); in ufshcd_init_clocks()
9012 if (IS_ERR(clki->clk)) { in ufshcd_init_clocks()
9013 ret = PTR_ERR(clki->clk); in ufshcd_init_clocks()
9015 __func__, clki->name, ret); in ufshcd_init_clocks()
9024 if (!strcmp(clki->name, "ref_clk")) in ufshcd_init_clocks()
9025 ufshcd_parse_dev_ref_clk_freq(hba, clki->clk); in ufshcd_init_clocks()
9027 if (clki->max_freq) { in ufshcd_init_clocks()
9028 ret = clk_set_rate(clki->clk, clki->max_freq); in ufshcd_init_clocks()
9031 __func__, clki->name, in ufshcd_init_clocks()
9032 clki->max_freq, ret); in ufshcd_init_clocks()
9035 clki->curr_freq = clki->max_freq; in ufshcd_init_clocks()
9038 clki->name, clk_get_rate(clki->clk)); in ufshcd_init_clocks()