Lines Matching refs:bcm_clk
974 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_enable() local
975 struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; in kona_peri_clk_enable()
977 return clk_gate(bcm_clk->ccu, bcm_clk->init_data.name, gate, true); in kona_peri_clk_enable()
982 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_disable() local
983 struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; in kona_peri_clk_disable()
985 (void)clk_gate(bcm_clk->ccu, bcm_clk->init_data.name, gate, false); in kona_peri_clk_disable()
990 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_is_enabled() local
991 struct bcm_clk_gate *gate = &bcm_clk->u.peri->gate; in kona_peri_clk_is_enabled()
993 return is_clk_gate_enabled(bcm_clk->ccu, gate) ? 1 : 0; in kona_peri_clk_is_enabled()
999 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_recalc_rate() local
1000 struct peri_clk_data *data = bcm_clk->u.peri; in kona_peri_clk_recalc_rate()
1002 return clk_recalc_rate(bcm_clk->ccu, &data->div, &data->pre_div, in kona_peri_clk_recalc_rate()
1009 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_round_rate() local
1010 struct bcm_clk_div *div = &bcm_clk->u.peri->div; in kona_peri_clk_round_rate()
1016 return round_rate(bcm_clk->ccu, div, &bcm_clk->u.peri->pre_div, in kona_peri_clk_round_rate()
1025 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_determine_rate() local
1038 WARN_ON_ONCE(bcm_clk->init_data.flags & CLK_SET_RATE_NO_REPARENT); in kona_peri_clk_determine_rate()
1039 parent_count = (u32)bcm_clk->init_data.num_parents; in kona_peri_clk_determine_rate()
1076 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_set_parent() local
1077 struct peri_clk_data *data = bcm_clk->u.peri; in kona_peri_clk_set_parent()
1095 ret = selector_write(bcm_clk->ccu, &data->gate, sel, trig, index); in kona_peri_clk_set_parent()
1098 bcm_clk->init_data.name); in kona_peri_clk_set_parent()
1103 bcm_clk->init_data.name); in kona_peri_clk_set_parent()
1111 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_get_parent() local
1112 struct peri_clk_data *data = bcm_clk->u.peri; in kona_peri_clk_get_parent()
1115 index = selector_read_index(bcm_clk->ccu, &data->sel); in kona_peri_clk_get_parent()
1124 struct kona_clk *bcm_clk = to_kona_clk(hw); in kona_peri_clk_set_rate() local
1125 struct peri_clk_data *data = bcm_clk->u.peri; in kona_peri_clk_set_rate()
1152 (void)round_rate(bcm_clk->ccu, div, &data->pre_div, in kona_peri_clk_set_rate()
1159 ret = divider_write(bcm_clk->ccu, &data->gate, &data->div, in kona_peri_clk_set_rate()
1163 bcm_clk->init_data.name); in kona_peri_clk_set_rate()
1167 bcm_clk->init_data.name); in kona_peri_clk_set_rate()
1185 static bool __peri_clk_init(struct kona_clk *bcm_clk) in __peri_clk_init() argument
1187 struct ccu_data *ccu = bcm_clk->ccu; in __peri_clk_init()
1188 struct peri_clk_data *peri = bcm_clk->u.peri; in __peri_clk_init()
1189 const char *name = bcm_clk->init_data.name; in __peri_clk_init()
1192 BUG_ON(bcm_clk->type != bcm_clk_peri); in __peri_clk_init()
1235 static bool __kona_clk_init(struct kona_clk *bcm_clk) in __kona_clk_init() argument
1237 switch (bcm_clk->type) { in __kona_clk_init()
1239 return __peri_clk_init(bcm_clk); in __kona_clk_init()
1258 struct kona_clk *bcm_clk; in kona_ccu_init() local
1262 bcm_clk = to_kona_clk(__clk_get_hw(clks[which])); in kona_ccu_init()
1263 success &= __kona_clk_init(bcm_clk); in kona_ccu_init()