diff options
Diffstat (limited to 'include/linux/sh_clk.h')
-rw-r--r-- | include/linux/sh_clk.h | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/include/linux/sh_clk.h b/include/linux/sh_clk.h index 1636d1e2a5f1..875ce50719a9 100644 --- a/include/linux/sh_clk.h +++ b/include/linux/sh_clk.h | |||
@@ -25,6 +25,10 @@ struct clk { | |||
25 | int id; | 25 | int id; |
26 | 26 | ||
27 | struct clk *parent; | 27 | struct clk *parent; |
28 | struct clk **parent_table; /* list of parents to */ | ||
29 | unsigned short parent_num; /* choose between */ | ||
30 | unsigned char src_shift; /* source clock field in the */ | ||
31 | unsigned char src_width; /* configuration register */ | ||
28 | struct clk_ops *ops; | 32 | struct clk_ops *ops; |
29 | 33 | ||
30 | struct list_head children; | 34 | struct list_head children; |
@@ -138,13 +142,22 @@ int sh_clk_div4_enable_register(struct clk *clks, int nr, | |||
138 | int sh_clk_div4_reparent_register(struct clk *clks, int nr, | 142 | int sh_clk_div4_reparent_register(struct clk *clks, int nr, |
139 | struct clk_div4_table *table); | 143 | struct clk_div4_table *table); |
140 | 144 | ||
141 | #define SH_CLK_DIV6(_parent, _reg, _flags) \ | 145 | #define SH_CLK_DIV6_EXT(_parent, _reg, _flags, _parents, \ |
142 | { \ | 146 | _num_parents, _src_shift, _src_width) \ |
143 | .parent = _parent, \ | 147 | { \ |
144 | .enable_reg = (void __iomem *)_reg, \ | 148 | .parent = _parent, \ |
145 | .flags = _flags, \ | 149 | .enable_reg = (void __iomem *)_reg, \ |
150 | .flags = _flags, \ | ||
151 | .parent_table = _parents, \ | ||
152 | .parent_num = _num_parents, \ | ||
153 | .src_shift = _src_shift, \ | ||
154 | .src_width = _src_width, \ | ||
146 | } | 155 | } |
147 | 156 | ||
157 | #define SH_CLK_DIV6(_parent, _reg, _flags) \ | ||
158 | SH_CLK_DIV6_EXT(_parent, _reg, _flags, NULL, 0, 0, 0) | ||
159 | |||
148 | int sh_clk_div6_register(struct clk *clks, int nr); | 160 | int sh_clk_div6_register(struct clk *clks, int nr); |
161 | int sh_clk_div6_reparent_register(struct clk *clks, int nr); | ||
149 | 162 | ||
150 | #endif /* __SH_CLOCK_H */ | 163 | #endif /* __SH_CLOCK_H */ |