Lines Matching defs:clocks
3 * Ingenic XBurst SoCs SYSOST clocks driver
81 struct clk_hw_onecell_data *clocks;
272 struct clk_hw_onecell_data *clocks)
297 clocks->hws[idx] = &ost_clk->hw;
456 ost->clocks = kzalloc(struct_size(ost->clocks, hws, ost->soc_info->num_channels),
458 if (!ost->clocks) {
463 ost->clocks->num = ost->soc_info->num_channels;
465 for (i = 0; i < ost->clocks->num; i++) {
466 ret = ingenic_ost_register_clock(ost, i, &x1000_ost_clk_info[i], ost->clocks);
473 ret = of_clk_add_hw_provider(np, of_clk_hw_onecell_get, ost->clocks);
484 for (i = 0; i < ost->clocks->num; i++)
485 if (ost->clocks->hws[i])
486 clk_hw_unregister(ost->clocks->hws[i]);
487 kfree(ost->clocks);
505 pr_crit("%s: Failed to initialize OST clocks: %d\n", __func__, ret);