ARM: ICST: merge common ICST VCO structures
[safe/jmp/linux-2.6] / arch / arm / mach-integrator / include / mach / clkdev.h
1 #ifndef __ASM_MACH_CLKDEV_H
2 #define __ASM_MACH_CLKDEV_H
3
4 #include <linux/module.h>
5 #include <asm/hardware/icst.h>
6
7 struct clk {
8         unsigned long           rate;
9         struct module           *owner;
10         const struct icst_params *params;
11         void                    *data;
12         void                    (*setvco)(struct clk *, struct icst_vco vco);
13 };
14
15 static inline int __clk_get(struct clk *clk)
16 {
17         return try_module_get(clk->owner);
18 }
19
20 static inline void __clk_put(struct clk *clk)
21 {
22         module_put(clk->owner);
23 }
24
25 #endif