Lines Matching refs:div
189 for (clkt = table; clkt->div; clkt++) in _get_table_div()
191 return clkt->div; in _get_table_div()
197 unsigned int div) in _get_table_val() argument
201 for (clkt = table; clkt->div; clkt++) in _get_table_val()
202 if (clkt->div == div) in _get_table_val()
228 unsigned int div, unsigned long flags, in _get_val() argument
232 return div; in _get_val()
235 return __builtin_ffs(div) - 1; in _get_val()
238 return (div != 0U) ? div : BIT(width); in _get_val()
241 return _get_table_val(table, div); in _get_val()
243 return div - 1U; in _get_val()
247 unsigned int div) in _is_valid_table_div() argument
251 for (clkt = table; clkt->div; clkt++) in _is_valid_table_div()
252 if (clkt->div == div) in _is_valid_table_div()
259 unsigned int div, unsigned long flags) in _is_valid_div() argument
262 return IS_POWER_OF_TWO(div); in _is_valid_div()
265 return _is_valid_table_div(table, div); in _is_valid_div()
274 unsigned int div = 0U; in divider_get_val() local
277 div = UDIV_ROUND_NEAREST((uint64_t)parent_rate, rate); in divider_get_val()
279 if (!_is_valid_div(table, div, flags)) in divider_get_val()
282 value = _get_val(table, div, flags, width); in divider_get_val()
290 const struct div_cfg *divider = &priv->div[div_id]; in stm32_div_get_value()
309 divider = &priv->div[div_id]; in stm32_div_set_value()
324 const struct div_cfg *divider = &priv->div[div_id]; in stm32_div_get_rate()
326 unsigned int div = 0U; in stm32_div_get_rate() local
328 div = _get_div(divider->table, val, divider->flags, divider->width); in stm32_div_get_rate()
329 if (!div) in stm32_div_get_rate()
332 return ROUNDUP_DIV((uint64_t)prate, div); in stm32_div_get_rate()
339 const struct div_cfg *divider = &priv->div[div_id]; in stm32_div_set_rate()
557 if (d->div == 0U) in fixed_factor_get_rate()
560 return (unsigned long)(rate / d->div); in fixed_factor_get_rate()