diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-05-13 07:28:15 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-05-13 07:28:15 -0400 |
commit | cc96eace48fdf0f8925a74c6c1f7ffa512e458d2 (patch) | |
tree | 7a922b498e387495b3665c5428a932d7d328810e /arch/sh/include | |
parent | a77b5ac0ea8e47c77008d3a9a9976dcfbc01c42a (diff) |
sh: clkfwk: rate table construction and rounding for SH7785.
This adds support for constructing a rate table by looking at potential
divisors for a specified clock. Each FQRMR clock is given its own table.
Presently each table is rebuilt when the parent propagates down a new
rate, so some more logic needs to be added to do this more intelligently.
Additionally, a fairly generic round_rate() implementation is then
layered on top of it, which subsequently provides us with cpufreq support.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/include')
-rw-r--r-- | arch/sh/include/asm/clock.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/sh/include/asm/clock.h b/arch/sh/include/asm/clock.h index 40cf3c07d7e6..da681de1500a 100644 --- a/arch/sh/include/asm/clock.h +++ b/arch/sh/include/asm/clock.h | |||
@@ -16,6 +16,7 @@ struct clk_ops { | |||
16 | int (*set_rate)(struct clk *clk, unsigned long rate, int algo_id); | 16 | int (*set_rate)(struct clk *clk, unsigned long rate, int algo_id); |
17 | int (*set_parent)(struct clk *clk, struct clk *parent); | 17 | int (*set_parent)(struct clk *clk, struct clk *parent); |
18 | long (*round_rate)(struct clk *clk, unsigned long rate); | 18 | long (*round_rate)(struct clk *clk, unsigned long rate); |
19 | void (*build_rate_table)(struct clk *clk); | ||
19 | }; | 20 | }; |
20 | 21 | ||
21 | struct clk { | 22 | struct clk { |