Lines Matching +full:parent +full:- +full:clk
1 /* SPDX-License-Identifier: GPL-2.0 */
10 #include <linux/clk.h>
13 struct clk;
24 void (*init)(struct clk *clk);
26 int (*enable)(struct clk *clk);
27 void (*disable)(struct clk *clk);
28 unsigned long (*recalc)(struct clk *clk);
29 int (*set_rate)(struct clk *clk, unsigned long rate);
30 int (*set_parent)(struct clk *clk, struct clk *parent);
31 long (*round_rate)(struct clk *clk, unsigned long rate);
34 #define SH_CLK_DIV_MSK(div) ((1 << (div)) - 1)
38 struct clk { struct
40 struct clk *parent; member
41 struct clk **parent_table; /* list of parents to */ argument
80 /* drivers/sh/clk.c */ argument
81 unsigned long followparent_recalc(struct clk *);
83 void propagate_rate(struct clk *);
84 int clk_reparent(struct clk *child, struct clk *parent);
85 int clk_register(struct clk *);
86 void clk_unregister(struct clk *);
97 void clk_rate_table_build(struct clk *clk,
103 long clk_rate_table_round(struct clk *clk,
107 int clk_rate_table_find(struct clk *clk,
111 long clk_rate_div_range_round(struct clk *clk, unsigned int div_min,
114 long clk_rate_mult_range_round(struct clk *clk, unsigned int mult_min,
119 .parent = _parent, \
138 int sh_clk_mstp_register(struct clk *clks, int nr);
142 * original enable/disable pairs assuming a 32-bit access. Clocks are
146 static inline int __deprecated sh_clk_mstp32_register(struct clk *clks, int nr) in sh_clk_mstp32_register()
153 .parent = _parent, \
163 void (*kick)(struct clk *clk);
168 int sh_clk_div4_register(struct clk *clks, int nr,
170 int sh_clk_div4_enable_register(struct clk *clks, int nr,
172 int sh_clk_div4_reparent_register(struct clk *clks, int nr,
190 .parent = _parent, \
197 int sh_clk_div6_register(struct clk *clks, int nr);
198 int sh_clk_div6_reparent_register(struct clk *clks, int nr);
200 #define CLKDEV_CON_ID(_id, _clk) { .con_id = _id, .clk = _clk }
201 #define CLKDEV_DEV_ID(_id, _clk) { .dev_id = _id, .clk = _clk }
202 #define CLKDEV_ICK_ID(_cid, _did, _clk) { .con_id = _cid, .dev_id = _did, .clk = _clk }
208 .parent = _parent, \
211 int sh_clk_fsidiv_register(struct clk *clks, int nr);