Lines Matching refs:clk
24 struct clk *clk; member
39 struct scmi_clk *clk = NULL; in plat_scmi_clock_count() local
41 SLIST_FOREACH(clk, &scmi_clk_list, link) { in plat_scmi_clock_count()
42 if (clk->channel_id == channel_id) { in plat_scmi_clock_count()
44 max_id = MAX(max_id, clk->scmi_id); in plat_scmi_clock_count()
58 struct scmi_clk *clk = NULL; in clk_scmi_get_by_id() local
60 SLIST_FOREACH(clk, &scmi_clk_list, link) in clk_scmi_get_by_id()
61 if (clk->channel_id == channel_id && clk->scmi_id == scmi_id) in clk_scmi_get_by_id()
62 return clk; in clk_scmi_get_by_id()
70 struct scmi_clk *clk = NULL; in plat_scmi_clock_get_name() local
72 clk = clk_scmi_get_by_id(channel_id, scmi_id); in plat_scmi_clock_get_name()
73 if (!clk) in plat_scmi_clock_get_name()
76 return clk_get_name(clk->clk); in plat_scmi_clock_get_name()
86 struct scmi_clk *clk = NULL; in plat_scmi_clock_rates_array() local
88 clk = clk_scmi_get_by_id(channel_id, scmi_id); in plat_scmi_clock_rates_array()
89 if (!clk) in plat_scmi_clock_rates_array()
92 res = clk_get_rates_array(clk->clk, start_index, rates, nb_elts); in plat_scmi_clock_rates_array()
104 struct scmi_clk *clk = NULL; in plat_scmi_clock_get_rate() local
106 clk = clk_scmi_get_by_id(channel_id, scmi_id); in plat_scmi_clock_get_rate()
107 if (!clk) in plat_scmi_clock_get_rate()
110 return clk_get_rate(clk->clk); in plat_scmi_clock_get_rate()
118 struct scmi_clk *clk = NULL; in plat_scmi_clock_set_rate() local
120 clk = clk_scmi_get_by_id(channel_id, scmi_id); in plat_scmi_clock_set_rate()
121 if (!clk) in plat_scmi_clock_set_rate()
124 res = clk_set_rate(clk->clk, rate); in plat_scmi_clock_set_rate()
134 struct scmi_clk *clk = NULL; in plat_scmi_clock_get_state() local
136 clk = clk_scmi_get_by_id(channel_id, scmi_id); in plat_scmi_clock_get_state()
137 if (!clk) in plat_scmi_clock_get_state()
140 return clk->enabled; in plat_scmi_clock_get_state()
147 struct scmi_clk *clk = NULL; in plat_scmi_clock_set_state() local
149 clk = clk_scmi_get_by_id(channel_id, scmi_id); in plat_scmi_clock_set_state()
150 if (!clk) { in plat_scmi_clock_set_state()
158 if (!clk->enabled) { in plat_scmi_clock_set_state()
159 if (clk_enable(clk->clk)) in plat_scmi_clock_set_state()
161 clk->enabled = true; in plat_scmi_clock_set_state()
164 if (clk->enabled) { in plat_scmi_clock_set_state()
165 clk_disable(clk->clk); in plat_scmi_clock_set_state()
166 clk->enabled = false; in plat_scmi_clock_set_state()
173 static TEE_Result clk_check_scmi_id(struct clk *new_clk, in clk_check_scmi_id()
177 struct scmi_clk *clk = NULL; in clk_check_scmi_id() local
179 SLIST_FOREACH(clk, &scmi_clk_list, link) { in clk_check_scmi_id()
180 if (clk->channel_id == channel_id && clk->scmi_id == scmi_id) { in clk_check_scmi_id()
193 TEE_Result scmi_clk_add(struct clk *clk, unsigned int channel_id, in scmi_clk_add() argument
202 res = clk_check_scmi_id(clk, channel_id, scmi_id); in scmi_clk_add()
210 scmi_clk->clk = clk; in scmi_clk_add()