Lines Matching refs:provider
234 struct omap_clkctrl_provider *provider = data; in _ti_omap4_clkctrl_xlate() local
244 list_for_each_entry(entry, &provider->clocks, node) { in _ti_omap4_clkctrl_xlate()
293 _ti_clkctrl_clk_register(struct omap_clkctrl_provider *provider, in _ti_clkctrl_clk_register() argument
330 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_clkctrl_clk_register()
341 _ti_clkctrl_setup_gate(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_gate() argument
355 if (_ti_clkctrl_clk_register(provider, node, &clk_hw->hw, offset, in _ti_clkctrl_setup_gate()
362 _ti_clkctrl_setup_mux(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_mux() argument
390 if (_ti_clkctrl_clk_register(provider, node, &mux->hw, offset, in _ti_clkctrl_setup_mux()
397 _ti_clkctrl_setup_div(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_div() argument
426 if (_ti_clkctrl_clk_register(provider, node, &div->hw, offset, in _ti_clkctrl_setup_div()
433 _ti_clkctrl_setup_subclks(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_subclks() argument
446 _ti_clkctrl_setup_gate(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
451 _ti_clkctrl_setup_div(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
456 _ti_clkctrl_setup_mux(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
502 struct omap_clkctrl_provider *provider; in _ti_omap4_clkctrl_setup() local
593 provider = kzalloc(sizeof(*provider), GFP_KERNEL); in _ti_omap4_clkctrl_setup()
594 if (!provider) in _ti_omap4_clkctrl_setup()
597 provider->base = of_iomap(node, 0); in _ti_omap4_clkctrl_setup()
602 provider->clkdm_name = kasprintf(GFP_KERNEL, in _ti_omap4_clkctrl_setup()
604 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
605 kfree(provider); in _ti_omap4_clkctrl_setup()
616 provider->clkdm_name = kasprintf(GFP_KERNEL, "%pOFnxxx", node->parent); in _ti_omap4_clkctrl_setup()
617 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
618 kfree(provider); in _ti_omap4_clkctrl_setup()
626 provider->clkdm_name[strlen(provider->clkdm_name) - 2] = 0; in _ti_omap4_clkctrl_setup()
628 provider->clkdm_name = kasprintf(GFP_KERNEL, "%pOFn", node); in _ti_omap4_clkctrl_setup()
629 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
630 kfree(provider); in _ti_omap4_clkctrl_setup()
638 provider->clkdm_name[strlen(provider->clkdm_name) - 7] = 0; in _ti_omap4_clkctrl_setup()
641 strcat(provider->clkdm_name, "clkdm"); in _ti_omap4_clkctrl_setup()
644 c = provider->clkdm_name; in _ti_omap4_clkctrl_setup()
652 INIT_LIST_HEAD(&provider->clocks); in _ti_omap4_clkctrl_setup()
668 hw->enable_reg.ptr = provider->base + reg_data->offset; in _ti_omap4_clkctrl_setup()
670 _ti_clkctrl_setup_subclks(provider, node, reg_data, in _ti_omap4_clkctrl_setup()
683 hw->clkdm_name = provider->clkdm_name; in _ti_omap4_clkctrl_setup()
711 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_omap4_clkctrl_setup()
716 ret = of_clk_add_hw_provider(node, _ti_omap4_clkctrl_xlate, provider); in _ti_omap4_clkctrl_setup()
718 ti_clk_retry_init(node, provider, _clkctrl_add_provider); in _ti_omap4_clkctrl_setup()