aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/include/asm/clock.h
diff options
context:
space:
mode:
authorMagnus Damm <damm@igel.co.jp>2009-05-28 09:11:31 -0400
committerPaul Mundt <lethal@linux-sh.org>2009-06-01 05:07:37 -0400
commita1153e27eec25e9963f5843ba8932952bd9847ac (patch)
tree76ef9b57aa5734797a862ad576f4f4e74ab8a3f0 /arch/sh/include/asm/clock.h
parente89d53e60593ee7066e1d36ab5c1ccf2648f5f53 (diff)
sh: shared div4 clock code
Add shared code for 4-bit divisor clocks. Processor specific code can use SH_CLK_DIV4() to initialize div4 clocks, and then use sh_clk_div4_register() for registration. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/include/asm/clock.h')
-rw-r--r--arch/sh/include/asm/clock.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/sh/include/asm/clock.h b/arch/sh/include/asm/clock.h
index f43d3e72d266..7435e40022e6 100644
--- a/arch/sh/include/asm/clock.h
+++ b/arch/sh/include/asm/clock.h
@@ -3,6 +3,7 @@
3 3
4#include <linux/list.h> 4#include <linux/list.h>
5#include <linux/seq_file.h> 5#include <linux/seq_file.h>
6#include <linux/cpufreq.h>
6#include <linux/clk.h> 7#include <linux/clk.h>
7#include <linux/err.h> 8#include <linux/err.h>
8 9
@@ -41,6 +42,7 @@ struct clk {
41 unsigned long arch_flags; 42 unsigned long arch_flags;
42 void *priv; 43 void *priv;
43 struct dentry *dentry; 44 struct dentry *dentry;
45 struct cpufreq_frequency_table *freq_table;
44}; 46};
45 47
46struct clk_lookup { 48struct clk_lookup {
@@ -130,4 +132,17 @@ long clk_rate_table_round(struct clk *clk,
130 132
131int sh_clk_mstp32_register(struct clk *clks, int nr); 133int sh_clk_mstp32_register(struct clk *clks, int nr);
132 134
135#define SH_CLK_DIV4(_name, _parent, _reg, _shift, _div_bitmap, _flags) \
136{ \
137 .name = _name, \
138 .parent = _parent, \
139 .enable_reg = (void __iomem *)_reg, \
140 .enable_bit = _shift, \
141 .arch_flags = _div_bitmap, \
142 .flags = _flags, \
143}
144
145int sh_clk_div4_register(struct clk *clks, int nr,
146 struct clk_div_mult_table *table);
147
133#endif /* __ASM_SH_CLOCK_H */ 148#endif /* __ASM_SH_CLOCK_H */