aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-versatile
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2010-03-01 11:18:39 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2010-05-02 04:35:38 -0400
commit9bf5b2ef673237e0e43161c56f70ac8bf24e43f9 (patch)
tree6b75855102d54da6ff6d7023ae00e25610e44f92 /arch/arm/mach-versatile
parent3081e43b97cb50a80ebd98ce4b60e4853ad38424 (diff)
ARM: Indirect round/set_rate operations through clk structure
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-versatile')
-rw-r--r--arch/arm/mach-versatile/core.c8
-rw-r--r--arch/arm/mach-versatile/include/mach/clkdev.h4
2 files changed, 9 insertions, 3 deletions
diff --git a/arch/arm/mach-versatile/core.c b/arch/arm/mach-versatile/core.c
index 957bbde83d34..60baba65635e 100644
--- a/arch/arm/mach-versatile/core.c
+++ b/arch/arm/mach-versatile/core.c
@@ -381,9 +381,15 @@ static void versatile_oscvco_set(struct clk *clk, struct icst_vco vco)
381 writel(0, sys_lock); 381 writel(0, sys_lock);
382} 382}
383 383
384static const struct clk_ops osc4_clk_ops = {
385 .round = icst_clk_round,
386 .set = icst_clk_set,
387 .setvco = versatile_oscvco_set,
388};
389
384static struct clk osc4_clk = { 390static struct clk osc4_clk = {
391 .ops = &osc4_clk_ops,
385 .params = &versatile_oscvco_params, 392 .params = &versatile_oscvco_params,
386 .setvco = versatile_oscvco_set,
387}; 393};
388 394
389/* 395/*
diff --git a/arch/arm/mach-versatile/include/mach/clkdev.h b/arch/arm/mach-versatile/include/mach/clkdev.h
index baea03c9ad45..e58d0771b64e 100644
--- a/arch/arm/mach-versatile/include/mach/clkdev.h
+++ b/arch/arm/mach-versatile/include/mach/clkdev.h
@@ -1,13 +1,13 @@
1#ifndef __ASM_MACH_CLKDEV_H 1#ifndef __ASM_MACH_CLKDEV_H
2#define __ASM_MACH_CLKDEV_H 2#define __ASM_MACH_CLKDEV_H
3 3
4#include <asm/hardware/icst.h> 4#include <plat/clock.h>
5 5
6struct clk { 6struct clk {
7 unsigned long rate; 7 unsigned long rate;
8 const struct clk_ops *ops;
8 const struct icst_params *params; 9 const struct icst_params *params;
9 void __iomem *vcoreg; 10 void __iomem *vcoreg;
10 void (*setvco)(struct clk *, struct icst_vco vco);
11}; 11};
12 12
13#define __clk_get(clk) ({ 1; }) 13#define __clk_get(clk) ({ 1; })