317e3f6a1dc84dafb53c639ae24fb8f3740bf74e
[firefly-linux-kernel-4.4.55.git] / include / linux / regulator / rt5025-regulator.h
1 /*
2  *  include/linux/regulator/rt5025-regulator.h
3  *  Include header file to Richtek RT5025 Regulator driver
4  *
5  *  Copyright (C) 2013 Richtek Electronics
6  *  cy_huang <cy_huang@richtek.com>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  */
12
13 #ifndef __LINUX_RT5025_REGULATOR_H
14 #define __LINUX_RT5025_REGULATOR_H
15
16 #define RT5025_REG_DCDCCTRL1 0x08
17 #define RT5025_REG_DCDCCTRL2 0x09
18 #define RT5025_REG_DCDCCTRL3 0x0A
19 #define RT5025_REG_DCDCCTRL4 0x0B
20 #define RT5025_REG_LDOCTRL1  0x0D
21 #define RT5025_REG_LDOCTRL2  0x0E
22 #define RT5025_REG_LDOCTRL3  0x0F
23 #define RT5025_REG_LDOCTRL4  0x10
24 #define RT5025_REG_LDOCTRL5  0x11
25 #define RT5025_REG_LDOCTRL6  0x12
26 #define RT5025_REG_DCDCEN    0x17
27 #define RT5025_REG_LDOEN     0x18
28
29 #define RT5025_DCDCVOUT1     RT5025_REG_DCDCCTRL1
30 #define RT5025_DCDCVOUT2     RT5025_REG_DCDCCTRL2
31 #define RT5025_DCDCVOUT3     RT5025_REG_DCDCCTRL3
32 #define RT5025_DCDCVOUT4     RT5025_REG_DCDCCTRL4
33 #define RT5025_LDOVOUT1      RT5025_REG_LDOCTRL1
34 #define RT5025_LDOVOUT2      RT5025_REG_LDOCTRL2
35 #define RT5025_LDOVOUT3      RT5025_REG_LDOCTRL3
36 #define RT5025_LDOVOUT4      RT5025_REG_LDOCTRL4
37 #define RT5025_LDOVOUT5      RT5025_REG_LDOCTRL5
38 #define RT5025_LDOVOUT6      RT5025_REG_LDOCTRL6
39
40 #define RT5025_DCDCVOUT_SHIFT1    2
41 #define RT5025_DCDCVOUT_SHIFT2    1
42 #define RT5025_DCDCVOUT_SHIFT3    2
43 #define RT5025_DCDCVOUT_SHIFT4    0
44 #define RT5025_LDOVOUT_SHIFT1     0
45 #define RT5025_LDOVOUT_SHIFT2     0
46 #define RT5025_LDOVOUT_SHIFT3     3
47 #define RT5025_LDOVOUT_SHIFT4     3
48 #define RT5025_LDOVOUT_SHIFT5     3
49 #define RT5025_LDOVOUT_SHIFT6     3
50
51 #define RT5025_DCDCVOUT_MASK1     0xFC
52 #define RT5025_DCDCVOUT_MASK2     0xFE
53 #define RT5025_DCDCVOUT_MASK3     0xFC
54 #define RT5025_DCDCVOUT_MASK4     0x0F
55 #define RT5025_LDOVOUT_MASK1      0x7F
56 #define RT5025_LDOVOUT_MASK2      0x7F
57 #define RT5025_LDOVOUT_MASK3      0xF8
58 #define RT5025_LDOVOUT_MASK4      0xF8
59 #define RT5025_LDOVOUT_MASK5      0xF8
60 #define RT5025_LDOVOUT_MASK6      0xF8
61
62 #define RT5025_DCDC_OUTPUT_EN     RT5025_REG_DCDCEN
63 #define RT5025_LDO_OUTPUT_EN      RT5025_REG_LDOEN
64
65 #define RT5025_DCDCEN_MASK1       0x01
66 #define RT5025_DCDCEN_MASK2       0x02
67 #define RT5025_DCDCEN_MASK3       0x04
68 #define RT5025_DCDCEN_MASK4       0x08
69 #define RT5025_LDOEN_MASK1        0x01
70 #define RT5025_LDOEN_MASK2        0x02
71 #define RT5025_LDOEN_MASK3        0x04
72 #define RT5025_LDOEN_MASK4        0x08
73 #define RT5025_LDOEN_MASK5        0x10
74 #define RT5025_LDOEN_MASK6        0x20
75
76 #endif  /* __LINUX_RT5025_REGULATOR_H */