Lines Matching full:clk

32 #include <dev/clk/clk.h>
34 #include <arm64/freescale/imx/clk/imx_clk_composite.h>
69 printf("%s:(%s)" format, __func__, clknode_get_name(clk), arg)
75 imx_clk_composite_init(struct clknode *clk, device_t dev) in imx_clk_composite_init() argument
80 sc = clknode_get_softc(clk); in imx_clk_composite_init()
82 DEVICE_LOCK(clk); in imx_clk_composite_init()
83 READ4(clk, sc->offset, &val); in imx_clk_composite_init()
84 DEVICE_UNLOCK(clk); in imx_clk_composite_init()
87 clknode_init_parent_idx(clk, idx); in imx_clk_composite_init()
93 imx_clk_composite_set_gate(struct clknode *clk, bool enable) in imx_clk_composite_set_gate() argument
98 sc = clknode_get_softc(clk); in imx_clk_composite_set_gate()
101 DEVICE_LOCK(clk); in imx_clk_composite_set_gate()
102 READ4(clk, sc->offset, &val); in imx_clk_composite_set_gate()
107 WRITE4(clk, sc->offset, val); in imx_clk_composite_set_gate()
108 DEVICE_UNLOCK(clk); in imx_clk_composite_set_gate()
114 imx_clk_composite_set_mux(struct clknode *clk, int index) in imx_clk_composite_set_mux() argument
119 sc = clknode_get_softc(clk); in imx_clk_composite_set_mux()
122 DEVICE_LOCK(clk); in imx_clk_composite_set_mux()
123 READ4(clk, sc->offset, &val); in imx_clk_composite_set_mux()
126 WRITE4(clk, sc->offset, val); in imx_clk_composite_set_mux()
127 DEVICE_UNLOCK(clk); in imx_clk_composite_set_mux()
133 imx_clk_composite_recalc(struct clknode *clk, uint64_t *freq) in imx_clk_composite_recalc() argument
138 sc = clknode_get_softc(clk); in imx_clk_composite_recalc()
140 DEVICE_LOCK(clk); in imx_clk_composite_recalc()
141 READ4(clk, sc->offset, &reg); in imx_clk_composite_recalc()
142 DEVICE_UNLOCK(clk); in imx_clk_composite_recalc()
202 imx_clk_composite_set_freq(struct clknode *clk, uint64_t fparent, uint64_t *fout, in imx_clk_composite_set_freq() argument
215 sc = clknode_get_softc(clk); in imx_clk_composite_set_freq()
217 p_names = clknode_get_parent_names(clk); in imx_clk_composite_set_freq()
222 for (p_idx = 0; p_idx != clknode_get_parents_num(clk); p_idx++) { in imx_clk_composite_set_freq()
256 p_idx = clknode_get_parent_idx(clk); in imx_clk_composite_set_freq()
260 clknode_set_parent_by_idx(clk, best_parent); in imx_clk_composite_set_freq()
265 DEVICE_LOCK(clk); in imx_clk_composite_set_freq()
266 READ4(clk, sc->offset, &val); in imx_clk_composite_set_freq()
270 DEVICE_UNLOCK(clk); in imx_clk_composite_set_freq()
294 struct clknode *clk; in imx_clk_composite_register() local
297 clk = clknode_create(clkdom, &imx_clk_composite_clknode_class, in imx_clk_composite_register()
299 if (clk == NULL) in imx_clk_composite_register()
302 sc = clknode_get_softc(clk); in imx_clk_composite_register()
307 clknode_register(clkdom, clk); in imx_clk_composite_register()