Lines Matching full:provider

10 #include <linux/clk-provider.h>
226 struct omap_clkctrl_provider *provider = data; in _ti_omap4_clkctrl_xlate() local
235 list_for_each_entry(iter, &provider->clocks, node) { in _ti_omap4_clkctrl_xlate()
281 _ti_clkctrl_clk_register(struct omap_clkctrl_provider *provider, in _ti_clkctrl_clk_register() argument
318 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_clkctrl_clk_register()
329 _ti_clkctrl_setup_gate(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_gate() argument
343 if (_ti_clkctrl_clk_register(provider, node, &clk_hw->hw, offset, in _ti_clkctrl_setup_gate()
350 _ti_clkctrl_setup_mux(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_mux() argument
378 if (_ti_clkctrl_clk_register(provider, node, &mux->hw, offset, in _ti_clkctrl_setup_mux()
385 _ti_clkctrl_setup_div(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_div() argument
414 if (_ti_clkctrl_clk_register(provider, node, &div->hw, offset, in _ti_clkctrl_setup_div()
421 _ti_clkctrl_setup_subclks(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_subclks() argument
434 _ti_clkctrl_setup_gate(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
439 _ti_clkctrl_setup_div(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
444 _ti_clkctrl_setup_mux(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
508 struct omap_clkctrl_provider *provider; in _ti_omap4_clkctrl_setup() local
578 provider = kzalloc(sizeof(*provider), GFP_KERNEL); in _ti_omap4_clkctrl_setup()
579 if (!provider) in _ti_omap4_clkctrl_setup()
582 provider->base = of_iomap(node, 0); in _ti_omap4_clkctrl_setup()
587 provider->clkdm_name = kasprintf(GFP_KERNEL, in _ti_omap4_clkctrl_setup()
597 provider->clkdm_name = kasprintf(GFP_KERNEL, "%pOFnxxx", node->parent); in _ti_omap4_clkctrl_setup()
598 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
599 kfree(provider); in _ti_omap4_clkctrl_setup()
607 provider->clkdm_name[strlen(provider->clkdm_name) - 2] = 0; in _ti_omap4_clkctrl_setup()
609 provider->clkdm_name = kasprintf(GFP_KERNEL, "%pOFn", node); in _ti_omap4_clkctrl_setup()
610 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
611 kfree(provider); in _ti_omap4_clkctrl_setup()
619 provider->clkdm_name[strlen(provider->clkdm_name) - 7] = 0; in _ti_omap4_clkctrl_setup()
622 strcat(provider->clkdm_name, "clkdm"); in _ti_omap4_clkctrl_setup()
625 c = provider->clkdm_name; in _ti_omap4_clkctrl_setup()
633 INIT_LIST_HEAD(&provider->clocks); in _ti_omap4_clkctrl_setup()
649 hw->enable_reg.ptr = provider->base + reg_data->offset; in _ti_omap4_clkctrl_setup()
651 _ti_clkctrl_setup_subclks(provider, node, reg_data, in _ti_omap4_clkctrl_setup()
664 hw->clkdm_name = provider->clkdm_name; in _ti_omap4_clkctrl_setup()
692 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_omap4_clkctrl_setup()
697 ret = of_clk_add_hw_provider(node, _ti_omap4_clkctrl_xlate, provider); in _ti_omap4_clkctrl_setup()
699 ti_clk_retry_init(node, provider, _clkctrl_add_provider); in _ti_omap4_clkctrl_setup()