drivers: power: report battery voltage in AOSP compatible format
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / powerpc / kernel / clock.c
1 /*
2 * Dummy clk implementations for powerpc.
3 * These need to be overridden in platform code.
4 */
5
6 #include <linux/clk.h>
7 #include <linux/err.h>
8 #include <linux/errno.h>
9 #include <linux/export.h>
10 #include <asm/clk_interface.h>
11
12 struct clk_interface clk_functions;
13
14 struct clk *clk_get(struct device *dev, const char *id)
15 {
16 if (clk_functions.clk_get)
17 return clk_functions.clk_get(dev, id);
18 return ERR_PTR(-ENOSYS);
19 }
20 EXPORT_SYMBOL(clk_get);
21
22 void clk_put(struct clk *clk)
23 {
24 if (clk_functions.clk_put)
25 clk_functions.clk_put(clk);
26 }
27 EXPORT_SYMBOL(clk_put);
28
29 int clk_enable(struct clk *clk)
30 {
31 if (clk_functions.clk_enable)
32 return clk_functions.clk_enable(clk);
33 return -ENOSYS;
34 }
35 EXPORT_SYMBOL(clk_enable);
36
37 void clk_disable(struct clk *clk)
38 {
39 if (clk_functions.clk_disable)
40 clk_functions.clk_disable(clk);
41 }
42 EXPORT_SYMBOL(clk_disable);
43
44 unsigned long clk_get_rate(struct clk *clk)
45 {
46 if (clk_functions.clk_get_rate)
47 return clk_functions.clk_get_rate(clk);
48 return 0;
49 }
50 EXPORT_SYMBOL(clk_get_rate);
51
52 long clk_round_rate(struct clk *clk, unsigned long rate)
53 {
54 if (clk_functions.clk_round_rate)
55 return clk_functions.clk_round_rate(clk, rate);
56 return -ENOSYS;
57 }
58 EXPORT_SYMBOL(clk_round_rate);
59
60 int clk_set_rate(struct clk *clk, unsigned long rate)
61 {
62 if (clk_functions.clk_set_rate)
63 return clk_functions.clk_set_rate(clk, rate);
64 return -ENOSYS;
65 }
66 EXPORT_SYMBOL(clk_set_rate);
67
68 struct clk *clk_get_parent(struct clk *clk)
69 {
70 if (clk_functions.clk_get_parent)
71 return clk_functions.clk_get_parent(clk);
72 return ERR_PTR(-ENOSYS);
73 }
74 EXPORT_SYMBOL(clk_get_parent);
75
76 int clk_set_parent(struct clk *clk, struct clk *parent)
77 {
78 if (clk_functions.clk_set_parent)
79 return clk_functions.clk_set_parent(clk, parent);
80 return -ENOSYS;
81 }
82 EXPORT_SYMBOL(clk_set_parent);