Lines Matching +full:interface +full:- +full:node

1 // SPDX-License-Identifier: GPL-2.0-only
3 * OMAP interface clock support
7 * Tero Kristo <t-kristo@ti.com>
10 #include <linux/clk-provider.h>
27 static struct clk *_register_interface(struct device_node *node, in _register_interface() argument
39 return ERR_PTR(-ENOMEM); in _register_interface()
41 clk_hw->hw.init = &init; in _register_interface()
42 clk_hw->ops = ops; in _register_interface()
43 memcpy(&clk_hw->enable_reg, reg, sizeof(*reg)); in _register_interface()
44 clk_hw->enable_bit = bit_idx; in _register_interface()
53 clk = of_ti_clk_register_omap_hw(node, &clk_hw->hw, name); in _register_interface()
61 static void __init _of_ti_interface_clk_setup(struct device_node *node, in _of_ti_interface_clk_setup() argument
71 if (ti_clk_get_reg_addr(node, 0, &reg)) in _of_ti_interface_clk_setup()
74 if (!of_property_read_u32(node, "ti,bit-shift", &val)) in _of_ti_interface_clk_setup()
77 parent_name = of_clk_get_parent_name(node, 0); in _of_ti_interface_clk_setup()
79 pr_err("%pOFn must have a parent\n", node); in _of_ti_interface_clk_setup()
83 name = ti_dt_clk_name(node); in _of_ti_interface_clk_setup()
84 clk = _register_interface(node, name, parent_name, &reg, in _of_ti_interface_clk_setup()
88 of_clk_add_provider(node, of_clk_src_simple_get, clk); in _of_ti_interface_clk_setup()
91 static void __init of_ti_interface_clk_setup(struct device_node *node) in of_ti_interface_clk_setup() argument
93 _of_ti_interface_clk_setup(node, &clkhwops_iclk_wait); in of_ti_interface_clk_setup()
95 CLK_OF_DECLARE(ti_interface_clk, "ti,omap3-interface-clock",
98 static void __init of_ti_no_wait_interface_clk_setup(struct device_node *node) in of_ti_no_wait_interface_clk_setup() argument
100 _of_ti_interface_clk_setup(node, &clkhwops_iclk); in of_ti_no_wait_interface_clk_setup()
102 CLK_OF_DECLARE(ti_no_wait_interface_clk, "ti,omap3-no-wait-interface-clock",
106 static void __init of_ti_hsotgusb_interface_clk_setup(struct device_node *node) in of_ti_hsotgusb_interface_clk_setup() argument
108 _of_ti_interface_clk_setup(node, in of_ti_hsotgusb_interface_clk_setup()
111 CLK_OF_DECLARE(ti_hsotgusb_interface_clk, "ti,omap3-hsotgusb-interface-clock",
114 static void __init of_ti_dss_interface_clk_setup(struct device_node *node) in of_ti_dss_interface_clk_setup() argument
116 _of_ti_interface_clk_setup(node, in of_ti_dss_interface_clk_setup()
119 CLK_OF_DECLARE(ti_dss_interface_clk, "ti,omap3-dss-interface-clock",
122 static void __init of_ti_ssi_interface_clk_setup(struct device_node *node) in of_ti_ssi_interface_clk_setup() argument
124 _of_ti_interface_clk_setup(node, &clkhwops_omap3430es2_iclk_ssi_wait); in of_ti_ssi_interface_clk_setup()
126 CLK_OF_DECLARE(ti_ssi_interface_clk, "ti,omap3-ssi-interface-clock",
129 static void __init of_ti_am35xx_interface_clk_setup(struct device_node *node) in of_ti_am35xx_interface_clk_setup() argument
131 _of_ti_interface_clk_setup(node, &clkhwops_am35xx_ipss_wait); in of_ti_am35xx_interface_clk_setup()
133 CLK_OF_DECLARE(ti_am35xx_interface_clk, "ti,am35xx-interface-clock",
138 static void __init of_ti_omap2430_interface_clk_setup(struct device_node *node) in of_ti_omap2430_interface_clk_setup() argument
140 _of_ti_interface_clk_setup(node, &clkhwops_omap2430_i2chs_wait); in of_ti_omap2430_interface_clk_setup()
142 CLK_OF_DECLARE(ti_omap2430_interface_clk, "ti,omap2430-interface-clock",