2 * Copyright (C) ST-Ericsson SA 2010
4 * License Terms: GNU General Public License v2
6 * Authors: Sundar Iyer <sundar.iyer@stericsson.com> for ST-Ericsson
7 * Bengt Jonsson <bengt.g.jonsson@stericsson.com> for ST-Ericsson
10 #ifndef __LINUX_MFD_AB8500_REGULATOR_H
11 #define __LINUX_MFD_AB8500_REGULATOR_H
13 /* AB8500 regulators */
14 enum ab8500_regulator_id {
26 AB8500_NUM_REGULATORS,
29 /* AB9450 regulators */
30 enum ab9540_regulator_id {
45 AB9540_NUM_REGULATORS,
48 /* AB8500 and AB9540 register initialization */
49 struct ab8500_regulator_reg_init {
55 #define INIT_REGULATOR_REGISTER(_id, _mask, _value) \
62 /* AB8500 registers */
63 enum ab8500_regulator_reg {
64 AB8500_REGUREQUESTCTRL2,
65 AB8500_REGUREQUESTCTRL3,
66 AB8500_REGUREQUESTCTRL4,
67 AB8500_REGUSYSCLKREQ1HPVALID1,
68 AB8500_REGUSYSCLKREQ1HPVALID2,
69 AB8500_REGUHWHPREQ1VALID1,
70 AB8500_REGUHWHPREQ1VALID2,
71 AB8500_REGUHWHPREQ2VALID1,
72 AB8500_REGUHWHPREQ2VALID2,
73 AB8500_REGUSWHPREQVALID1,
74 AB8500_REGUSWHPREQVALID2,
75 AB8500_REGUSYSCLKREQVALID1,
76 AB8500_REGUSYSCLKREQVALID2,
79 AB8500_REGUCTRL1VAMIC,
88 AB8500_REGUCTRL2SPARE,
90 AB8500_REGUCTRLDISCH2,
91 AB8500_ARMREGU2, /* NOTE! PRCMU register */
92 AB8500_VBBSEL1, /* NOTE! PRCMU register */
93 AB8500_VBBSEL2, /* NOTE! PRCMU register */
96 AB8500_VSMPS3REGU, /* NOTE! PRCMU register */
98 AB8500_VSMPS3SEL1, /* NOTE! PRCMU register */
99 AB8500_VSMPS3SEL2, /* NOTE! PRCMU register */
100 AB8500_NUM_REGULATOR_REGISTERS,
104 /* AB9540 registers */
105 enum ab9540_regulator_reg {
106 AB9540_REGUREQUESTCTRL1,
107 AB9540_REGUREQUESTCTRL2,
108 AB9540_REGUREQUESTCTRL3,
109 AB9540_REGUREQUESTCTRL4,
110 AB9540_REGUSYSCLKREQ1HPVALID1,
111 AB9540_REGUSYSCLKREQ1HPVALID2,
112 AB9540_REGUHWHPREQ1VALID1,
113 AB9540_REGUHWHPREQ1VALID2,
114 AB9540_REGUHWHPREQ2VALID1,
115 AB9540_REGUHWHPREQ2VALID2,
116 AB9540_REGUSWHPREQVALID1,
117 AB9540_REGUSWHPREQVALID2,
118 AB9540_REGUSYSCLKREQVALID1,
119 AB9540_REGUSYSCLKREQVALID2,
120 AB9540_REGUVAUX4REQVALID,
123 AB9540_REGUCTRL1VAMIC,
126 AB9540_VSMPS3REGU, /* NOTE! PRCMU register */
128 AB9540_EXTSUPPLYREGU,
130 AB9540_VRF1VAUX3REGU,
137 AB9540_VSMPS3SEL1, /* NOTE! PRCMU register */
138 AB9540_VSMPS3SEL2, /* NOTE! PRCMU register */
142 AB9540_REGUCTRL2SPARE,
146 AB9540_REGUCTRLDISCH,
147 AB9540_REGUCTRLDISCH2,
148 AB9540_REGUCTRLDISCH3,
149 AB9540_NUM_REGULATOR_REGISTERS,