Lines Matching refs:characteristics
32 const struct clk_master_characteristics *characteristics; member
91 const struct clk_master_characteristics *characteristics = in clk_master_div_recalc_rate() local
92 master->characteristics; in clk_master_div_recalc_rate()
103 rate /= characteristics->divisors[div]; in clk_master_div_recalc_rate()
105 if (rate < characteristics->output.min) in clk_master_div_recalc_rate()
107 else if (rate > characteristics->output.max) in clk_master_div_recalc_rate()
126 div = master->characteristics->divisors[div]; in clk_master_div_save_context()
147 div = master->characteristics->divisors[div]; in clk_master_div_restore_context()
165 const struct clk_master_characteristics *characteristics = in clk_master_div_set() local
166 master->characteristics; in clk_master_div_set()
172 for (i = 0; i < ARRAY_SIZE(characteristics->divisors); i++) { in clk_master_div_set()
173 if (!characteristics->divisors[i]) in clk_master_div_set()
176 if (div == characteristics->divisors[i]) in clk_master_div_set()
179 if (max_div < characteristics->divisors[i]) { in clk_master_div_set()
180 max_div = characteristics->divisors[i]; in clk_master_div_set()
197 rate /= characteristics->divisors[div_index]; in clk_master_div_set()
198 if (rate < characteristics->output.min) in clk_master_div_set()
200 else if (rate > characteristics->output.max) in clk_master_div_set()
212 master->div = characteristics->divisors[div_index]; in clk_master_div_set()
251 const struct clk_master_characteristics *characteristics = in clk_master_div_notifier_fn() local
252 master_div->characteristics; in clk_master_div_notifier_fn()
286 cnd->old_rate * characteristics->divisors[div], in clk_master_div_notifier_fn()
304 new_parent_rate = cnd->new_rate * characteristics->divisors[div]; in clk_master_div_notifier_fn()
306 for (i = 0; i < ARRAY_SIZE(characteristics->divisors); i++) { in clk_master_div_notifier_fn()
307 if (!characteristics->divisors[i]) in clk_master_div_notifier_fn()
311 characteristics->divisors[i]); in clk_master_div_notifier_fn()
313 tmp_diff = characteristics->output.max - new_rate; in clk_master_div_notifier_fn()
318 new_div = characteristics->divisors[i]; in clk_master_div_notifier_fn()
381 const struct clk_master_characteristics *characteristics = in clk_master_pres_recalc_rate() local
382 master->characteristics; in clk_master_pres_recalc_rate()
392 if (pres == MASTER_PRES_MAX && characteristics->have_div3_pres) in clk_master_pres_recalc_rate()
428 if (pres == MASTER_PRES_MAX && master->characteristics->have_div3_pres) in clk_master_pres_save_context()
452 if (pres == MASTER_PRES_MAX && master->characteristics->have_div3_pres) in clk_master_pres_restore_context()
477 const struct clk_master_characteristics *characteristics, in at91_clk_register_master_internal() argument
502 master->characteristics = characteristics; in at91_clk_register_master_internal()
513 master->div = characteristics->divisors[mckr]; in at91_clk_register_master_internal()
531 const struct clk_master_characteristics *characteristics, in at91_clk_register_master_pres() argument
536 characteristics, in at91_clk_register_master_pres()
545 const struct clk_master_characteristics *characteristics, in at91_clk_register_master_div() argument
558 characteristics, ops, in at91_clk_register_master_div()