Lines Matching refs:clks
62 clk_data->clk_data.clks = clk_table; in hisi_clk_alloc()
94 clk_data->clk_data.clks = clk_table; in hisi_clk_init()
105 int hisi_clk_register_fixed_rate(const struct hisi_fixed_rate_clock *clks, in hisi_clk_register_fixed_rate() argument
112 clk = clk_register_fixed_rate(NULL, clks[i].name, in hisi_clk_register_fixed_rate()
113 clks[i].parent_name, in hisi_clk_register_fixed_rate()
114 clks[i].flags, in hisi_clk_register_fixed_rate()
115 clks[i].fixed_rate); in hisi_clk_register_fixed_rate()
118 __func__, clks[i].name); in hisi_clk_register_fixed_rate()
121 data->clk_data.clks[clks[i].id] = clk; in hisi_clk_register_fixed_rate()
128 clk_unregister_fixed_rate(data->clk_data.clks[clks[i].id]); in hisi_clk_register_fixed_rate()
134 int hisi_clk_register_fixed_factor(const struct hisi_fixed_factor_clock *clks, in hisi_clk_register_fixed_factor() argument
142 clk = clk_register_fixed_factor(NULL, clks[i].name, in hisi_clk_register_fixed_factor()
143 clks[i].parent_name, in hisi_clk_register_fixed_factor()
144 clks[i].flags, clks[i].mult, in hisi_clk_register_fixed_factor()
145 clks[i].div); in hisi_clk_register_fixed_factor()
148 __func__, clks[i].name); in hisi_clk_register_fixed_factor()
151 data->clk_data.clks[clks[i].id] = clk; in hisi_clk_register_fixed_factor()
158 clk_unregister_fixed_factor(data->clk_data.clks[clks[i].id]); in hisi_clk_register_fixed_factor()
164 int hisi_clk_register_mux(const struct hisi_mux_clock *clks, in hisi_clk_register_mux() argument
172 u32 mask = BIT(clks[i].width) - 1; in hisi_clk_register_mux()
174 clk = clk_register_mux_table(NULL, clks[i].name, in hisi_clk_register_mux()
175 clks[i].parent_names, in hisi_clk_register_mux()
176 clks[i].num_parents, clks[i].flags, in hisi_clk_register_mux()
177 base + clks[i].offset, clks[i].shift, in hisi_clk_register_mux()
178 mask, clks[i].mux_flags, in hisi_clk_register_mux()
179 clks[i].table, &hisi_clk_lock); in hisi_clk_register_mux()
182 __func__, clks[i].name); in hisi_clk_register_mux()
186 if (clks[i].alias) in hisi_clk_register_mux()
187 clk_register_clkdev(clk, clks[i].alias, NULL); in hisi_clk_register_mux()
189 data->clk_data.clks[clks[i].id] = clk; in hisi_clk_register_mux()
196 clk_unregister_mux(data->clk_data.clks[clks[i].id]); in hisi_clk_register_mux()
202 int hisi_clk_register_divider(const struct hisi_divider_clock *clks, in hisi_clk_register_divider() argument
210 clk = clk_register_divider_table(NULL, clks[i].name, in hisi_clk_register_divider()
211 clks[i].parent_name, in hisi_clk_register_divider()
212 clks[i].flags, in hisi_clk_register_divider()
213 base + clks[i].offset, in hisi_clk_register_divider()
214 clks[i].shift, clks[i].width, in hisi_clk_register_divider()
215 clks[i].div_flags, in hisi_clk_register_divider()
216 clks[i].table, in hisi_clk_register_divider()
220 __func__, clks[i].name); in hisi_clk_register_divider()
224 if (clks[i].alias) in hisi_clk_register_divider()
225 clk_register_clkdev(clk, clks[i].alias, NULL); in hisi_clk_register_divider()
227 data->clk_data.clks[clks[i].id] = clk; in hisi_clk_register_divider()
234 clk_unregister_divider(data->clk_data.clks[clks[i].id]); in hisi_clk_register_divider()
240 int hisi_clk_register_gate(const struct hisi_gate_clock *clks, in hisi_clk_register_gate() argument
248 clk = clk_register_gate(NULL, clks[i].name, in hisi_clk_register_gate()
249 clks[i].parent_name, in hisi_clk_register_gate()
250 clks[i].flags, in hisi_clk_register_gate()
251 base + clks[i].offset, in hisi_clk_register_gate()
252 clks[i].bit_idx, in hisi_clk_register_gate()
253 clks[i].gate_flags, in hisi_clk_register_gate()
257 __func__, clks[i].name); in hisi_clk_register_gate()
261 if (clks[i].alias) in hisi_clk_register_gate()
262 clk_register_clkdev(clk, clks[i].alias, NULL); in hisi_clk_register_gate()
264 data->clk_data.clks[clks[i].id] = clk; in hisi_clk_register_gate()
271 clk_unregister_gate(data->clk_data.clks[clks[i].id]); in hisi_clk_register_gate()
277 void hisi_clk_register_gate_sep(const struct hisi_gate_clock *clks, in hisi_clk_register_gate_sep() argument
285 clk = hisi_register_clkgate_sep(NULL, clks[i].name, in hisi_clk_register_gate_sep()
286 clks[i].parent_name, in hisi_clk_register_gate_sep()
287 clks[i].flags, in hisi_clk_register_gate_sep()
288 base + clks[i].offset, in hisi_clk_register_gate_sep()
289 clks[i].bit_idx, in hisi_clk_register_gate_sep()
290 clks[i].gate_flags, in hisi_clk_register_gate_sep()
294 __func__, clks[i].name); in hisi_clk_register_gate_sep()
298 if (clks[i].alias) in hisi_clk_register_gate_sep()
299 clk_register_clkdev(clk, clks[i].alias, NULL); in hisi_clk_register_gate_sep()
301 data->clk_data.clks[clks[i].id] = clk; in hisi_clk_register_gate_sep()
306 void __init hi6220_clk_register_divider(const struct hi6220_divider_clock *clks, in hi6220_clk_register_divider() argument
314 clk = hi6220_register_clkdiv(NULL, clks[i].name, in hi6220_clk_register_divider()
315 clks[i].parent_name, in hi6220_clk_register_divider()
316 clks[i].flags, in hi6220_clk_register_divider()
317 base + clks[i].offset, in hi6220_clk_register_divider()
318 clks[i].shift, in hi6220_clk_register_divider()
319 clks[i].width, in hi6220_clk_register_divider()
320 clks[i].mask_bit, in hi6220_clk_register_divider()
324 __func__, clks[i].name); in hi6220_clk_register_divider()
328 if (clks[i].alias) in hi6220_clk_register_divider()
329 clk_register_clkdev(clk, clks[i].alias, NULL); in hi6220_clk_register_divider()
331 data->clk_data.clks[clks[i].id] = clk; in hi6220_clk_register_divider()