Lines Matching refs:ctrl
264 struct clk_muxing_ctrl *ctrl = (struct clk_muxing_ctrl *)data; in clk_muxing_get_src() local
270 for (n = 0; n < ctrl->num_muxes; n++) { in clk_muxing_get_src()
272 to_clk_mux(__clk_get_hw(ctrl->muxes[n])); in clk_muxing_get_src()
274 return ctrl->muxes[n]; in clk_muxing_get_src()
282 struct clk_muxing_ctrl *ctrl; in kirkwood_clk_muxing_setup() local
290 ctrl = kzalloc(sizeof(*ctrl), GFP_KERNEL); in kirkwood_clk_muxing_setup()
291 if (WARN_ON(!ctrl)) in kirkwood_clk_muxing_setup()
295 ctrl->lock = &ctrl_gating_lock; in kirkwood_clk_muxing_setup()
301 ctrl->num_muxes = n; in kirkwood_clk_muxing_setup()
302 ctrl->muxes = kcalloc(ctrl->num_muxes, sizeof(struct clk *), in kirkwood_clk_muxing_setup()
304 if (WARN_ON(!ctrl->muxes)) in kirkwood_clk_muxing_setup()
307 for (n = 0; n < ctrl->num_muxes; n++) { in kirkwood_clk_muxing_setup()
308 ctrl->muxes[n] = clk_register_mux(NULL, desc[n].name, in kirkwood_clk_muxing_setup()
311 desc[n].width, desc[n].flags, ctrl->lock); in kirkwood_clk_muxing_setup()
312 WARN_ON(IS_ERR(ctrl->muxes[n])); in kirkwood_clk_muxing_setup()
315 of_clk_add_provider(np, clk_muxing_get_src, ctrl); in kirkwood_clk_muxing_setup()
319 kfree(ctrl); in kirkwood_clk_muxing_setup()