Lines Matching refs:provider
231 struct omap_clkctrl_provider *provider = data; in _ti_omap4_clkctrl_xlate() local
241 list_for_each_entry(entry, &provider->clocks, node) { in _ti_omap4_clkctrl_xlate()
256 _ti_clkctrl_clk_register(struct omap_clkctrl_provider *provider, in _ti_clkctrl_clk_register() argument
295 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_clkctrl_clk_register()
306 _ti_clkctrl_setup_gate(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_gate() argument
320 if (_ti_clkctrl_clk_register(provider, node, &clk_hw->hw, offset, in _ti_clkctrl_setup_gate()
327 _ti_clkctrl_setup_mux(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_mux() argument
355 if (_ti_clkctrl_clk_register(provider, node, &mux->hw, offset, in _ti_clkctrl_setup_mux()
362 _ti_clkctrl_setup_div(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_div() argument
391 if (_ti_clkctrl_clk_register(provider, node, &div->hw, offset, in _ti_clkctrl_setup_div()
398 _ti_clkctrl_setup_subclks(struct omap_clkctrl_provider *provider, in _ti_clkctrl_setup_subclks() argument
411 _ti_clkctrl_setup_gate(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
416 _ti_clkctrl_setup_div(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
421 _ti_clkctrl_setup_mux(provider, node, data->offset, in _ti_clkctrl_setup_subclks()
442 struct omap_clkctrl_provider *provider; in _ti_omap4_clkctrl_setup() local
531 provider = kzalloc(sizeof(*provider), GFP_KERNEL); in _ti_omap4_clkctrl_setup()
532 if (!provider) in _ti_omap4_clkctrl_setup()
535 provider->base = of_iomap(node, 0); in _ti_omap4_clkctrl_setup()
538 provider->clkdm_name = kasprintf(GFP_KERNEL, "%pOFnxxx", node->parent); in _ti_omap4_clkctrl_setup()
539 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
540 kfree(provider); in _ti_omap4_clkctrl_setup()
548 provider->clkdm_name[strlen(provider->clkdm_name) - 2] = 0; in _ti_omap4_clkctrl_setup()
550 provider->clkdm_name = kasprintf(GFP_KERNEL, "%pOFn", node); in _ti_omap4_clkctrl_setup()
551 if (!provider->clkdm_name) { in _ti_omap4_clkctrl_setup()
552 kfree(provider); in _ti_omap4_clkctrl_setup()
560 provider->clkdm_name[strlen(provider->clkdm_name) - 7] = 0; in _ti_omap4_clkctrl_setup()
563 strcat(provider->clkdm_name, "clkdm"); in _ti_omap4_clkctrl_setup()
566 c = provider->clkdm_name; in _ti_omap4_clkctrl_setup()
574 INIT_LIST_HEAD(&provider->clocks); in _ti_omap4_clkctrl_setup()
590 hw->enable_reg.ptr = provider->base + reg_data->offset; in _ti_omap4_clkctrl_setup()
592 _ti_clkctrl_setup_subclks(provider, node, reg_data, in _ti_omap4_clkctrl_setup()
605 hw->clkdm_name = provider->clkdm_name; in _ti_omap4_clkctrl_setup()
633 list_add(&clkctrl_clk->node, &provider->clocks); in _ti_omap4_clkctrl_setup()
638 ret = of_clk_add_hw_provider(node, _ti_omap4_clkctrl_xlate, provider); in _ti_omap4_clkctrl_setup()
640 ti_clk_retry_init(node, provider, _clkctrl_add_provider); in _ti_omap4_clkctrl_setup()