Lines Matching full:clk

32 #include <dev/clk/clk.h>
34 #include <dev/clk/rockchip/rk_clk_fract.h>
51 static int rk_clk_fract_init(struct clknode *clk, device_t dev);
52 static int rk_clk_fract_recalc(struct clknode *clk, uint64_t *req);
55 static int rk_clk_fract_set_gate(struct clknode *clk, bool enable);
138 rk_clk_fract_init(struct clknode *clk, device_t dev) in rk_clk_fract_init() argument
143 sc = clknode_get_softc(clk); in rk_clk_fract_init()
144 DEVICE_LOCK(clk); in rk_clk_fract_init()
145 RD4(clk, sc->offset, &reg); in rk_clk_fract_init()
146 DEVICE_UNLOCK(clk); in rk_clk_fract_init()
152 clknode_init_parent_idx(clk, 0); in rk_clk_fract_init()
158 rk_clk_fract_set_gate(struct clknode *clk, bool enable) in rk_clk_fract_set_gate() argument
163 sc = clknode_get_softc(clk); in rk_clk_fract_set_gate()
168 RD4(clk, sc->gate_offset, &val); in rk_clk_fract_set_gate()
174 DEVICE_LOCK(clk); in rk_clk_fract_set_gate()
175 WR4(clk, sc->gate_offset, val); in rk_clk_fract_set_gate()
176 DEVICE_UNLOCK(clk); in rk_clk_fract_set_gate()
182 rk_clk_fract_recalc(struct clknode *clk, uint64_t *freq) in rk_clk_fract_recalc() argument
186 sc = clknode_get_softc(clk); in rk_clk_fract_recalc()
188 printf("%s: %s denominator is zero!\n", clknode_get_name(clk), in rk_clk_fract_recalc()
201 rk_clk_fract_set_freq(struct clknode *clk, uint64_t fin, uint64_t *fout, in rk_clk_fract_set_freq() argument
207 sc = clknode_get_softc(clk); in rk_clk_fract_set_freq()
232 clknode_get_name(clk), __func__); in rk_clk_fract_set_freq()
250 DEVICE_LOCK(clk); in rk_clk_fract_set_freq()
251 WR4(clk, sc->offset, sc->numerator << 16 | sc->denominator); in rk_clk_fract_set_freq()
252 DEVICE_UNLOCK(clk); in rk_clk_fract_set_freq()
262 struct clknode *clk; in rk_clk_fract_register() local
265 clk = clknode_create(clkdom, &rk_clk_fract_class, &clkdef->clkdef); in rk_clk_fract_register()
266 if (clk == NULL) in rk_clk_fract_register()
269 sc = clknode_get_softc(clk); in rk_clk_fract_register()
275 clknode_register(clkdom, clk); in rk_clk_fract_register()