diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-05-13 20:28:15 +0900 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-05-13 20:28:15 +0900 |
commit | cc96eace48fdf0f8925a74c6c1f7ffa512e458d2 (patch) | |
tree | 7a922b498e387495b3665c5428a932d7d328810e /arch/sh/include | |
parent | a77b5ac0ea8e47c77008d3a9a9976dcfbc01c42a (diff) | |
download | op-kernel-dev-cc96eace48fdf0f8925a74c6c1f7ffa512e458d2.zip op-kernel-dev-cc96eace48fdf0f8925a74c6c1f7ffa512e458d2.tar.gz |
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 40cf3c0..da681de 100644 --- a/arch/sh/include/asm/clock.h +++ b/arch/sh/include/asm/clock.h @@ -16,6 +16,7 @@ struct clk_ops { int (*set_rate)(struct clk *clk, unsigned long rate, int algo_id); int (*set_parent)(struct clk *clk, struct clk *parent); long (*round_rate)(struct clk *clk, unsigned long rate); + void (*build_rate_table)(struct clk *clk); }; struct clk { |