summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-omap/include/mach/clock.h
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2008-11-04 14:02:46 +0000
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-02-02 14:52:18 +0000
commit548d849574847b788fe846fe21a41386063be161 (patch)
tree6c2ac7379c376793368affab03e5202abd0f1efa /arch/arm/plat-omap/include/mach/clock.h
parentdb8ac47cfccaafd3fa4c5c15320809d44f4fcef9 (diff)
downloadtalos-op-linux-548d849574847b788fe846fe21a41386063be161.tar.gz
talos-op-linux-548d849574847b788fe846fe21a41386063be161.zip
[ARM] omap: introduce clock operations structure
Collect up all the common enable/disable clock operation functions into a separate operations structure. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/plat-omap/include/mach/clock.h')
-rw-r--r--arch/arm/plat-omap/include/mach/clock.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/arm/plat-omap/include/mach/clock.h b/arch/arm/plat-omap/include/mach/clock.h
index 4e8f59df30bd..4fe5084e8cc2 100644
--- a/arch/arm/plat-omap/include/mach/clock.h
+++ b/arch/arm/plat-omap/include/mach/clock.h
@@ -17,6 +17,11 @@ struct module;
struct clk;
struct clockdomain;
+struct clkops {
+ int (*enable)(struct clk *);
+ void (*disable)(struct clk *);
+};
+
#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)
struct clksel_rate {
@@ -59,6 +64,7 @@ struct dpll_data {
struct clk {
struct list_head node;
+ const struct clkops *ops;
struct module *owner;
const char *name;
int id;
@@ -72,8 +78,6 @@ struct clk {
int (*set_rate)(struct clk *, unsigned long);
long (*round_rate)(struct clk *, unsigned long);
void (*init)(struct clk *);
- int (*enable)(struct clk *);
- void (*disable)(struct clk *);
#if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3)
u8 fixed_div;
void __iomem *clksel_reg;
OpenPOWER on IntegriCloud