/linux/drivers/clk/actions/ |
H A D | owl-divider.c | 17 const struct owl_divider_hw *div_hw, in owl_divider_helper_round_rate() argument 22 div_hw->table, div_hw->width, in owl_divider_helper_round_rate() 23 div_hw->div_flags); in owl_divider_helper_round_rate() 43 val = reg >> div_hw->shift; in owl_divider_helper_recalc_rate() 44 val &= (1 << div_hw->width) - 1; in owl_divider_helper_recalc_rate() 47 val, div_hw->table, in owl_divider_helper_recalc_rate() 48 div_hw->div_flags, in owl_divider_helper_recalc_rate() 49 div_hw->width); in owl_divider_helper_recalc_rate() 70 div_hw->width, 0); in owl_divider_helper_set_rate() 73 reg &= ~GENMASK(div_hw->width + div_hw->shift - 1, div_hw->shift); in owl_divider_helper_set_rate() [all …]
|
H A D | owl-divider.h | 25 struct owl_divider_hw div_hw; member 41 .div_hw = OWL_DIVIDER_HW(_reg, _shift, _width, \ 60 const struct owl_divider_hw *div_hw, 65 const struct owl_divider_hw *div_hw, 69 const struct owl_divider_hw *div_hw,
|
H A D | owl-composite.h | 22 struct owl_divider_hw div_hw; member 42 .rate.div_hw = _div, \ 56 .rate.div_hw = _div, \
|
H A D | owl-composite.c | 62 rate = owl_divider_helper_round_rate(&comp->common, &comp->rate.div_hw, in owl_comp_div_determine_rate() 76 return owl_divider_helper_recalc_rate(&comp->common, &comp->rate.div_hw, in owl_comp_div_recalc_rate() 85 return owl_divider_helper_set_rate(&comp->common, &comp->rate.div_hw, in owl_comp_div_set_rate()
|
/linux/drivers/clk/tegra/ |
H A D | clk-periph.c | 41 struct clk_hw *div_hw = &periph->divider.hw; in clk_periph_recalc_rate() local 43 __clk_hw_set_clk(div_hw, hw); in clk_periph_recalc_rate() 45 return div_ops->recalc_rate(div_hw, parent_rate); in clk_periph_recalc_rate() 53 struct clk_hw *div_hw = &periph->divider.hw; in clk_periph_determine_rate() local 56 __clk_hw_set_clk(div_hw, hw); in clk_periph_determine_rate() 58 rate = div_ops->round_rate(div_hw, req->rate, &req->best_parent_rate); in clk_periph_determine_rate() 71 struct clk_hw *div_hw = &periph->divider.hw; in clk_periph_set_rate() local 73 __clk_hw_set_clk(div_hw, hw); in clk_periph_set_rate() 75 return div_ops->set_rate(div_hw, rate, parent_rate); in clk_periph_set_rate() 122 struct clk_hw *div_hw = &periph->divider.hw; in clk_periph_restore_context() local [all …]
|
H A D | clk-super.c | 149 struct clk_hw *div_hw = &super->frac_div.hw; in clk_super_determine_rate() local 152 __clk_hw_set_clk(div_hw, hw); in clk_super_determine_rate() 154 rate = super->div_ops->round_rate(div_hw, req->rate, in clk_super_determine_rate() 167 struct clk_hw *div_hw = &super->frac_div.hw; in clk_super_recalc_rate() local 169 __clk_hw_set_clk(div_hw, hw); in clk_super_recalc_rate() 171 return super->div_ops->recalc_rate(div_hw, parent_rate); in clk_super_recalc_rate() 178 struct clk_hw *div_hw = &super->frac_div.hw; in clk_super_set_rate() local 180 __clk_hw_set_clk(div_hw, hw); in clk_super_set_rate() 182 return super->div_ops->set_rate(div_hw, rate, parent_rate); in clk_super_set_rate() 188 struct clk_hw *div_hw = &super->frac_div.hw; in clk_super_restore_context() local [all …]
|
/linux/drivers/clk/ |
H A D | clk-bm1880.c | 593 struct bm1880_div_clock *div = &div_hw->div; in bm1880_clk_div_recalc_rate() 615 struct bm1880_div_clock *div = &div_hw->div; in bm1880_clk_div_round_rate() 637 struct bm1880_div_clock *div = &div_hw->div; in bm1880_clk_div_set_rate() 644 div->width, div_hw->div.flags); in bm1880_clk_div_set_rate() 648 if (div_hw->lock) in bm1880_clk_div_set_rate() 649 spin_lock_irqsave(div_hw->lock, flags); in bm1880_clk_div_set_rate() 651 __acquire(div_hw->lock); in bm1880_clk_div_set_rate() 658 if (div_hw->lock) in bm1880_clk_div_set_rate() 659 spin_unlock_irqrestore(div_hw->lock, flags); in bm1880_clk_div_set_rate() 661 __release(div_hw->lock); in bm1880_clk_div_set_rate() [all …]
|
H A D | clk-stm32h7.c | 351 struct clk_hw *div_hw; member 368 struct clk_hw *div_hw; in get_cfg_composite_div() local 372 mux_hw = div_hw = gate_hw = NULL; in get_cfg_composite_div() 394 div_hw = &div->hw; in get_cfg_composite_div() 415 composite->div_hw = div_hw; in get_cfg_composite_div() 1326 c_cfg.div_hw, c_cfg.div_ops, in stm32h7_rcc_init() 1349 c_cfg.div_hw, c_cfg.div_ops, in stm32h7_rcc_init() 1364 c_cfg.div_hw, c_cfg.div_ops, in stm32h7_rcc_init() 1378 c_cfg.div_hw, c_cfg.div_ops, in stm32h7_rcc_init()
|
/linux/drivers/clk/imx/ |
H A D | clk-composite-93.c | 196 struct clk_hw *div_hw, *gate_hw; in imx93_clk_composite_flags() local 217 div_hw = &div->hw; in imx93_clk_composite_flags() 230 mux_hw, &clk_mux_ro_ops, div_hw, in imx93_clk_composite_flags() 244 mux_hw, &imx93_clk_composite_mux_ops, div_hw, in imx93_clk_composite_flags()
|
H A D | clk-composite-8m.c | 242 struct clk_hw *div_hw, *gate_hw = NULL; in __imx8m_clk_hw_composite() local 264 div_hw = &div->hw; in __imx8m_clk_hw_composite() 303 mux_hw, mux_ops, div_hw, in __imx8m_clk_hw_composite()
|
/linux/drivers/clk/nxp/ |
H A D | clk-lpc18xx-ccu.c | 208 struct clk_hw *div_hw = NULL; in lpc18xx_ccu_register_branch_gate_div() local 220 div_hw = &div->hw; in lpc18xx_ccu_register_branch_gate_div() 229 div_hw, div_ops, in lpc18xx_ccu_register_branch_gate_div()
|
H A D | clk-lpc32xx.c | 1434 struct clk_hw *mux_hw = NULL, *div_hw = NULL, *gate_hw = NULL; in lpc32xx_clk_register() local 1447 div_hw = &div0->clk.hw; in lpc32xx_clk_register() 1456 mux_hw, mops, div_hw, dops, in lpc32xx_clk_register()
|
/linux/drivers/clk/mediatek/ |
H A D | clk-mtk.c | 225 struct clk_hw *mux_hw = NULL, *gate_hw = NULL, *div_hw = NULL; in mtk_clk_register_composite() local 281 div_hw = &div->hw; in mtk_clk_register_composite() 287 div_hw, div_ops, in mtk_clk_register_composite()
|
/linux/drivers/clk/stm32/ |
H A D | clk-stm32mp1.c | 633 struct clk_hw *mux_hw, *div_hw, *gate_hw; in clk_stm32_register_composite() local 636 div_hw = NULL; in clk_stm32_register_composite() 654 div_hw = _get_stm32_div(dev, base, cfg->div, lock); in clk_stm32_register_composite() 656 if (!IS_ERR(div_hw)) { in clk_stm32_register_composite() 676 mux_hw, mux_ops, div_hw, div_ops, in clk_stm32_register_composite()
|