Lines Matching refs:tcu_clk

66 	struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw);  in ingenic_tcu_enable()  local
67 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_enable()
68 struct ingenic_tcu *tcu = tcu_clk->tcu; in ingenic_tcu_enable()
77 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_disable() local
78 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_disable()
79 struct ingenic_tcu *tcu = tcu_clk->tcu; in ingenic_tcu_disable()
86 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_is_enabled() local
87 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_is_enabled()
90 regmap_read(tcu_clk->tcu->map, TCU_REG_TSR, &value); in ingenic_tcu_is_enabled()
97 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_enable_regs() local
98 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_enable_regs()
99 struct ingenic_tcu *tcu = tcu_clk->tcu; in ingenic_tcu_enable_regs()
114 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_disable_regs() local
115 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_disable_regs()
116 struct ingenic_tcu *tcu = tcu_clk->tcu; in ingenic_tcu_disable_regs()
123 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_get_parent() local
124 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_get_parent()
128 ret = regmap_read(tcu_clk->tcu->map, info->tcsr_reg, &val); in ingenic_tcu_get_parent()
129 WARN_ONCE(ret < 0, "Unable to read TCSR %d", tcu_clk->idx); in ingenic_tcu_get_parent()
136 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_set_parent() local
137 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_set_parent()
143 ret = regmap_update_bits(tcu_clk->tcu->map, info->tcsr_reg, in ingenic_tcu_set_parent()
145 WARN_ONCE(ret < 0, "Unable to update TCSR %d", tcu_clk->idx); in ingenic_tcu_set_parent()
156 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_recalc_rate() local
157 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_recalc_rate()
161 ret = regmap_read(tcu_clk->tcu->map, info->tcsr_reg, &prescale); in ingenic_tcu_recalc_rate()
162 WARN_ONCE(ret < 0, "Unable to read TCSR %d", tcu_clk->idx); in ingenic_tcu_recalc_rate()
197 struct ingenic_tcu_clk *tcu_clk = to_tcu_clk(hw); in ingenic_tcu_set_rate() local
198 const struct ingenic_tcu_clk_info *info = tcu_clk->info; in ingenic_tcu_set_rate()
205 ret = regmap_update_bits(tcu_clk->tcu->map, info->tcsr_reg, in ingenic_tcu_set_rate()
208 WARN_ONCE(ret < 0, "Unable to update TCSR %d", tcu_clk->idx); in ingenic_tcu_set_rate()
269 struct ingenic_tcu_clk *tcu_clk; in ingenic_tcu_register_clock() local
272 tcu_clk = kzalloc(sizeof(*tcu_clk), GFP_KERNEL); in ingenic_tcu_register_clock()
273 if (!tcu_clk) in ingenic_tcu_register_clock()
276 tcu_clk->hw.init = &info->init_data; in ingenic_tcu_register_clock()
277 tcu_clk->idx = idx; in ingenic_tcu_register_clock()
278 tcu_clk->info = info; in ingenic_tcu_register_clock()
279 tcu_clk->tcu = tcu; in ingenic_tcu_register_clock()
282 ingenic_tcu_enable_regs(&tcu_clk->hw); in ingenic_tcu_register_clock()
284 ingenic_tcu_disable_regs(&tcu_clk->hw); in ingenic_tcu_register_clock()
286 err = clk_hw_register(NULL, &tcu_clk->hw); in ingenic_tcu_register_clock()
288 kfree(tcu_clk); in ingenic_tcu_register_clock()
292 clocks->hws[idx] = &tcu_clk->hw; in ingenic_tcu_register_clock()