xref: /OK3568_Linux_fs/kernel/include/linux/mfd/wm831x/regulator.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-or-later */
2*4882a593Smuzhiyun /*
3*4882a593Smuzhiyun  * linux/mfd/wm831x/regulator.h -- Regulator definitons for wm831x
4*4882a593Smuzhiyun  *
5*4882a593Smuzhiyun  * Copyright 2009 Wolfson Microelectronics PLC.
6*4882a593Smuzhiyun  *
7*4882a593Smuzhiyun  * Author: Mark Brown <broonie@opensource.wolfsonmicro.com>
8*4882a593Smuzhiyun  */
9*4882a593Smuzhiyun 
10*4882a593Smuzhiyun #ifndef __MFD_WM831X_REGULATOR_H__
11*4882a593Smuzhiyun #define __MFD_WM831X_REGULATOR_H__
12*4882a593Smuzhiyun 
13*4882a593Smuzhiyun /*
14*4882a593Smuzhiyun  * R16462 (0x404E) - Current Sink 1
15*4882a593Smuzhiyun  */
16*4882a593Smuzhiyun #define WM831X_CS1_ENA                          0x8000  /* CS1_ENA */
17*4882a593Smuzhiyun #define WM831X_CS1_ENA_MASK                     0x8000  /* CS1_ENA */
18*4882a593Smuzhiyun #define WM831X_CS1_ENA_SHIFT                        15  /* CS1_ENA */
19*4882a593Smuzhiyun #define WM831X_CS1_ENA_WIDTH                         1  /* CS1_ENA */
20*4882a593Smuzhiyun #define WM831X_CS1_DRIVE                        0x4000  /* CS1_DRIVE */
21*4882a593Smuzhiyun #define WM831X_CS1_DRIVE_MASK                   0x4000  /* CS1_DRIVE */
22*4882a593Smuzhiyun #define WM831X_CS1_DRIVE_SHIFT                      14  /* CS1_DRIVE */
23*4882a593Smuzhiyun #define WM831X_CS1_DRIVE_WIDTH                       1  /* CS1_DRIVE */
24*4882a593Smuzhiyun #define WM831X_CS1_SLPENA                       0x1000  /* CS1_SLPENA */
25*4882a593Smuzhiyun #define WM831X_CS1_SLPENA_MASK                  0x1000  /* CS1_SLPENA */
26*4882a593Smuzhiyun #define WM831X_CS1_SLPENA_SHIFT                     12  /* CS1_SLPENA */
27*4882a593Smuzhiyun #define WM831X_CS1_SLPENA_WIDTH                      1  /* CS1_SLPENA */
28*4882a593Smuzhiyun #define WM831X_CS1_OFF_RAMP_MASK                0x0C00  /* CS1_OFF_RAMP - [11:10] */
29*4882a593Smuzhiyun #define WM831X_CS1_OFF_RAMP_SHIFT                   10  /* CS1_OFF_RAMP - [11:10] */
30*4882a593Smuzhiyun #define WM831X_CS1_OFF_RAMP_WIDTH                    2  /* CS1_OFF_RAMP - [11:10] */
31*4882a593Smuzhiyun #define WM831X_CS1_ON_RAMP_MASK                 0x0300  /* CS1_ON_RAMP - [9:8] */
32*4882a593Smuzhiyun #define WM831X_CS1_ON_RAMP_SHIFT                     8  /* CS1_ON_RAMP - [9:8] */
33*4882a593Smuzhiyun #define WM831X_CS1_ON_RAMP_WIDTH                     2  /* CS1_ON_RAMP - [9:8] */
34*4882a593Smuzhiyun #define WM831X_CS1_ISEL_MASK                    0x003F  /* CS1_ISEL - [5:0] */
35*4882a593Smuzhiyun #define WM831X_CS1_ISEL_SHIFT                        0  /* CS1_ISEL - [5:0] */
36*4882a593Smuzhiyun #define WM831X_CS1_ISEL_WIDTH                        6  /* CS1_ISEL - [5:0] */
37*4882a593Smuzhiyun 
38*4882a593Smuzhiyun /*
39*4882a593Smuzhiyun  * R16463 (0x404F) - Current Sink 2
40*4882a593Smuzhiyun  */
41*4882a593Smuzhiyun #define WM831X_CS2_ENA                          0x8000  /* CS2_ENA */
42*4882a593Smuzhiyun #define WM831X_CS2_ENA_MASK                     0x8000  /* CS2_ENA */
43*4882a593Smuzhiyun #define WM831X_CS2_ENA_SHIFT                        15  /* CS2_ENA */
44*4882a593Smuzhiyun #define WM831X_CS2_ENA_WIDTH                         1  /* CS2_ENA */
45*4882a593Smuzhiyun #define WM831X_CS2_DRIVE                        0x4000  /* CS2_DRIVE */
46*4882a593Smuzhiyun #define WM831X_CS2_DRIVE_MASK                   0x4000  /* CS2_DRIVE */
47*4882a593Smuzhiyun #define WM831X_CS2_DRIVE_SHIFT                      14  /* CS2_DRIVE */
48*4882a593Smuzhiyun #define WM831X_CS2_DRIVE_WIDTH                       1  /* CS2_DRIVE */
49*4882a593Smuzhiyun #define WM831X_CS2_SLPENA                       0x1000  /* CS2_SLPENA */
50*4882a593Smuzhiyun #define WM831X_CS2_SLPENA_MASK                  0x1000  /* CS2_SLPENA */
51*4882a593Smuzhiyun #define WM831X_CS2_SLPENA_SHIFT                     12  /* CS2_SLPENA */
52*4882a593Smuzhiyun #define WM831X_CS2_SLPENA_WIDTH                      1  /* CS2_SLPENA */
53*4882a593Smuzhiyun #define WM831X_CS2_OFF_RAMP_MASK                0x0C00  /* CS2_OFF_RAMP - [11:10] */
54*4882a593Smuzhiyun #define WM831X_CS2_OFF_RAMP_SHIFT                   10  /* CS2_OFF_RAMP - [11:10] */
55*4882a593Smuzhiyun #define WM831X_CS2_OFF_RAMP_WIDTH                    2  /* CS2_OFF_RAMP - [11:10] */
56*4882a593Smuzhiyun #define WM831X_CS2_ON_RAMP_MASK                 0x0300  /* CS2_ON_RAMP - [9:8] */
57*4882a593Smuzhiyun #define WM831X_CS2_ON_RAMP_SHIFT                     8  /* CS2_ON_RAMP - [9:8] */
58*4882a593Smuzhiyun #define WM831X_CS2_ON_RAMP_WIDTH                     2  /* CS2_ON_RAMP - [9:8] */
59*4882a593Smuzhiyun #define WM831X_CS2_ISEL_MASK                    0x003F  /* CS2_ISEL - [5:0] */
60*4882a593Smuzhiyun #define WM831X_CS2_ISEL_SHIFT                        0  /* CS2_ISEL - [5:0] */
61*4882a593Smuzhiyun #define WM831X_CS2_ISEL_WIDTH                        6  /* CS2_ISEL - [5:0] */
62*4882a593Smuzhiyun 
63*4882a593Smuzhiyun /*
64*4882a593Smuzhiyun  * R16464 (0x4050) - DCDC Enable
65*4882a593Smuzhiyun  */
66*4882a593Smuzhiyun #define WM831X_EPE2_ENA                         0x0080  /* EPE2_ENA */
67*4882a593Smuzhiyun #define WM831X_EPE2_ENA_MASK                    0x0080  /* EPE2_ENA */
68*4882a593Smuzhiyun #define WM831X_EPE2_ENA_SHIFT                        7  /* EPE2_ENA */
69*4882a593Smuzhiyun #define WM831X_EPE2_ENA_WIDTH                        1  /* EPE2_ENA */
70*4882a593Smuzhiyun #define WM831X_EPE1_ENA                         0x0040  /* EPE1_ENA */
71*4882a593Smuzhiyun #define WM831X_EPE1_ENA_MASK                    0x0040  /* EPE1_ENA */
72*4882a593Smuzhiyun #define WM831X_EPE1_ENA_SHIFT                        6  /* EPE1_ENA */
73*4882a593Smuzhiyun #define WM831X_EPE1_ENA_WIDTH                        1  /* EPE1_ENA */
74*4882a593Smuzhiyun #define WM831X_DC4_ENA                          0x0008  /* DC4_ENA */
75*4882a593Smuzhiyun #define WM831X_DC4_ENA_MASK                     0x0008  /* DC4_ENA */
76*4882a593Smuzhiyun #define WM831X_DC4_ENA_SHIFT                         3  /* DC4_ENA */
77*4882a593Smuzhiyun #define WM831X_DC4_ENA_WIDTH                         1  /* DC4_ENA */
78*4882a593Smuzhiyun #define WM831X_DC3_ENA                          0x0004  /* DC3_ENA */
79*4882a593Smuzhiyun #define WM831X_DC3_ENA_MASK                     0x0004  /* DC3_ENA */
80*4882a593Smuzhiyun #define WM831X_DC3_ENA_SHIFT                         2  /* DC3_ENA */
81*4882a593Smuzhiyun #define WM831X_DC3_ENA_WIDTH                         1  /* DC3_ENA */
82*4882a593Smuzhiyun #define WM831X_DC2_ENA                          0x0002  /* DC2_ENA */
83*4882a593Smuzhiyun #define WM831X_DC2_ENA_MASK                     0x0002  /* DC2_ENA */
84*4882a593Smuzhiyun #define WM831X_DC2_ENA_SHIFT                         1  /* DC2_ENA */
85*4882a593Smuzhiyun #define WM831X_DC2_ENA_WIDTH                         1  /* DC2_ENA */
86*4882a593Smuzhiyun #define WM831X_DC1_ENA                          0x0001  /* DC1_ENA */
87*4882a593Smuzhiyun #define WM831X_DC1_ENA_MASK                     0x0001  /* DC1_ENA */
88*4882a593Smuzhiyun #define WM831X_DC1_ENA_SHIFT                         0  /* DC1_ENA */
89*4882a593Smuzhiyun #define WM831X_DC1_ENA_WIDTH                         1  /* DC1_ENA */
90*4882a593Smuzhiyun 
91*4882a593Smuzhiyun /*
92*4882a593Smuzhiyun  * R16465 (0x4051) - LDO Enable
93*4882a593Smuzhiyun  */
94*4882a593Smuzhiyun #define WM831X_LDO11_ENA                        0x0400  /* LDO11_ENA */
95*4882a593Smuzhiyun #define WM831X_LDO11_ENA_MASK                   0x0400  /* LDO11_ENA */
96*4882a593Smuzhiyun #define WM831X_LDO11_ENA_SHIFT                      10  /* LDO11_ENA */
97*4882a593Smuzhiyun #define WM831X_LDO11_ENA_WIDTH                       1  /* LDO11_ENA */
98*4882a593Smuzhiyun #define WM831X_LDO10_ENA                        0x0200  /* LDO10_ENA */
99*4882a593Smuzhiyun #define WM831X_LDO10_ENA_MASK                   0x0200  /* LDO10_ENA */
100*4882a593Smuzhiyun #define WM831X_LDO10_ENA_SHIFT                       9  /* LDO10_ENA */
101*4882a593Smuzhiyun #define WM831X_LDO10_ENA_WIDTH                       1  /* LDO10_ENA */
102*4882a593Smuzhiyun #define WM831X_LDO9_ENA                         0x0100  /* LDO9_ENA */
103*4882a593Smuzhiyun #define WM831X_LDO9_ENA_MASK                    0x0100  /* LDO9_ENA */
104*4882a593Smuzhiyun #define WM831X_LDO9_ENA_SHIFT                        8  /* LDO9_ENA */
105*4882a593Smuzhiyun #define WM831X_LDO9_ENA_WIDTH                        1  /* LDO9_ENA */
106*4882a593Smuzhiyun #define WM831X_LDO8_ENA                         0x0080  /* LDO8_ENA */
107*4882a593Smuzhiyun #define WM831X_LDO8_ENA_MASK                    0x0080  /* LDO8_ENA */
108*4882a593Smuzhiyun #define WM831X_LDO8_ENA_SHIFT                        7  /* LDO8_ENA */
109*4882a593Smuzhiyun #define WM831X_LDO8_ENA_WIDTH                        1  /* LDO8_ENA */
110*4882a593Smuzhiyun #define WM831X_LDO7_ENA                         0x0040  /* LDO7_ENA */
111*4882a593Smuzhiyun #define WM831X_LDO7_ENA_MASK                    0x0040  /* LDO7_ENA */
112*4882a593Smuzhiyun #define WM831X_LDO7_ENA_SHIFT                        6  /* LDO7_ENA */
113*4882a593Smuzhiyun #define WM831X_LDO7_ENA_WIDTH                        1  /* LDO7_ENA */
114*4882a593Smuzhiyun #define WM831X_LDO6_ENA                         0x0020  /* LDO6_ENA */
115*4882a593Smuzhiyun #define WM831X_LDO6_ENA_MASK                    0x0020  /* LDO6_ENA */
116*4882a593Smuzhiyun #define WM831X_LDO6_ENA_SHIFT                        5  /* LDO6_ENA */
117*4882a593Smuzhiyun #define WM831X_LDO6_ENA_WIDTH                        1  /* LDO6_ENA */
118*4882a593Smuzhiyun #define WM831X_LDO5_ENA                         0x0010  /* LDO5_ENA */
119*4882a593Smuzhiyun #define WM831X_LDO5_ENA_MASK                    0x0010  /* LDO5_ENA */
120*4882a593Smuzhiyun #define WM831X_LDO5_ENA_SHIFT                        4  /* LDO5_ENA */
121*4882a593Smuzhiyun #define WM831X_LDO5_ENA_WIDTH                        1  /* LDO5_ENA */
122*4882a593Smuzhiyun #define WM831X_LDO4_ENA                         0x0008  /* LDO4_ENA */
123*4882a593Smuzhiyun #define WM831X_LDO4_ENA_MASK                    0x0008  /* LDO4_ENA */
124*4882a593Smuzhiyun #define WM831X_LDO4_ENA_SHIFT                        3  /* LDO4_ENA */
125*4882a593Smuzhiyun #define WM831X_LDO4_ENA_WIDTH                        1  /* LDO4_ENA */
126*4882a593Smuzhiyun #define WM831X_LDO3_ENA                         0x0004  /* LDO3_ENA */
127*4882a593Smuzhiyun #define WM831X_LDO3_ENA_MASK                    0x0004  /* LDO3_ENA */
128*4882a593Smuzhiyun #define WM831X_LDO3_ENA_SHIFT                        2  /* LDO3_ENA */
129*4882a593Smuzhiyun #define WM831X_LDO3_ENA_WIDTH                        1  /* LDO3_ENA */
130*4882a593Smuzhiyun #define WM831X_LDO2_ENA                         0x0002  /* LDO2_ENA */
131*4882a593Smuzhiyun #define WM831X_LDO2_ENA_MASK                    0x0002  /* LDO2_ENA */
132*4882a593Smuzhiyun #define WM831X_LDO2_ENA_SHIFT                        1  /* LDO2_ENA */
133*4882a593Smuzhiyun #define WM831X_LDO2_ENA_WIDTH                        1  /* LDO2_ENA */
134*4882a593Smuzhiyun #define WM831X_LDO1_ENA                         0x0001  /* LDO1_ENA */
135*4882a593Smuzhiyun #define WM831X_LDO1_ENA_MASK                    0x0001  /* LDO1_ENA */
136*4882a593Smuzhiyun #define WM831X_LDO1_ENA_SHIFT                        0  /* LDO1_ENA */
137*4882a593Smuzhiyun #define WM831X_LDO1_ENA_WIDTH                        1  /* LDO1_ENA */
138*4882a593Smuzhiyun 
139*4882a593Smuzhiyun /*
140*4882a593Smuzhiyun  * R16466 (0x4052) - DCDC Status
141*4882a593Smuzhiyun  */
142*4882a593Smuzhiyun #define WM831X_EPE2_STS                         0x0080  /* EPE2_STS */
143*4882a593Smuzhiyun #define WM831X_EPE2_STS_MASK                    0x0080  /* EPE2_STS */
144*4882a593Smuzhiyun #define WM831X_EPE2_STS_SHIFT                        7  /* EPE2_STS */
145*4882a593Smuzhiyun #define WM831X_EPE2_STS_WIDTH                        1  /* EPE2_STS */
146*4882a593Smuzhiyun #define WM831X_EPE1_STS                         0x0040  /* EPE1_STS */
147*4882a593Smuzhiyun #define WM831X_EPE1_STS_MASK                    0x0040  /* EPE1_STS */
148*4882a593Smuzhiyun #define WM831X_EPE1_STS_SHIFT                        6  /* EPE1_STS */
149*4882a593Smuzhiyun #define WM831X_EPE1_STS_WIDTH                        1  /* EPE1_STS */
150*4882a593Smuzhiyun #define WM831X_DC4_STS                          0x0008  /* DC4_STS */
151*4882a593Smuzhiyun #define WM831X_DC4_STS_MASK                     0x0008  /* DC4_STS */
152*4882a593Smuzhiyun #define WM831X_DC4_STS_SHIFT                         3  /* DC4_STS */
153*4882a593Smuzhiyun #define WM831X_DC4_STS_WIDTH                         1  /* DC4_STS */
154*4882a593Smuzhiyun #define WM831X_DC3_STS                          0x0004  /* DC3_STS */
155*4882a593Smuzhiyun #define WM831X_DC3_STS_MASK                     0x0004  /* DC3_STS */
156*4882a593Smuzhiyun #define WM831X_DC3_STS_SHIFT                         2  /* DC3_STS */
157*4882a593Smuzhiyun #define WM831X_DC3_STS_WIDTH                         1  /* DC3_STS */
158*4882a593Smuzhiyun #define WM831X_DC2_STS                          0x0002  /* DC2_STS */
159*4882a593Smuzhiyun #define WM831X_DC2_STS_MASK                     0x0002  /* DC2_STS */
160*4882a593Smuzhiyun #define WM831X_DC2_STS_SHIFT                         1  /* DC2_STS */
161*4882a593Smuzhiyun #define WM831X_DC2_STS_WIDTH                         1  /* DC2_STS */
162*4882a593Smuzhiyun #define WM831X_DC1_STS                          0x0001  /* DC1_STS */
163*4882a593Smuzhiyun #define WM831X_DC1_STS_MASK                     0x0001  /* DC1_STS */
164*4882a593Smuzhiyun #define WM831X_DC1_STS_SHIFT                         0  /* DC1_STS */
165*4882a593Smuzhiyun #define WM831X_DC1_STS_WIDTH                         1  /* DC1_STS */
166*4882a593Smuzhiyun 
167*4882a593Smuzhiyun /*
168*4882a593Smuzhiyun  * R16467 (0x4053) - LDO Status
169*4882a593Smuzhiyun  */
170*4882a593Smuzhiyun #define WM831X_LDO11_STS                        0x0400  /* LDO11_STS */
171*4882a593Smuzhiyun #define WM831X_LDO11_STS_MASK                   0x0400  /* LDO11_STS */
172*4882a593Smuzhiyun #define WM831X_LDO11_STS_SHIFT                      10  /* LDO11_STS */
173*4882a593Smuzhiyun #define WM831X_LDO11_STS_WIDTH                       1  /* LDO11_STS */
174*4882a593Smuzhiyun #define WM831X_LDO10_STS                        0x0200  /* LDO10_STS */
175*4882a593Smuzhiyun #define WM831X_LDO10_STS_MASK                   0x0200  /* LDO10_STS */
176*4882a593Smuzhiyun #define WM831X_LDO10_STS_SHIFT                       9  /* LDO10_STS */
177*4882a593Smuzhiyun #define WM831X_LDO10_STS_WIDTH                       1  /* LDO10_STS */
178*4882a593Smuzhiyun #define WM831X_LDO9_STS                         0x0100  /* LDO9_STS */
179*4882a593Smuzhiyun #define WM831X_LDO9_STS_MASK                    0x0100  /* LDO9_STS */
180*4882a593Smuzhiyun #define WM831X_LDO9_STS_SHIFT                        8  /* LDO9_STS */
181*4882a593Smuzhiyun #define WM831X_LDO9_STS_WIDTH                        1  /* LDO9_STS */
182*4882a593Smuzhiyun #define WM831X_LDO8_STS                         0x0080  /* LDO8_STS */
183*4882a593Smuzhiyun #define WM831X_LDO8_STS_MASK                    0x0080  /* LDO8_STS */
184*4882a593Smuzhiyun #define WM831X_LDO8_STS_SHIFT                        7  /* LDO8_STS */
185*4882a593Smuzhiyun #define WM831X_LDO8_STS_WIDTH                        1  /* LDO8_STS */
186*4882a593Smuzhiyun #define WM831X_LDO7_STS                         0x0040  /* LDO7_STS */
187*4882a593Smuzhiyun #define WM831X_LDO7_STS_MASK                    0x0040  /* LDO7_STS */
188*4882a593Smuzhiyun #define WM831X_LDO7_STS_SHIFT                        6  /* LDO7_STS */
189*4882a593Smuzhiyun #define WM831X_LDO7_STS_WIDTH                        1  /* LDO7_STS */
190*4882a593Smuzhiyun #define WM831X_LDO6_STS                         0x0020  /* LDO6_STS */
191*4882a593Smuzhiyun #define WM831X_LDO6_STS_MASK                    0x0020  /* LDO6_STS */
192*4882a593Smuzhiyun #define WM831X_LDO6_STS_SHIFT                        5  /* LDO6_STS */
193*4882a593Smuzhiyun #define WM831X_LDO6_STS_WIDTH                        1  /* LDO6_STS */
194*4882a593Smuzhiyun #define WM831X_LDO5_STS                         0x0010  /* LDO5_STS */
195*4882a593Smuzhiyun #define WM831X_LDO5_STS_MASK                    0x0010  /* LDO5_STS */
196*4882a593Smuzhiyun #define WM831X_LDO5_STS_SHIFT                        4  /* LDO5_STS */
197*4882a593Smuzhiyun #define WM831X_LDO5_STS_WIDTH                        1  /* LDO5_STS */
198*4882a593Smuzhiyun #define WM831X_LDO4_STS                         0x0008  /* LDO4_STS */
199*4882a593Smuzhiyun #define WM831X_LDO4_STS_MASK                    0x0008  /* LDO4_STS */
200*4882a593Smuzhiyun #define WM831X_LDO4_STS_SHIFT                        3  /* LDO4_STS */
201*4882a593Smuzhiyun #define WM831X_LDO4_STS_WIDTH                        1  /* LDO4_STS */
202*4882a593Smuzhiyun #define WM831X_LDO3_STS                         0x0004  /* LDO3_STS */
203*4882a593Smuzhiyun #define WM831X_LDO3_STS_MASK                    0x0004  /* LDO3_STS */
204*4882a593Smuzhiyun #define WM831X_LDO3_STS_SHIFT                        2  /* LDO3_STS */
205*4882a593Smuzhiyun #define WM831X_LDO3_STS_WIDTH                        1  /* LDO3_STS */
206*4882a593Smuzhiyun #define WM831X_LDO2_STS                         0x0002  /* LDO2_STS */
207*4882a593Smuzhiyun #define WM831X_LDO2_STS_MASK                    0x0002  /* LDO2_STS */
208*4882a593Smuzhiyun #define WM831X_LDO2_STS_SHIFT                        1  /* LDO2_STS */
209*4882a593Smuzhiyun #define WM831X_LDO2_STS_WIDTH                        1  /* LDO2_STS */
210*4882a593Smuzhiyun #define WM831X_LDO1_STS                         0x0001  /* LDO1_STS */
211*4882a593Smuzhiyun #define WM831X_LDO1_STS_MASK                    0x0001  /* LDO1_STS */
212*4882a593Smuzhiyun #define WM831X_LDO1_STS_SHIFT                        0  /* LDO1_STS */
213*4882a593Smuzhiyun #define WM831X_LDO1_STS_WIDTH                        1  /* LDO1_STS */
214*4882a593Smuzhiyun 
215*4882a593Smuzhiyun /*
216*4882a593Smuzhiyun  * R16468 (0x4054) - DCDC UV Status
217*4882a593Smuzhiyun  */
218*4882a593Smuzhiyun #define WM831X_DC2_OV_STS                       0x2000  /* DC2_OV_STS */
219*4882a593Smuzhiyun #define WM831X_DC2_OV_STS_MASK                  0x2000  /* DC2_OV_STS */
220*4882a593Smuzhiyun #define WM831X_DC2_OV_STS_SHIFT                     13  /* DC2_OV_STS */
221*4882a593Smuzhiyun #define WM831X_DC2_OV_STS_WIDTH                      1  /* DC2_OV_STS */
222*4882a593Smuzhiyun #define WM831X_DC1_OV_STS                       0x1000  /* DC1_OV_STS */
223*4882a593Smuzhiyun #define WM831X_DC1_OV_STS_MASK                  0x1000  /* DC1_OV_STS */
224*4882a593Smuzhiyun #define WM831X_DC1_OV_STS_SHIFT                     12  /* DC1_OV_STS */
225*4882a593Smuzhiyun #define WM831X_DC1_OV_STS_WIDTH                      1  /* DC1_OV_STS */
226*4882a593Smuzhiyun #define WM831X_DC2_HC_STS                       0x0200  /* DC2_HC_STS */
227*4882a593Smuzhiyun #define WM831X_DC2_HC_STS_MASK                  0x0200  /* DC2_HC_STS */
228*4882a593Smuzhiyun #define WM831X_DC2_HC_STS_SHIFT                      9  /* DC2_HC_STS */
229*4882a593Smuzhiyun #define WM831X_DC2_HC_STS_WIDTH                      1  /* DC2_HC_STS */
230*4882a593Smuzhiyun #define WM831X_DC1_HC_STS                       0x0100  /* DC1_HC_STS */
231*4882a593Smuzhiyun #define WM831X_DC1_HC_STS_MASK                  0x0100  /* DC1_HC_STS */
232*4882a593Smuzhiyun #define WM831X_DC1_HC_STS_SHIFT                      8  /* DC1_HC_STS */
233*4882a593Smuzhiyun #define WM831X_DC1_HC_STS_WIDTH                      1  /* DC1_HC_STS */
234*4882a593Smuzhiyun #define WM831X_DC4_UV_STS                       0x0008  /* DC4_UV_STS */
235*4882a593Smuzhiyun #define WM831X_DC4_UV_STS_MASK                  0x0008  /* DC4_UV_STS */
236*4882a593Smuzhiyun #define WM831X_DC4_UV_STS_SHIFT                      3  /* DC4_UV_STS */
237*4882a593Smuzhiyun #define WM831X_DC4_UV_STS_WIDTH                      1  /* DC4_UV_STS */
238*4882a593Smuzhiyun #define WM831X_DC3_UV_STS                       0x0004  /* DC3_UV_STS */
239*4882a593Smuzhiyun #define WM831X_DC3_UV_STS_MASK                  0x0004  /* DC3_UV_STS */
240*4882a593Smuzhiyun #define WM831X_DC3_UV_STS_SHIFT                      2  /* DC3_UV_STS */
241*4882a593Smuzhiyun #define WM831X_DC3_UV_STS_WIDTH                      1  /* DC3_UV_STS */
242*4882a593Smuzhiyun #define WM831X_DC2_UV_STS                       0x0002  /* DC2_UV_STS */
243*4882a593Smuzhiyun #define WM831X_DC2_UV_STS_MASK                  0x0002  /* DC2_UV_STS */
244*4882a593Smuzhiyun #define WM831X_DC2_UV_STS_SHIFT                      1  /* DC2_UV_STS */
245*4882a593Smuzhiyun #define WM831X_DC2_UV_STS_WIDTH                      1  /* DC2_UV_STS */
246*4882a593Smuzhiyun #define WM831X_DC1_UV_STS                       0x0001  /* DC1_UV_STS */
247*4882a593Smuzhiyun #define WM831X_DC1_UV_STS_MASK                  0x0001  /* DC1_UV_STS */
248*4882a593Smuzhiyun #define WM831X_DC1_UV_STS_SHIFT                      0  /* DC1_UV_STS */
249*4882a593Smuzhiyun #define WM831X_DC1_UV_STS_WIDTH                      1  /* DC1_UV_STS */
250*4882a593Smuzhiyun 
251*4882a593Smuzhiyun /*
252*4882a593Smuzhiyun  * R16469 (0x4055) - LDO UV Status
253*4882a593Smuzhiyun  */
254*4882a593Smuzhiyun #define WM831X_INTLDO_UV_STS                    0x8000  /* INTLDO_UV_STS */
255*4882a593Smuzhiyun #define WM831X_INTLDO_UV_STS_MASK               0x8000  /* INTLDO_UV_STS */
256*4882a593Smuzhiyun #define WM831X_INTLDO_UV_STS_SHIFT                  15  /* INTLDO_UV_STS */
257*4882a593Smuzhiyun #define WM831X_INTLDO_UV_STS_WIDTH                   1  /* INTLDO_UV_STS */
258*4882a593Smuzhiyun #define WM831X_LDO10_UV_STS                     0x0200  /* LDO10_UV_STS */
259*4882a593Smuzhiyun #define WM831X_LDO10_UV_STS_MASK                0x0200  /* LDO10_UV_STS */
260*4882a593Smuzhiyun #define WM831X_LDO10_UV_STS_SHIFT                    9  /* LDO10_UV_STS */
261*4882a593Smuzhiyun #define WM831X_LDO10_UV_STS_WIDTH                    1  /* LDO10_UV_STS */
262*4882a593Smuzhiyun #define WM831X_LDO9_UV_STS                      0x0100  /* LDO9_UV_STS */
263*4882a593Smuzhiyun #define WM831X_LDO9_UV_STS_MASK                 0x0100  /* LDO9_UV_STS */
264*4882a593Smuzhiyun #define WM831X_LDO9_UV_STS_SHIFT                     8  /* LDO9_UV_STS */
265*4882a593Smuzhiyun #define WM831X_LDO9_UV_STS_WIDTH                     1  /* LDO9_UV_STS */
266*4882a593Smuzhiyun #define WM831X_LDO8_UV_STS                      0x0080  /* LDO8_UV_STS */
267*4882a593Smuzhiyun #define WM831X_LDO8_UV_STS_MASK                 0x0080  /* LDO8_UV_STS */
268*4882a593Smuzhiyun #define WM831X_LDO8_UV_STS_SHIFT                     7  /* LDO8_UV_STS */
269*4882a593Smuzhiyun #define WM831X_LDO8_UV_STS_WIDTH                     1  /* LDO8_UV_STS */
270*4882a593Smuzhiyun #define WM831X_LDO7_UV_STS                      0x0040  /* LDO7_UV_STS */
271*4882a593Smuzhiyun #define WM831X_LDO7_UV_STS_MASK                 0x0040  /* LDO7_UV_STS */
272*4882a593Smuzhiyun #define WM831X_LDO7_UV_STS_SHIFT                     6  /* LDO7_UV_STS */
273*4882a593Smuzhiyun #define WM831X_LDO7_UV_STS_WIDTH                     1  /* LDO7_UV_STS */
274*4882a593Smuzhiyun #define WM831X_LDO6_UV_STS                      0x0020  /* LDO6_UV_STS */
275*4882a593Smuzhiyun #define WM831X_LDO6_UV_STS_MASK                 0x0020  /* LDO6_UV_STS */
276*4882a593Smuzhiyun #define WM831X_LDO6_UV_STS_SHIFT                     5  /* LDO6_UV_STS */
277*4882a593Smuzhiyun #define WM831X_LDO6_UV_STS_WIDTH                     1  /* LDO6_UV_STS */
278*4882a593Smuzhiyun #define WM831X_LDO5_UV_STS                      0x0010  /* LDO5_UV_STS */
279*4882a593Smuzhiyun #define WM831X_LDO5_UV_STS_MASK                 0x0010  /* LDO5_UV_STS */
280*4882a593Smuzhiyun #define WM831X_LDO5_UV_STS_SHIFT                     4  /* LDO5_UV_STS */
281*4882a593Smuzhiyun #define WM831X_LDO5_UV_STS_WIDTH                     1  /* LDO5_UV_STS */
282*4882a593Smuzhiyun #define WM831X_LDO4_UV_STS                      0x0008  /* LDO4_UV_STS */
283*4882a593Smuzhiyun #define WM831X_LDO4_UV_STS_MASK                 0x0008  /* LDO4_UV_STS */
284*4882a593Smuzhiyun #define WM831X_LDO4_UV_STS_SHIFT                     3  /* LDO4_UV_STS */
285*4882a593Smuzhiyun #define WM831X_LDO4_UV_STS_WIDTH                     1  /* LDO4_UV_STS */
286*4882a593Smuzhiyun #define WM831X_LDO3_UV_STS                      0x0004  /* LDO3_UV_STS */
287*4882a593Smuzhiyun #define WM831X_LDO3_UV_STS_MASK                 0x0004  /* LDO3_UV_STS */
288*4882a593Smuzhiyun #define WM831X_LDO3_UV_STS_SHIFT                     2  /* LDO3_UV_STS */
289*4882a593Smuzhiyun #define WM831X_LDO3_UV_STS_WIDTH                     1  /* LDO3_UV_STS */
290*4882a593Smuzhiyun #define WM831X_LDO2_UV_STS                      0x0002  /* LDO2_UV_STS */
291*4882a593Smuzhiyun #define WM831X_LDO2_UV_STS_MASK                 0x0002  /* LDO2_UV_STS */
292*4882a593Smuzhiyun #define WM831X_LDO2_UV_STS_SHIFT                     1  /* LDO2_UV_STS */
293*4882a593Smuzhiyun #define WM831X_LDO2_UV_STS_WIDTH                     1  /* LDO2_UV_STS */
294*4882a593Smuzhiyun #define WM831X_LDO1_UV_STS                      0x0001  /* LDO1_UV_STS */
295*4882a593Smuzhiyun #define WM831X_LDO1_UV_STS_MASK                 0x0001  /* LDO1_UV_STS */
296*4882a593Smuzhiyun #define WM831X_LDO1_UV_STS_SHIFT                     0  /* LDO1_UV_STS */
297*4882a593Smuzhiyun #define WM831X_LDO1_UV_STS_WIDTH                     1  /* LDO1_UV_STS */
298*4882a593Smuzhiyun 
299*4882a593Smuzhiyun /*
300*4882a593Smuzhiyun  * R16470 (0x4056) - DC1 Control 1
301*4882a593Smuzhiyun  */
302*4882a593Smuzhiyun #define WM831X_DC1_RATE_MASK                    0xC000  /* DC1_RATE - [15:14] */
303*4882a593Smuzhiyun #define WM831X_DC1_RATE_SHIFT                       14  /* DC1_RATE - [15:14] */
304*4882a593Smuzhiyun #define WM831X_DC1_RATE_WIDTH                        2  /* DC1_RATE - [15:14] */
305*4882a593Smuzhiyun #define WM831X_DC1_PHASE                        0x1000  /* DC1_PHASE */
306*4882a593Smuzhiyun #define WM831X_DC1_PHASE_MASK                   0x1000  /* DC1_PHASE */
307*4882a593Smuzhiyun #define WM831X_DC1_PHASE_SHIFT                      12  /* DC1_PHASE */
308*4882a593Smuzhiyun #define WM831X_DC1_PHASE_WIDTH                       1  /* DC1_PHASE */
309*4882a593Smuzhiyun #define WM831X_DC1_FREQ_MASK                    0x0300  /* DC1_FREQ - [9:8] */
310*4882a593Smuzhiyun #define WM831X_DC1_FREQ_SHIFT                        8  /* DC1_FREQ - [9:8] */
311*4882a593Smuzhiyun #define WM831X_DC1_FREQ_WIDTH                        2  /* DC1_FREQ - [9:8] */
312*4882a593Smuzhiyun #define WM831X_DC1_FLT                          0x0080  /* DC1_FLT */
313*4882a593Smuzhiyun #define WM831X_DC1_FLT_MASK                     0x0080  /* DC1_FLT */
314*4882a593Smuzhiyun #define WM831X_DC1_FLT_SHIFT                         7  /* DC1_FLT */
315*4882a593Smuzhiyun #define WM831X_DC1_FLT_WIDTH                         1  /* DC1_FLT */
316*4882a593Smuzhiyun #define WM831X_DC1_SOFT_START_MASK              0x0030  /* DC1_SOFT_START - [5:4] */
317*4882a593Smuzhiyun #define WM831X_DC1_SOFT_START_SHIFT                  4  /* DC1_SOFT_START - [5:4] */
318*4882a593Smuzhiyun #define WM831X_DC1_SOFT_START_WIDTH                  2  /* DC1_SOFT_START - [5:4] */
319*4882a593Smuzhiyun #define WM831X_DC1_CAP_MASK                     0x0003  /* DC1_CAP - [1:0] */
320*4882a593Smuzhiyun #define WM831X_DC1_CAP_SHIFT                         0  /* DC1_CAP - [1:0] */
321*4882a593Smuzhiyun #define WM831X_DC1_CAP_WIDTH                         2  /* DC1_CAP - [1:0] */
322*4882a593Smuzhiyun 
323*4882a593Smuzhiyun /*
324*4882a593Smuzhiyun  * R16471 (0x4057) - DC1 Control 2
325*4882a593Smuzhiyun  */
326*4882a593Smuzhiyun #define WM831X_DC1_ERR_ACT_MASK                 0xC000  /* DC1_ERR_ACT - [15:14] */
327*4882a593Smuzhiyun #define WM831X_DC1_ERR_ACT_SHIFT                    14  /* DC1_ERR_ACT - [15:14] */
328*4882a593Smuzhiyun #define WM831X_DC1_ERR_ACT_WIDTH                     2  /* DC1_ERR_ACT - [15:14] */
329*4882a593Smuzhiyun #define WM831X_DC1_HWC_SRC_MASK                 0x1800  /* DC1_HWC_SRC - [12:11] */
330*4882a593Smuzhiyun #define WM831X_DC1_HWC_SRC_SHIFT                    11  /* DC1_HWC_SRC - [12:11] */
331*4882a593Smuzhiyun #define WM831X_DC1_HWC_SRC_WIDTH                     2  /* DC1_HWC_SRC - [12:11] */
332*4882a593Smuzhiyun #define WM831X_DC1_HWC_VSEL                     0x0400  /* DC1_HWC_VSEL */
333*4882a593Smuzhiyun #define WM831X_DC1_HWC_VSEL_MASK                0x0400  /* DC1_HWC_VSEL */
334*4882a593Smuzhiyun #define WM831X_DC1_HWC_VSEL_SHIFT                   10  /* DC1_HWC_VSEL */
335*4882a593Smuzhiyun #define WM831X_DC1_HWC_VSEL_WIDTH                    1  /* DC1_HWC_VSEL */
336*4882a593Smuzhiyun #define WM831X_DC1_HWC_MODE_MASK                0x0300  /* DC1_HWC_MODE - [9:8] */
337*4882a593Smuzhiyun #define WM831X_DC1_HWC_MODE_SHIFT                    8  /* DC1_HWC_MODE - [9:8] */
338*4882a593Smuzhiyun #define WM831X_DC1_HWC_MODE_WIDTH                    2  /* DC1_HWC_MODE - [9:8] */
339*4882a593Smuzhiyun #define WM831X_DC1_HC_THR_MASK                  0x0070  /* DC1_HC_THR - [6:4] */
340*4882a593Smuzhiyun #define WM831X_DC1_HC_THR_SHIFT                      4  /* DC1_HC_THR - [6:4] */
341*4882a593Smuzhiyun #define WM831X_DC1_HC_THR_WIDTH                      3  /* DC1_HC_THR - [6:4] */
342*4882a593Smuzhiyun #define WM831X_DC1_HC_IND_ENA                   0x0001  /* DC1_HC_IND_ENA */
343*4882a593Smuzhiyun #define WM831X_DC1_HC_IND_ENA_MASK              0x0001  /* DC1_HC_IND_ENA */
344*4882a593Smuzhiyun #define WM831X_DC1_HC_IND_ENA_SHIFT                  0  /* DC1_HC_IND_ENA */
345*4882a593Smuzhiyun #define WM831X_DC1_HC_IND_ENA_WIDTH                  1  /* DC1_HC_IND_ENA */
346*4882a593Smuzhiyun 
347*4882a593Smuzhiyun /*
348*4882a593Smuzhiyun  * R16472 (0x4058) - DC1 ON Config
349*4882a593Smuzhiyun  */
350*4882a593Smuzhiyun #define WM831X_DC1_ON_SLOT_MASK                 0xE000  /* DC1_ON_SLOT - [15:13] */
351*4882a593Smuzhiyun #define WM831X_DC1_ON_SLOT_SHIFT                    13  /* DC1_ON_SLOT - [15:13] */
352*4882a593Smuzhiyun #define WM831X_DC1_ON_SLOT_WIDTH                     3  /* DC1_ON_SLOT - [15:13] */
353*4882a593Smuzhiyun #define WM831X_DC1_ON_MODE_MASK                 0x0300  /* DC1_ON_MODE - [9:8] */
354*4882a593Smuzhiyun #define WM831X_DC1_ON_MODE_SHIFT                     8  /* DC1_ON_MODE - [9:8] */
355*4882a593Smuzhiyun #define WM831X_DC1_ON_MODE_WIDTH                     2  /* DC1_ON_MODE - [9:8] */
356*4882a593Smuzhiyun #define WM831X_DC1_ON_VSEL_MASK                 0x007F  /* DC1_ON_VSEL - [6:0] */
357*4882a593Smuzhiyun #define WM831X_DC1_ON_VSEL_SHIFT                     0  /* DC1_ON_VSEL - [6:0] */
358*4882a593Smuzhiyun #define WM831X_DC1_ON_VSEL_WIDTH                     7  /* DC1_ON_VSEL - [6:0] */
359*4882a593Smuzhiyun 
360*4882a593Smuzhiyun /*
361*4882a593Smuzhiyun  * R16473 (0x4059) - DC1 SLEEP Control
362*4882a593Smuzhiyun  */
363*4882a593Smuzhiyun #define WM831X_DC1_SLP_SLOT_MASK                0xE000  /* DC1_SLP_SLOT - [15:13] */
364*4882a593Smuzhiyun #define WM831X_DC1_SLP_SLOT_SHIFT                   13  /* DC1_SLP_SLOT - [15:13] */
365*4882a593Smuzhiyun #define WM831X_DC1_SLP_SLOT_WIDTH                    3  /* DC1_SLP_SLOT - [15:13] */
366*4882a593Smuzhiyun #define WM831X_DC1_SLP_MODE_MASK                0x0300  /* DC1_SLP_MODE - [9:8] */
367*4882a593Smuzhiyun #define WM831X_DC1_SLP_MODE_SHIFT                    8  /* DC1_SLP_MODE - [9:8] */
368*4882a593Smuzhiyun #define WM831X_DC1_SLP_MODE_WIDTH                    2  /* DC1_SLP_MODE - [9:8] */
369*4882a593Smuzhiyun #define WM831X_DC1_SLP_VSEL_MASK                0x007F  /* DC1_SLP_VSEL - [6:0] */
370*4882a593Smuzhiyun #define WM831X_DC1_SLP_VSEL_SHIFT                    0  /* DC1_SLP_VSEL - [6:0] */
371*4882a593Smuzhiyun #define WM831X_DC1_SLP_VSEL_WIDTH                    7  /* DC1_SLP_VSEL - [6:0] */
372*4882a593Smuzhiyun 
373*4882a593Smuzhiyun /*
374*4882a593Smuzhiyun  * R16474 (0x405A) - DC1 DVS Control
375*4882a593Smuzhiyun  */
376*4882a593Smuzhiyun #define WM831X_DC1_DVS_SRC_MASK                 0x1800  /* DC1_DVS_SRC - [12:11] */
377*4882a593Smuzhiyun #define WM831X_DC1_DVS_SRC_SHIFT                    11  /* DC1_DVS_SRC - [12:11] */
378*4882a593Smuzhiyun #define WM831X_DC1_DVS_SRC_WIDTH                     2  /* DC1_DVS_SRC - [12:11] */
379*4882a593Smuzhiyun #define WM831X_DC1_DVS_VSEL_MASK                0x007F  /* DC1_DVS_VSEL - [6:0] */
380*4882a593Smuzhiyun #define WM831X_DC1_DVS_VSEL_SHIFT                    0  /* DC1_DVS_VSEL - [6:0] */
381*4882a593Smuzhiyun #define WM831X_DC1_DVS_VSEL_WIDTH                    7  /* DC1_DVS_VSEL - [6:0] */
382*4882a593Smuzhiyun 
383*4882a593Smuzhiyun /*
384*4882a593Smuzhiyun  * R16475 (0x405B) - DC2 Control 1
385*4882a593Smuzhiyun  */
386*4882a593Smuzhiyun #define WM831X_DC2_RATE_MASK                    0xC000  /* DC2_RATE - [15:14] */
387*4882a593Smuzhiyun #define WM831X_DC2_RATE_SHIFT                       14  /* DC2_RATE - [15:14] */
388*4882a593Smuzhiyun #define WM831X_DC2_RATE_WIDTH                        2  /* DC2_RATE - [15:14] */
389*4882a593Smuzhiyun #define WM831X_DC2_PHASE                        0x1000  /* DC2_PHASE */
390*4882a593Smuzhiyun #define WM831X_DC2_PHASE_MASK                   0x1000  /* DC2_PHASE */
391*4882a593Smuzhiyun #define WM831X_DC2_PHASE_SHIFT                      12  /* DC2_PHASE */
392*4882a593Smuzhiyun #define WM831X_DC2_PHASE_WIDTH                       1  /* DC2_PHASE */
393*4882a593Smuzhiyun #define WM831X_DC2_FREQ_MASK                    0x0300  /* DC2_FREQ - [9:8] */
394*4882a593Smuzhiyun #define WM831X_DC2_FREQ_SHIFT                        8  /* DC2_FREQ - [9:8] */
395*4882a593Smuzhiyun #define WM831X_DC2_FREQ_WIDTH                        2  /* DC2_FREQ - [9:8] */
396*4882a593Smuzhiyun #define WM831X_DC2_FLT                          0x0080  /* DC2_FLT */
397*4882a593Smuzhiyun #define WM831X_DC2_FLT_MASK                     0x0080  /* DC2_FLT */
398*4882a593Smuzhiyun #define WM831X_DC2_FLT_SHIFT                         7  /* DC2_FLT */
399*4882a593Smuzhiyun #define WM831X_DC2_FLT_WIDTH                         1  /* DC2_FLT */
400*4882a593Smuzhiyun #define WM831X_DC2_SOFT_START_MASK              0x0030  /* DC2_SOFT_START - [5:4] */
401*4882a593Smuzhiyun #define WM831X_DC2_SOFT_START_SHIFT                  4  /* DC2_SOFT_START - [5:4] */
402*4882a593Smuzhiyun #define WM831X_DC2_SOFT_START_WIDTH                  2  /* DC2_SOFT_START - [5:4] */
403*4882a593Smuzhiyun #define WM831X_DC2_CAP_MASK                     0x0003  /* DC2_CAP - [1:0] */
404*4882a593Smuzhiyun #define WM831X_DC2_CAP_SHIFT                         0  /* DC2_CAP - [1:0] */
405*4882a593Smuzhiyun #define WM831X_DC2_CAP_WIDTH                         2  /* DC2_CAP - [1:0] */
406*4882a593Smuzhiyun 
407*4882a593Smuzhiyun /*
408*4882a593Smuzhiyun  * R16476 (0x405C) - DC2 Control 2
409*4882a593Smuzhiyun  */
410*4882a593Smuzhiyun #define WM831X_DC2_ERR_ACT_MASK                 0xC000  /* DC2_ERR_ACT - [15:14] */
411*4882a593Smuzhiyun #define WM831X_DC2_ERR_ACT_SHIFT                    14  /* DC2_ERR_ACT - [15:14] */
412*4882a593Smuzhiyun #define WM831X_DC2_ERR_ACT_WIDTH                     2  /* DC2_ERR_ACT - [15:14] */
413*4882a593Smuzhiyun #define WM831X_DC2_HWC_SRC_MASK                 0x1800  /* DC2_HWC_SRC - [12:11] */
414*4882a593Smuzhiyun #define WM831X_DC2_HWC_SRC_SHIFT                    11  /* DC2_HWC_SRC - [12:11] */
415*4882a593Smuzhiyun #define WM831X_DC2_HWC_SRC_WIDTH                     2  /* DC2_HWC_SRC - [12:11] */
416*4882a593Smuzhiyun #define WM831X_DC2_HWC_VSEL                     0x0400  /* DC2_HWC_VSEL */
417*4882a593Smuzhiyun #define WM831X_DC2_HWC_VSEL_MASK                0x0400  /* DC2_HWC_VSEL */
418*4882a593Smuzhiyun #define WM831X_DC2_HWC_VSEL_SHIFT                   10  /* DC2_HWC_VSEL */
419*4882a593Smuzhiyun #define WM831X_DC2_HWC_VSEL_WIDTH                    1  /* DC2_HWC_VSEL */
420*4882a593Smuzhiyun #define WM831X_DC2_HWC_MODE_MASK                0x0300  /* DC2_HWC_MODE - [9:8] */
421*4882a593Smuzhiyun #define WM831X_DC2_HWC_MODE_SHIFT                    8  /* DC2_HWC_MODE - [9:8] */
422*4882a593Smuzhiyun #define WM831X_DC2_HWC_MODE_WIDTH                    2  /* DC2_HWC_MODE - [9:8] */
423*4882a593Smuzhiyun #define WM831X_DC2_HC_THR_MASK                  0x0070  /* DC2_HC_THR - [6:4] */
424*4882a593Smuzhiyun #define WM831X_DC2_HC_THR_SHIFT                      4  /* DC2_HC_THR - [6:4] */
425*4882a593Smuzhiyun #define WM831X_DC2_HC_THR_WIDTH                      3  /* DC2_HC_THR - [6:4] */
426*4882a593Smuzhiyun #define WM831X_DC2_HC_IND_ENA                   0x0001  /* DC2_HC_IND_ENA */
427*4882a593Smuzhiyun #define WM831X_DC2_HC_IND_ENA_MASK              0x0001  /* DC2_HC_IND_ENA */
428*4882a593Smuzhiyun #define WM831X_DC2_HC_IND_ENA_SHIFT                  0  /* DC2_HC_IND_ENA */
429*4882a593Smuzhiyun #define WM831X_DC2_HC_IND_ENA_WIDTH                  1  /* DC2_HC_IND_ENA */
430*4882a593Smuzhiyun 
431*4882a593Smuzhiyun /*
432*4882a593Smuzhiyun  * R16477 (0x405D) - DC2 ON Config
433*4882a593Smuzhiyun  */
434*4882a593Smuzhiyun #define WM831X_DC2_ON_SLOT_MASK                 0xE000  /* DC2_ON_SLOT - [15:13] */
435*4882a593Smuzhiyun #define WM831X_DC2_ON_SLOT_SHIFT                    13  /* DC2_ON_SLOT - [15:13] */
436*4882a593Smuzhiyun #define WM831X_DC2_ON_SLOT_WIDTH                     3  /* DC2_ON_SLOT - [15:13] */
437*4882a593Smuzhiyun #define WM831X_DC2_ON_MODE_MASK                 0x0300  /* DC2_ON_MODE - [9:8] */
438*4882a593Smuzhiyun #define WM831X_DC2_ON_MODE_SHIFT                     8  /* DC2_ON_MODE - [9:8] */
439*4882a593Smuzhiyun #define WM831X_DC2_ON_MODE_WIDTH                     2  /* DC2_ON_MODE - [9:8] */
440*4882a593Smuzhiyun #define WM831X_DC2_ON_VSEL_MASK                 0x007F  /* DC2_ON_VSEL - [6:0] */
441*4882a593Smuzhiyun #define WM831X_DC2_ON_VSEL_SHIFT                     0  /* DC2_ON_VSEL - [6:0] */
442*4882a593Smuzhiyun #define WM831X_DC2_ON_VSEL_WIDTH                     7  /* DC2_ON_VSEL - [6:0] */
443*4882a593Smuzhiyun 
444*4882a593Smuzhiyun /*
445*4882a593Smuzhiyun  * R16478 (0x405E) - DC2 SLEEP Control
446*4882a593Smuzhiyun  */
447*4882a593Smuzhiyun #define WM831X_DC2_SLP_SLOT_MASK                0xE000  /* DC2_SLP_SLOT - [15:13] */
448*4882a593Smuzhiyun #define WM831X_DC2_SLP_SLOT_SHIFT                   13  /* DC2_SLP_SLOT - [15:13] */
449*4882a593Smuzhiyun #define WM831X_DC2_SLP_SLOT_WIDTH                    3  /* DC2_SLP_SLOT - [15:13] */
450*4882a593Smuzhiyun #define WM831X_DC2_SLP_MODE_MASK                0x0300  /* DC2_SLP_MODE - [9:8] */
451*4882a593Smuzhiyun #define WM831X_DC2_SLP_MODE_SHIFT                    8  /* DC2_SLP_MODE - [9:8] */
452*4882a593Smuzhiyun #define WM831X_DC2_SLP_MODE_WIDTH                    2  /* DC2_SLP_MODE - [9:8] */
453*4882a593Smuzhiyun #define WM831X_DC2_SLP_VSEL_MASK                0x007F  /* DC2_SLP_VSEL - [6:0] */
454*4882a593Smuzhiyun #define WM831X_DC2_SLP_VSEL_SHIFT                    0  /* DC2_SLP_VSEL - [6:0] */
455*4882a593Smuzhiyun #define WM831X_DC2_SLP_VSEL_WIDTH                    7  /* DC2_SLP_VSEL - [6:0] */
456*4882a593Smuzhiyun 
457*4882a593Smuzhiyun /*
458*4882a593Smuzhiyun  * R16479 (0x405F) - DC2 DVS Control
459*4882a593Smuzhiyun  */
460*4882a593Smuzhiyun #define WM831X_DC2_DVS_SRC_MASK                 0x1800  /* DC2_DVS_SRC - [12:11] */
461*4882a593Smuzhiyun #define WM831X_DC2_DVS_SRC_SHIFT                    11  /* DC2_DVS_SRC - [12:11] */
462*4882a593Smuzhiyun #define WM831X_DC2_DVS_SRC_WIDTH                     2  /* DC2_DVS_SRC - [12:11] */
463*4882a593Smuzhiyun #define WM831X_DC2_DVS_VSEL_MASK                0x007F  /* DC2_DVS_VSEL - [6:0] */
464*4882a593Smuzhiyun #define WM831X_DC2_DVS_VSEL_SHIFT                    0  /* DC2_DVS_VSEL - [6:0] */
465*4882a593Smuzhiyun #define WM831X_DC2_DVS_VSEL_WIDTH                    7  /* DC2_DVS_VSEL - [6:0] */
466*4882a593Smuzhiyun 
467*4882a593Smuzhiyun /*
468*4882a593Smuzhiyun  * R16480 (0x4060) - DC3 Control 1
469*4882a593Smuzhiyun  */
470*4882a593Smuzhiyun #define WM831X_DC3_PHASE                        0x1000  /* DC3_PHASE */
471*4882a593Smuzhiyun #define WM831X_DC3_PHASE_MASK                   0x1000  /* DC3_PHASE */
472*4882a593Smuzhiyun #define WM831X_DC3_PHASE_SHIFT                      12  /* DC3_PHASE */
473*4882a593Smuzhiyun #define WM831X_DC3_PHASE_WIDTH                       1  /* DC3_PHASE */
474*4882a593Smuzhiyun #define WM831X_DC3_FLT                          0x0080  /* DC3_FLT */
475*4882a593Smuzhiyun #define WM831X_DC3_FLT_MASK                     0x0080  /* DC3_FLT */
476*4882a593Smuzhiyun #define WM831X_DC3_FLT_SHIFT                         7  /* DC3_FLT */
477*4882a593Smuzhiyun #define WM831X_DC3_FLT_WIDTH                         1  /* DC3_FLT */
478*4882a593Smuzhiyun #define WM831X_DC3_SOFT_START_MASK              0x0030  /* DC3_SOFT_START - [5:4] */
479*4882a593Smuzhiyun #define WM831X_DC3_SOFT_START_SHIFT                  4  /* DC3_SOFT_START - [5:4] */
480*4882a593Smuzhiyun #define WM831X_DC3_SOFT_START_WIDTH                  2  /* DC3_SOFT_START - [5:4] */
481*4882a593Smuzhiyun #define WM831X_DC3_STNBY_LIM_MASK               0x000C  /* DC3_STNBY_LIM - [3:2] */
482*4882a593Smuzhiyun #define WM831X_DC3_STNBY_LIM_SHIFT                   2  /* DC3_STNBY_LIM - [3:2] */
483*4882a593Smuzhiyun #define WM831X_DC3_STNBY_LIM_WIDTH                   2  /* DC3_STNBY_LIM - [3:2] */
484*4882a593Smuzhiyun #define WM831X_DC3_CAP_MASK                     0x0003  /* DC3_CAP - [1:0] */
485*4882a593Smuzhiyun #define WM831X_DC3_CAP_SHIFT                         0  /* DC3_CAP - [1:0] */
486*4882a593Smuzhiyun #define WM831X_DC3_CAP_WIDTH                         2  /* DC3_CAP - [1:0] */
487*4882a593Smuzhiyun 
488*4882a593Smuzhiyun /*
489*4882a593Smuzhiyun  * R16481 (0x4061) - DC3 Control 2
490*4882a593Smuzhiyun  */
491*4882a593Smuzhiyun #define WM831X_DC3_ERR_ACT_MASK                 0xC000  /* DC3_ERR_ACT - [15:14] */
492*4882a593Smuzhiyun #define WM831X_DC3_ERR_ACT_SHIFT                    14  /* DC3_ERR_ACT - [15:14] */
493*4882a593Smuzhiyun #define WM831X_DC3_ERR_ACT_WIDTH                     2  /* DC3_ERR_ACT - [15:14] */
494*4882a593Smuzhiyun #define WM831X_DC3_HWC_SRC_MASK                 0x1800  /* DC3_HWC_SRC - [12:11] */
495*4882a593Smuzhiyun #define WM831X_DC3_HWC_SRC_SHIFT                    11  /* DC3_HWC_SRC - [12:11] */
496*4882a593Smuzhiyun #define WM831X_DC3_HWC_SRC_WIDTH                     2  /* DC3_HWC_SRC - [12:11] */
497*4882a593Smuzhiyun #define WM831X_DC3_HWC_VSEL                     0x0400  /* DC3_HWC_VSEL */
498*4882a593Smuzhiyun #define WM831X_DC3_HWC_VSEL_MASK                0x0400  /* DC3_HWC_VSEL */
499*4882a593Smuzhiyun #define WM831X_DC3_HWC_VSEL_SHIFT                   10  /* DC3_HWC_VSEL */
500*4882a593Smuzhiyun #define WM831X_DC3_HWC_VSEL_WIDTH                    1  /* DC3_HWC_VSEL */
501*4882a593Smuzhiyun #define WM831X_DC3_HWC_MODE_MASK                0x0300  /* DC3_HWC_MODE - [9:8] */
502*4882a593Smuzhiyun #define WM831X_DC3_HWC_MODE_SHIFT                    8  /* DC3_HWC_MODE - [9:8] */
503*4882a593Smuzhiyun #define WM831X_DC3_HWC_MODE_WIDTH                    2  /* DC3_HWC_MODE - [9:8] */
504*4882a593Smuzhiyun #define WM831X_DC3_OVP                          0x0080  /* DC3_OVP */
505*4882a593Smuzhiyun #define WM831X_DC3_OVP_MASK                     0x0080  /* DC3_OVP */
506*4882a593Smuzhiyun #define WM831X_DC3_OVP_SHIFT                         7  /* DC3_OVP */
507*4882a593Smuzhiyun #define WM831X_DC3_OVP_WIDTH                         1  /* DC3_OVP */
508*4882a593Smuzhiyun 
509*4882a593Smuzhiyun /*
510*4882a593Smuzhiyun  * R16482 (0x4062) - DC3 ON Config
511*4882a593Smuzhiyun  */
512*4882a593Smuzhiyun #define WM831X_DC3_ON_SLOT_MASK                 0xE000  /* DC3_ON_SLOT - [15:13] */
513*4882a593Smuzhiyun #define WM831X_DC3_ON_SLOT_SHIFT                    13  /* DC3_ON_SLOT - [15:13] */
514*4882a593Smuzhiyun #define WM831X_DC3_ON_SLOT_WIDTH                     3  /* DC3_ON_SLOT - [15:13] */
515*4882a593Smuzhiyun #define WM831X_DC3_ON_MODE_MASK                 0x0300  /* DC3_ON_MODE - [9:8] */
516*4882a593Smuzhiyun #define WM831X_DC3_ON_MODE_SHIFT                     8  /* DC3_ON_MODE - [9:8] */
517*4882a593Smuzhiyun #define WM831X_DC3_ON_MODE_WIDTH                     2  /* DC3_ON_MODE - [9:8] */
518*4882a593Smuzhiyun #define WM831X_DC3_ON_VSEL_MASK                 0x007F  /* DC3_ON_VSEL - [6:0] */
519*4882a593Smuzhiyun #define WM831X_DC3_ON_VSEL_SHIFT                     0  /* DC3_ON_VSEL - [6:0] */
520*4882a593Smuzhiyun #define WM831X_DC3_ON_VSEL_WIDTH                     7  /* DC3_ON_VSEL - [6:0] */
521*4882a593Smuzhiyun 
522*4882a593Smuzhiyun /*
523*4882a593Smuzhiyun  * R16483 (0x4063) - DC3 SLEEP Control
524*4882a593Smuzhiyun  */
525*4882a593Smuzhiyun #define WM831X_DC3_SLP_SLOT_MASK                0xE000  /* DC3_SLP_SLOT - [15:13] */
526*4882a593Smuzhiyun #define WM831X_DC3_SLP_SLOT_SHIFT                   13  /* DC3_SLP_SLOT - [15:13] */
527*4882a593Smuzhiyun #define WM831X_DC3_SLP_SLOT_WIDTH                    3  /* DC3_SLP_SLOT - [15:13] */
528*4882a593Smuzhiyun #define WM831X_DC3_SLP_MODE_MASK                0x0300  /* DC3_SLP_MODE - [9:8] */
529*4882a593Smuzhiyun #define WM831X_DC3_SLP_MODE_SHIFT                    8  /* DC3_SLP_MODE - [9:8] */
530*4882a593Smuzhiyun #define WM831X_DC3_SLP_MODE_WIDTH                    2  /* DC3_SLP_MODE - [9:8] */
531*4882a593Smuzhiyun #define WM831X_DC3_SLP_VSEL_MASK                0x007F  /* DC3_SLP_VSEL - [6:0] */
532*4882a593Smuzhiyun #define WM831X_DC3_SLP_VSEL_SHIFT                    0  /* DC3_SLP_VSEL - [6:0] */
533*4882a593Smuzhiyun #define WM831X_DC3_SLP_VSEL_WIDTH                    7  /* DC3_SLP_VSEL - [6:0] */
534*4882a593Smuzhiyun 
535*4882a593Smuzhiyun /*
536*4882a593Smuzhiyun  * R16484 (0x4064) - DC4 Control
537*4882a593Smuzhiyun  */
538*4882a593Smuzhiyun #define WM831X_DC4_ERR_ACT_MASK                 0xC000  /* DC4_ERR_ACT - [15:14] */
539*4882a593Smuzhiyun #define WM831X_DC4_ERR_ACT_SHIFT                    14  /* DC4_ERR_ACT - [15:14] */
540*4882a593Smuzhiyun #define WM831X_DC4_ERR_ACT_WIDTH                     2  /* DC4_ERR_ACT - [15:14] */
541*4882a593Smuzhiyun #define WM831X_DC4_HWC_SRC_MASK                 0x1800  /* DC4_HWC_SRC - [12:11] */
542*4882a593Smuzhiyun #define WM831X_DC4_HWC_SRC_SHIFT                    11  /* DC4_HWC_SRC - [12:11] */
543*4882a593Smuzhiyun #define WM831X_DC4_HWC_SRC_WIDTH                     2  /* DC4_HWC_SRC - [12:11] */
544*4882a593Smuzhiyun #define WM831X_DC4_HWC_MODE                     0x0100  /* DC4_HWC_MODE */
545*4882a593Smuzhiyun #define WM831X_DC4_HWC_MODE_MASK                0x0100  /* DC4_HWC_MODE */
546*4882a593Smuzhiyun #define WM831X_DC4_HWC_MODE_SHIFT                    8  /* DC4_HWC_MODE */
547*4882a593Smuzhiyun #define WM831X_DC4_HWC_MODE_WIDTH                    1  /* DC4_HWC_MODE */
548*4882a593Smuzhiyun #define WM831X_DC4_RANGE_MASK                   0x000C  /* DC4_RANGE - [3:2] */
549*4882a593Smuzhiyun #define WM831X_DC4_RANGE_SHIFT                       2  /* DC4_RANGE - [3:2] */
550*4882a593Smuzhiyun #define WM831X_DC4_RANGE_WIDTH                       2  /* DC4_RANGE - [3:2] */
551*4882a593Smuzhiyun #define WM831X_DC4_FBSRC                        0x0001  /* DC4_FBSRC */
552*4882a593Smuzhiyun #define WM831X_DC4_FBSRC_MASK                   0x0001  /* DC4_FBSRC */
553*4882a593Smuzhiyun #define WM831X_DC4_FBSRC_SHIFT                       0  /* DC4_FBSRC */
554*4882a593Smuzhiyun #define WM831X_DC4_FBSRC_WIDTH                       1  /* DC4_FBSRC */
555*4882a593Smuzhiyun 
556*4882a593Smuzhiyun /*
557*4882a593Smuzhiyun  * R16485 (0x4065) - DC4 SLEEP Control
558*4882a593Smuzhiyun  */
559*4882a593Smuzhiyun #define WM831X_DC4_SLPENA                       0x0100  /* DC4_SLPENA */
560*4882a593Smuzhiyun #define WM831X_DC4_SLPENA_MASK                  0x0100  /* DC4_SLPENA */
561*4882a593Smuzhiyun #define WM831X_DC4_SLPENA_SHIFT                      8  /* DC4_SLPENA */
562*4882a593Smuzhiyun #define WM831X_DC4_SLPENA_WIDTH                      1  /* DC4_SLPENA */
563*4882a593Smuzhiyun 
564*4882a593Smuzhiyun /*
565*4882a593Smuzhiyun  * R16488 (0x4068) - LDO1 Control
566*4882a593Smuzhiyun  */
567*4882a593Smuzhiyun #define WM831X_LDO1_ERR_ACT_MASK                0xC000  /* LDO1_ERR_ACT - [15:14] */
568*4882a593Smuzhiyun #define WM831X_LDO1_ERR_ACT_SHIFT                   14  /* LDO1_ERR_ACT - [15:14] */
569*4882a593Smuzhiyun #define WM831X_LDO1_ERR_ACT_WIDTH                    2  /* LDO1_ERR_ACT - [15:14] */
570*4882a593Smuzhiyun #define WM831X_LDO1_HWC_SRC_MASK                0x1800  /* LDO1_HWC_SRC - [12:11] */
571*4882a593Smuzhiyun #define WM831X_LDO1_HWC_SRC_SHIFT                   11  /* LDO1_HWC_SRC - [12:11] */
572*4882a593Smuzhiyun #define WM831X_LDO1_HWC_SRC_WIDTH                    2  /* LDO1_HWC_SRC - [12:11] */
573*4882a593Smuzhiyun #define WM831X_LDO1_HWC_VSEL                    0x0400  /* LDO1_HWC_VSEL */
574*4882a593Smuzhiyun #define WM831X_LDO1_HWC_VSEL_MASK               0x0400  /* LDO1_HWC_VSEL */
575*4882a593Smuzhiyun #define WM831X_LDO1_HWC_VSEL_SHIFT                  10  /* LDO1_HWC_VSEL */
576*4882a593Smuzhiyun #define WM831X_LDO1_HWC_VSEL_WIDTH                   1  /* LDO1_HWC_VSEL */
577*4882a593Smuzhiyun #define WM831X_LDO1_HWC_MODE_MASK               0x0300  /* LDO1_HWC_MODE - [9:8] */
578*4882a593Smuzhiyun #define WM831X_LDO1_HWC_MODE_SHIFT                   8  /* LDO1_HWC_MODE - [9:8] */
579*4882a593Smuzhiyun #define WM831X_LDO1_HWC_MODE_WIDTH                   2  /* LDO1_HWC_MODE - [9:8] */
580*4882a593Smuzhiyun #define WM831X_LDO1_FLT                         0x0080  /* LDO1_FLT */
581*4882a593Smuzhiyun #define WM831X_LDO1_FLT_MASK                    0x0080  /* LDO1_FLT */
582*4882a593Smuzhiyun #define WM831X_LDO1_FLT_SHIFT                        7  /* LDO1_FLT */
583*4882a593Smuzhiyun #define WM831X_LDO1_FLT_WIDTH                        1  /* LDO1_FLT */
584*4882a593Smuzhiyun #define WM831X_LDO1_SWI                         0x0040  /* LDO1_SWI */
585*4882a593Smuzhiyun #define WM831X_LDO1_SWI_MASK                    0x0040  /* LDO1_SWI */
586*4882a593Smuzhiyun #define WM831X_LDO1_SWI_SHIFT                        6  /* LDO1_SWI */
587*4882a593Smuzhiyun #define WM831X_LDO1_SWI_WIDTH                        1  /* LDO1_SWI */
588*4882a593Smuzhiyun #define WM831X_LDO1_LP_MODE                     0x0001  /* LDO1_LP_MODE */
589*4882a593Smuzhiyun #define WM831X_LDO1_LP_MODE_MASK                0x0001  /* LDO1_LP_MODE */
590*4882a593Smuzhiyun #define WM831X_LDO1_LP_MODE_SHIFT                    0  /* LDO1_LP_MODE */
591*4882a593Smuzhiyun #define WM831X_LDO1_LP_MODE_WIDTH                    1  /* LDO1_LP_MODE */
592*4882a593Smuzhiyun 
593*4882a593Smuzhiyun /*
594*4882a593Smuzhiyun  * R16489 (0x4069) - LDO1 ON Control
595*4882a593Smuzhiyun  */
596*4882a593Smuzhiyun #define WM831X_LDO1_ON_SLOT_MASK                0xE000  /* LDO1_ON_SLOT - [15:13] */
597*4882a593Smuzhiyun #define WM831X_LDO1_ON_SLOT_SHIFT                   13  /* LDO1_ON_SLOT - [15:13] */
598*4882a593Smuzhiyun #define WM831X_LDO1_ON_SLOT_WIDTH                    3  /* LDO1_ON_SLOT - [15:13] */
599*4882a593Smuzhiyun #define WM831X_LDO1_ON_MODE                     0x0100  /* LDO1_ON_MODE */
600*4882a593Smuzhiyun #define WM831X_LDO1_ON_MODE_MASK                0x0100  /* LDO1_ON_MODE */
601*4882a593Smuzhiyun #define WM831X_LDO1_ON_MODE_SHIFT                    8  /* LDO1_ON_MODE */
602*4882a593Smuzhiyun #define WM831X_LDO1_ON_MODE_WIDTH                    1  /* LDO1_ON_MODE */
603*4882a593Smuzhiyun #define WM831X_LDO1_ON_VSEL_MASK                0x001F  /* LDO1_ON_VSEL - [4:0] */
604*4882a593Smuzhiyun #define WM831X_LDO1_ON_VSEL_SHIFT                    0  /* LDO1_ON_VSEL - [4:0] */
605*4882a593Smuzhiyun #define WM831X_LDO1_ON_VSEL_WIDTH                    5  /* LDO1_ON_VSEL - [4:0] */
606*4882a593Smuzhiyun 
607*4882a593Smuzhiyun /*
608*4882a593Smuzhiyun  * R16490 (0x406A) - LDO1 SLEEP Control
609*4882a593Smuzhiyun  */
610*4882a593Smuzhiyun #define WM831X_LDO1_SLP_SLOT_MASK               0xE000  /* LDO1_SLP_SLOT - [15:13] */
611*4882a593Smuzhiyun #define WM831X_LDO1_SLP_SLOT_SHIFT                  13  /* LDO1_SLP_SLOT - [15:13] */
612*4882a593Smuzhiyun #define WM831X_LDO1_SLP_SLOT_WIDTH                   3  /* LDO1_SLP_SLOT - [15:13] */
613*4882a593Smuzhiyun #define WM831X_LDO1_SLP_MODE                    0x0100  /* LDO1_SLP_MODE */
614*4882a593Smuzhiyun #define WM831X_LDO1_SLP_MODE_MASK               0x0100  /* LDO1_SLP_MODE */
615*4882a593Smuzhiyun #define WM831X_LDO1_SLP_MODE_SHIFT                   8  /* LDO1_SLP_MODE */
616*4882a593Smuzhiyun #define WM831X_LDO1_SLP_MODE_WIDTH                   1  /* LDO1_SLP_MODE */
617*4882a593Smuzhiyun #define WM831X_LDO1_SLP_VSEL_MASK               0x001F  /* LDO1_SLP_VSEL - [4:0] */
618*4882a593Smuzhiyun #define WM831X_LDO1_SLP_VSEL_SHIFT                   0  /* LDO1_SLP_VSEL - [4:0] */
619*4882a593Smuzhiyun #define WM831X_LDO1_SLP_VSEL_WIDTH                   5  /* LDO1_SLP_VSEL - [4:0] */
620*4882a593Smuzhiyun 
621*4882a593Smuzhiyun /*
622*4882a593Smuzhiyun  * R16491 (0x406B) - LDO2 Control
623*4882a593Smuzhiyun  */
624*4882a593Smuzhiyun #define WM831X_LDO2_ERR_ACT_MASK                0xC000  /* LDO2_ERR_ACT - [15:14] */
625*4882a593Smuzhiyun #define WM831X_LDO2_ERR_ACT_SHIFT                   14  /* LDO2_ERR_ACT - [15:14] */
626*4882a593Smuzhiyun #define WM831X_LDO2_ERR_ACT_WIDTH                    2  /* LDO2_ERR_ACT - [15:14] */
627*4882a593Smuzhiyun #define WM831X_LDO2_HWC_SRC_MASK                0x1800  /* LDO2_HWC_SRC - [12:11] */
628*4882a593Smuzhiyun #define WM831X_LDO2_HWC_SRC_SHIFT                   11  /* LDO2_HWC_SRC - [12:11] */
629*4882a593Smuzhiyun #define WM831X_LDO2_HWC_SRC_WIDTH                    2  /* LDO2_HWC_SRC - [12:11] */
630*4882a593Smuzhiyun #define WM831X_LDO2_HWC_VSEL                    0x0400  /* LDO2_HWC_VSEL */
631*4882a593Smuzhiyun #define WM831X_LDO2_HWC_VSEL_MASK               0x0400  /* LDO2_HWC_VSEL */
632*4882a593Smuzhiyun #define WM831X_LDO2_HWC_VSEL_SHIFT                  10  /* LDO2_HWC_VSEL */
633*4882a593Smuzhiyun #define WM831X_LDO2_HWC_VSEL_WIDTH                   1  /* LDO2_HWC_VSEL */
634*4882a593Smuzhiyun #define WM831X_LDO2_HWC_MODE_MASK               0x0300  /* LDO2_HWC_MODE - [9:8] */
635*4882a593Smuzhiyun #define WM831X_LDO2_HWC_MODE_SHIFT                   8  /* LDO2_HWC_MODE - [9:8] */
636*4882a593Smuzhiyun #define WM831X_LDO2_HWC_MODE_WIDTH                   2  /* LDO2_HWC_MODE - [9:8] */
637*4882a593Smuzhiyun #define WM831X_LDO2_FLT                         0x0080  /* LDO2_FLT */
638*4882a593Smuzhiyun #define WM831X_LDO2_FLT_MASK                    0x0080  /* LDO2_FLT */
639*4882a593Smuzhiyun #define WM831X_LDO2_FLT_SHIFT                        7  /* LDO2_FLT */
640*4882a593Smuzhiyun #define WM831X_LDO2_FLT_WIDTH                        1  /* LDO2_FLT */
641*4882a593Smuzhiyun #define WM831X_LDO2_SWI                         0x0040  /* LDO2_SWI */
642*4882a593Smuzhiyun #define WM831X_LDO2_SWI_MASK                    0x0040  /* LDO2_SWI */
643*4882a593Smuzhiyun #define WM831X_LDO2_SWI_SHIFT                        6  /* LDO2_SWI */
644*4882a593Smuzhiyun #define WM831X_LDO2_SWI_WIDTH                        1  /* LDO2_SWI */
645*4882a593Smuzhiyun #define WM831X_LDO2_LP_MODE                     0x0001  /* LDO2_LP_MODE */
646*4882a593Smuzhiyun #define WM831X_LDO2_LP_MODE_MASK                0x0001  /* LDO2_LP_MODE */
647*4882a593Smuzhiyun #define WM831X_LDO2_LP_MODE_SHIFT                    0  /* LDO2_LP_MODE */
648*4882a593Smuzhiyun #define WM831X_LDO2_LP_MODE_WIDTH                    1  /* LDO2_LP_MODE */
649*4882a593Smuzhiyun 
650*4882a593Smuzhiyun /*
651*4882a593Smuzhiyun  * R16492 (0x406C) - LDO2 ON Control
652*4882a593Smuzhiyun  */
653*4882a593Smuzhiyun #define WM831X_LDO2_ON_SLOT_MASK                0xE000  /* LDO2_ON_SLOT - [15:13] */
654*4882a593Smuzhiyun #define WM831X_LDO2_ON_SLOT_SHIFT                   13  /* LDO2_ON_SLOT - [15:13] */
655*4882a593Smuzhiyun #define WM831X_LDO2_ON_SLOT_WIDTH                    3  /* LDO2_ON_SLOT - [15:13] */
656*4882a593Smuzhiyun #define WM831X_LDO2_ON_MODE                     0x0100  /* LDO2_ON_MODE */
657*4882a593Smuzhiyun #define WM831X_LDO2_ON_MODE_MASK                0x0100  /* LDO2_ON_MODE */
658*4882a593Smuzhiyun #define WM831X_LDO2_ON_MODE_SHIFT                    8  /* LDO2_ON_MODE */
659*4882a593Smuzhiyun #define WM831X_LDO2_ON_MODE_WIDTH                    1  /* LDO2_ON_MODE */
660*4882a593Smuzhiyun #define WM831X_LDO2_ON_VSEL_MASK                0x001F  /* LDO2_ON_VSEL - [4:0] */
661*4882a593Smuzhiyun #define WM831X_LDO2_ON_VSEL_SHIFT                    0  /* LDO2_ON_VSEL - [4:0] */
662*4882a593Smuzhiyun #define WM831X_LDO2_ON_VSEL_WIDTH                    5  /* LDO2_ON_VSEL - [4:0] */
663*4882a593Smuzhiyun 
664*4882a593Smuzhiyun /*
665*4882a593Smuzhiyun  * R16493 (0x406D) - LDO2 SLEEP Control
666*4882a593Smuzhiyun  */
667*4882a593Smuzhiyun #define WM831X_LDO2_SLP_SLOT_MASK               0xE000  /* LDO2_SLP_SLOT - [15:13] */
668*4882a593Smuzhiyun #define WM831X_LDO2_SLP_SLOT_SHIFT                  13  /* LDO2_SLP_SLOT - [15:13] */
669*4882a593Smuzhiyun #define WM831X_LDO2_SLP_SLOT_WIDTH                   3  /* LDO2_SLP_SLOT - [15:13] */
670*4882a593Smuzhiyun #define WM831X_LDO2_SLP_MODE                    0x0100  /* LDO2_SLP_MODE */
671*4882a593Smuzhiyun #define WM831X_LDO2_SLP_MODE_MASK               0x0100  /* LDO2_SLP_MODE */
672*4882a593Smuzhiyun #define WM831X_LDO2_SLP_MODE_SHIFT                   8  /* LDO2_SLP_MODE */
673*4882a593Smuzhiyun #define WM831X_LDO2_SLP_MODE_WIDTH                   1  /* LDO2_SLP_MODE */
674*4882a593Smuzhiyun #define WM831X_LDO2_SLP_VSEL_MASK               0x001F  /* LDO2_SLP_VSEL - [4:0] */
675*4882a593Smuzhiyun #define WM831X_LDO2_SLP_VSEL_SHIFT                   0  /* LDO2_SLP_VSEL - [4:0] */
676*4882a593Smuzhiyun #define WM831X_LDO2_SLP_VSEL_WIDTH                   5  /* LDO2_SLP_VSEL - [4:0] */
677*4882a593Smuzhiyun 
678*4882a593Smuzhiyun /*
679*4882a593Smuzhiyun  * R16494 (0x406E) - LDO3 Control
680*4882a593Smuzhiyun  */
681*4882a593Smuzhiyun #define WM831X_LDO3_ERR_ACT_MASK                0xC000  /* LDO3_ERR_ACT - [15:14] */
682*4882a593Smuzhiyun #define WM831X_LDO3_ERR_ACT_SHIFT                   14  /* LDO3_ERR_ACT - [15:14] */
683*4882a593Smuzhiyun #define WM831X_LDO3_ERR_ACT_WIDTH                    2  /* LDO3_ERR_ACT - [15:14] */
684*4882a593Smuzhiyun #define WM831X_LDO3_HWC_SRC_MASK                0x1800  /* LDO3_HWC_SRC - [12:11] */
685*4882a593Smuzhiyun #define WM831X_LDO3_HWC_SRC_SHIFT                   11  /* LDO3_HWC_SRC - [12:11] */
686*4882a593Smuzhiyun #define WM831X_LDO3_HWC_SRC_WIDTH                    2  /* LDO3_HWC_SRC - [12:11] */
687*4882a593Smuzhiyun #define WM831X_LDO3_HWC_VSEL                    0x0400  /* LDO3_HWC_VSEL */
688*4882a593Smuzhiyun #define WM831X_LDO3_HWC_VSEL_MASK               0x0400  /* LDO3_HWC_VSEL */
689*4882a593Smuzhiyun #define WM831X_LDO3_HWC_VSEL_SHIFT                  10  /* LDO3_HWC_VSEL */
690*4882a593Smuzhiyun #define WM831X_LDO3_HWC_VSEL_WIDTH                   1  /* LDO3_HWC_VSEL */
691*4882a593Smuzhiyun #define WM831X_LDO3_HWC_MODE_MASK               0x0300  /* LDO3_HWC_MODE - [9:8] */
692*4882a593Smuzhiyun #define WM831X_LDO3_HWC_MODE_SHIFT                   8  /* LDO3_HWC_MODE - [9:8] */
693*4882a593Smuzhiyun #define WM831X_LDO3_HWC_MODE_WIDTH                   2  /* LDO3_HWC_MODE - [9:8] */
694*4882a593Smuzhiyun #define WM831X_LDO3_FLT                         0x0080  /* LDO3_FLT */
695*4882a593Smuzhiyun #define WM831X_LDO3_FLT_MASK                    0x0080  /* LDO3_FLT */
696*4882a593Smuzhiyun #define WM831X_LDO3_FLT_SHIFT                        7  /* LDO3_FLT */
697*4882a593Smuzhiyun #define WM831X_LDO3_FLT_WIDTH                        1  /* LDO3_FLT */
698*4882a593Smuzhiyun #define WM831X_LDO3_SWI                         0x0040  /* LDO3_SWI */
699*4882a593Smuzhiyun #define WM831X_LDO3_SWI_MASK                    0x0040  /* LDO3_SWI */
700*4882a593Smuzhiyun #define WM831X_LDO3_SWI_SHIFT                        6  /* LDO3_SWI */
701*4882a593Smuzhiyun #define WM831X_LDO3_SWI_WIDTH                        1  /* LDO3_SWI */
702*4882a593Smuzhiyun #define WM831X_LDO3_LP_MODE                     0x0001  /* LDO3_LP_MODE */
703*4882a593Smuzhiyun #define WM831X_LDO3_LP_MODE_MASK                0x0001  /* LDO3_LP_MODE */
704*4882a593Smuzhiyun #define WM831X_LDO3_LP_MODE_SHIFT                    0  /* LDO3_LP_MODE */
705*4882a593Smuzhiyun #define WM831X_LDO3_LP_MODE_WIDTH                    1  /* LDO3_LP_MODE */
706*4882a593Smuzhiyun 
707*4882a593Smuzhiyun /*
708*4882a593Smuzhiyun  * R16495 (0x406F) - LDO3 ON Control
709*4882a593Smuzhiyun  */
710*4882a593Smuzhiyun #define WM831X_LDO3_ON_SLOT_MASK                0xE000  /* LDO3_ON_SLOT - [15:13] */
711*4882a593Smuzhiyun #define WM831X_LDO3_ON_SLOT_SHIFT                   13  /* LDO3_ON_SLOT - [15:13] */
712*4882a593Smuzhiyun #define WM831X_LDO3_ON_SLOT_WIDTH                    3  /* LDO3_ON_SLOT - [15:13] */
713*4882a593Smuzhiyun #define WM831X_LDO3_ON_MODE                     0x0100  /* LDO3_ON_MODE */
714*4882a593Smuzhiyun #define WM831X_LDO3_ON_MODE_MASK                0x0100  /* LDO3_ON_MODE */
715*4882a593Smuzhiyun #define WM831X_LDO3_ON_MODE_SHIFT                    8  /* LDO3_ON_MODE */
716*4882a593Smuzhiyun #define WM831X_LDO3_ON_MODE_WIDTH                    1  /* LDO3_ON_MODE */
717*4882a593Smuzhiyun #define WM831X_LDO3_ON_VSEL_MASK                0x001F  /* LDO3_ON_VSEL - [4:0] */
718*4882a593Smuzhiyun #define WM831X_LDO3_ON_VSEL_SHIFT                    0  /* LDO3_ON_VSEL - [4:0] */
719*4882a593Smuzhiyun #define WM831X_LDO3_ON_VSEL_WIDTH                    5  /* LDO3_ON_VSEL - [4:0] */
720*4882a593Smuzhiyun 
721*4882a593Smuzhiyun /*
722*4882a593Smuzhiyun  * R16496 (0x4070) - LDO3 SLEEP Control
723*4882a593Smuzhiyun  */
724*4882a593Smuzhiyun #define WM831X_LDO3_SLP_SLOT_MASK               0xE000  /* LDO3_SLP_SLOT - [15:13] */
725*4882a593Smuzhiyun #define WM831X_LDO3_SLP_SLOT_SHIFT                  13  /* LDO3_SLP_SLOT - [15:13] */
726*4882a593Smuzhiyun #define WM831X_LDO3_SLP_SLOT_WIDTH                   3  /* LDO3_SLP_SLOT - [15:13] */
727*4882a593Smuzhiyun #define WM831X_LDO3_SLP_MODE                    0x0100  /* LDO3_SLP_MODE */
728*4882a593Smuzhiyun #define WM831X_LDO3_SLP_MODE_MASK               0x0100  /* LDO3_SLP_MODE */
729*4882a593Smuzhiyun #define WM831X_LDO3_SLP_MODE_SHIFT                   8  /* LDO3_SLP_MODE */
730*4882a593Smuzhiyun #define WM831X_LDO3_SLP_MODE_WIDTH                   1  /* LDO3_SLP_MODE */
731*4882a593Smuzhiyun #define WM831X_LDO3_SLP_VSEL_MASK               0x001F  /* LDO3_SLP_VSEL - [4:0] */
732*4882a593Smuzhiyun #define WM831X_LDO3_SLP_VSEL_SHIFT                   0  /* LDO3_SLP_VSEL - [4:0] */
733*4882a593Smuzhiyun #define WM831X_LDO3_SLP_VSEL_WIDTH                   5  /* LDO3_SLP_VSEL - [4:0] */
734*4882a593Smuzhiyun 
735*4882a593Smuzhiyun /*
736*4882a593Smuzhiyun  * R16497 (0x4071) - LDO4 Control
737*4882a593Smuzhiyun  */
738*4882a593Smuzhiyun #define WM831X_LDO4_ERR_ACT_MASK                0xC000  /* LDO4_ERR_ACT - [15:14] */
739*4882a593Smuzhiyun #define WM831X_LDO4_ERR_ACT_SHIFT                   14  /* LDO4_ERR_ACT - [15:14] */
740*4882a593Smuzhiyun #define WM831X_LDO4_ERR_ACT_WIDTH                    2  /* LDO4_ERR_ACT - [15:14] */
741*4882a593Smuzhiyun #define WM831X_LDO4_HWC_SRC_MASK                0x1800  /* LDO4_HWC_SRC - [12:11] */
742*4882a593Smuzhiyun #define WM831X_LDO4_HWC_SRC_SHIFT                   11  /* LDO4_HWC_SRC - [12:11] */
743*4882a593Smuzhiyun #define WM831X_LDO4_HWC_SRC_WIDTH                    2  /* LDO4_HWC_SRC - [12:11] */
744*4882a593Smuzhiyun #define WM831X_LDO4_HWC_VSEL                    0x0400  /* LDO4_HWC_VSEL */
745*4882a593Smuzhiyun #define WM831X_LDO4_HWC_VSEL_MASK               0x0400  /* LDO4_HWC_VSEL */
746*4882a593Smuzhiyun #define WM831X_LDO4_HWC_VSEL_SHIFT                  10  /* LDO4_HWC_VSEL */
747*4882a593Smuzhiyun #define WM831X_LDO4_HWC_VSEL_WIDTH                   1  /* LDO4_HWC_VSEL */
748*4882a593Smuzhiyun #define WM831X_LDO4_HWC_MODE_MASK               0x0300  /* LDO4_HWC_MODE - [9:8] */
749*4882a593Smuzhiyun #define WM831X_LDO4_HWC_MODE_SHIFT                   8  /* LDO4_HWC_MODE - [9:8] */
750*4882a593Smuzhiyun #define WM831X_LDO4_HWC_MODE_WIDTH                   2  /* LDO4_HWC_MODE - [9:8] */
751*4882a593Smuzhiyun #define WM831X_LDO4_FLT                         0x0080  /* LDO4_FLT */
752*4882a593Smuzhiyun #define WM831X_LDO4_FLT_MASK                    0x0080  /* LDO4_FLT */
753*4882a593Smuzhiyun #define WM831X_LDO4_FLT_SHIFT                        7  /* LDO4_FLT */
754*4882a593Smuzhiyun #define WM831X_LDO4_FLT_WIDTH                        1  /* LDO4_FLT */
755*4882a593Smuzhiyun #define WM831X_LDO4_SWI                         0x0040  /* LDO4_SWI */
756*4882a593Smuzhiyun #define WM831X_LDO4_SWI_MASK                    0x0040  /* LDO4_SWI */
757*4882a593Smuzhiyun #define WM831X_LDO4_SWI_SHIFT                        6  /* LDO4_SWI */
758*4882a593Smuzhiyun #define WM831X_LDO4_SWI_WIDTH                        1  /* LDO4_SWI */
759*4882a593Smuzhiyun #define WM831X_LDO4_LP_MODE                     0x0001  /* LDO4_LP_MODE */
760*4882a593Smuzhiyun #define WM831X_LDO4_LP_MODE_MASK                0x0001  /* LDO4_LP_MODE */
761*4882a593Smuzhiyun #define WM831X_LDO4_LP_MODE_SHIFT                    0  /* LDO4_LP_MODE */
762*4882a593Smuzhiyun #define WM831X_LDO4_LP_MODE_WIDTH                    1  /* LDO4_LP_MODE */
763*4882a593Smuzhiyun 
764*4882a593Smuzhiyun /*
765*4882a593Smuzhiyun  * R16498 (0x4072) - LDO4 ON Control
766*4882a593Smuzhiyun  */
767*4882a593Smuzhiyun #define WM831X_LDO4_ON_SLOT_MASK                0xE000  /* LDO4_ON_SLOT - [15:13] */
768*4882a593Smuzhiyun #define WM831X_LDO4_ON_SLOT_SHIFT                   13  /* LDO4_ON_SLOT - [15:13] */
769*4882a593Smuzhiyun #define WM831X_LDO4_ON_SLOT_WIDTH                    3  /* LDO4_ON_SLOT - [15:13] */
770*4882a593Smuzhiyun #define WM831X_LDO4_ON_MODE                     0x0100  /* LDO4_ON_MODE */
771*4882a593Smuzhiyun #define WM831X_LDO4_ON_MODE_MASK                0x0100  /* LDO4_ON_MODE */
772*4882a593Smuzhiyun #define WM831X_LDO4_ON_MODE_SHIFT                    8  /* LDO4_ON_MODE */
773*4882a593Smuzhiyun #define WM831X_LDO4_ON_MODE_WIDTH                    1  /* LDO4_ON_MODE */
774*4882a593Smuzhiyun #define WM831X_LDO4_ON_VSEL_MASK                0x001F  /* LDO4_ON_VSEL - [4:0] */
775*4882a593Smuzhiyun #define WM831X_LDO4_ON_VSEL_SHIFT                    0  /* LDO4_ON_VSEL - [4:0] */
776*4882a593Smuzhiyun #define WM831X_LDO4_ON_VSEL_WIDTH                    5  /* LDO4_ON_VSEL - [4:0] */
777*4882a593Smuzhiyun 
778*4882a593Smuzhiyun /*
779*4882a593Smuzhiyun  * R16499 (0x4073) - LDO4 SLEEP Control
780*4882a593Smuzhiyun  */
781*4882a593Smuzhiyun #define WM831X_LDO4_SLP_SLOT_MASK               0xE000  /* LDO4_SLP_SLOT - [15:13] */
782*4882a593Smuzhiyun #define WM831X_LDO4_SLP_SLOT_SHIFT                  13  /* LDO4_SLP_SLOT - [15:13] */
783*4882a593Smuzhiyun #define WM831X_LDO4_SLP_SLOT_WIDTH                   3  /* LDO4_SLP_SLOT - [15:13] */
784*4882a593Smuzhiyun #define WM831X_LDO4_SLP_MODE                    0x0100  /* LDO4_SLP_MODE */
785*4882a593Smuzhiyun #define WM831X_LDO4_SLP_MODE_MASK               0x0100  /* LDO4_SLP_MODE */
786*4882a593Smuzhiyun #define WM831X_LDO4_SLP_MODE_SHIFT                   8  /* LDO4_SLP_MODE */
787*4882a593Smuzhiyun #define WM831X_LDO4_SLP_MODE_WIDTH                   1  /* LDO4_SLP_MODE */
788*4882a593Smuzhiyun #define WM831X_LDO4_SLP_VSEL_MASK               0x001F  /* LDO4_SLP_VSEL - [4:0] */
789*4882a593Smuzhiyun #define WM831X_LDO4_SLP_VSEL_SHIFT                   0  /* LDO4_SLP_VSEL - [4:0] */
790*4882a593Smuzhiyun #define WM831X_LDO4_SLP_VSEL_WIDTH                   5  /* LDO4_SLP_VSEL - [4:0] */
791*4882a593Smuzhiyun 
792*4882a593Smuzhiyun /*
793*4882a593Smuzhiyun  * R16500 (0x4074) - LDO5 Control
794*4882a593Smuzhiyun  */
795*4882a593Smuzhiyun #define WM831X_LDO5_ERR_ACT_MASK                0xC000  /* LDO5_ERR_ACT - [15:14] */
796*4882a593Smuzhiyun #define WM831X_LDO5_ERR_ACT_SHIFT                   14  /* LDO5_ERR_ACT - [15:14] */
797*4882a593Smuzhiyun #define WM831X_LDO5_ERR_ACT_WIDTH                    2  /* LDO5_ERR_ACT - [15:14] */
798*4882a593Smuzhiyun #define WM831X_LDO5_HWC_SRC_MASK                0x1800  /* LDO5_HWC_SRC - [12:11] */
799*4882a593Smuzhiyun #define WM831X_LDO5_HWC_SRC_SHIFT                   11  /* LDO5_HWC_SRC - [12:11] */
800*4882a593Smuzhiyun #define WM831X_LDO5_HWC_SRC_WIDTH                    2  /* LDO5_HWC_SRC - [12:11] */
801*4882a593Smuzhiyun #define WM831X_LDO5_HWC_VSEL                    0x0400  /* LDO5_HWC_VSEL */
802*4882a593Smuzhiyun #define WM831X_LDO5_HWC_VSEL_MASK               0x0400  /* LDO5_HWC_VSEL */
803*4882a593Smuzhiyun #define WM831X_LDO5_HWC_VSEL_SHIFT                  10  /* LDO5_HWC_VSEL */
804*4882a593Smuzhiyun #define WM831X_LDO5_HWC_VSEL_WIDTH                   1  /* LDO5_HWC_VSEL */
805*4882a593Smuzhiyun #define WM831X_LDO5_HWC_MODE_MASK               0x0300  /* LDO5_HWC_MODE - [9:8] */
806*4882a593Smuzhiyun #define WM831X_LDO5_HWC_MODE_SHIFT                   8  /* LDO5_HWC_MODE - [9:8] */
807*4882a593Smuzhiyun #define WM831X_LDO5_HWC_MODE_WIDTH                   2  /* LDO5_HWC_MODE - [9:8] */
808*4882a593Smuzhiyun #define WM831X_LDO5_FLT                         0x0080  /* LDO5_FLT */
809*4882a593Smuzhiyun #define WM831X_LDO5_FLT_MASK                    0x0080  /* LDO5_FLT */
810*4882a593Smuzhiyun #define WM831X_LDO5_FLT_SHIFT                        7  /* LDO5_FLT */
811*4882a593Smuzhiyun #define WM831X_LDO5_FLT_WIDTH                        1  /* LDO5_FLT */
812*4882a593Smuzhiyun #define WM831X_LDO5_SWI                         0x0040  /* LDO5_SWI */
813*4882a593Smuzhiyun #define WM831X_LDO5_SWI_MASK                    0x0040  /* LDO5_SWI */
814*4882a593Smuzhiyun #define WM831X_LDO5_SWI_SHIFT                        6  /* LDO5_SWI */
815*4882a593Smuzhiyun #define WM831X_LDO5_SWI_WIDTH                        1  /* LDO5_SWI */
816*4882a593Smuzhiyun #define WM831X_LDO5_LP_MODE                     0x0001  /* LDO5_LP_MODE */
817*4882a593Smuzhiyun #define WM831X_LDO5_LP_MODE_MASK                0x0001  /* LDO5_LP_MODE */
818*4882a593Smuzhiyun #define WM831X_LDO5_LP_MODE_SHIFT                    0  /* LDO5_LP_MODE */
819*4882a593Smuzhiyun #define WM831X_LDO5_LP_MODE_WIDTH                    1  /* LDO5_LP_MODE */
820*4882a593Smuzhiyun 
821*4882a593Smuzhiyun /*
822*4882a593Smuzhiyun  * R16501 (0x4075) - LDO5 ON Control
823*4882a593Smuzhiyun  */
824*4882a593Smuzhiyun #define WM831X_LDO5_ON_SLOT_MASK                0xE000  /* LDO5_ON_SLOT - [15:13] */
825*4882a593Smuzhiyun #define WM831X_LDO5_ON_SLOT_SHIFT                   13  /* LDO5_ON_SLOT - [15:13] */
826*4882a593Smuzhiyun #define WM831X_LDO5_ON_SLOT_WIDTH                    3  /* LDO5_ON_SLOT - [15:13] */
827*4882a593Smuzhiyun #define WM831X_LDO5_ON_MODE                     0x0100  /* LDO5_ON_MODE */
828*4882a593Smuzhiyun #define WM831X_LDO5_ON_MODE_MASK                0x0100  /* LDO5_ON_MODE */
829*4882a593Smuzhiyun #define WM831X_LDO5_ON_MODE_SHIFT                    8  /* LDO5_ON_MODE */
830*4882a593Smuzhiyun #define WM831X_LDO5_ON_MODE_WIDTH                    1  /* LDO5_ON_MODE */
831*4882a593Smuzhiyun #define WM831X_LDO5_ON_VSEL_MASK                0x001F  /* LDO5_ON_VSEL - [4:0] */
832*4882a593Smuzhiyun #define WM831X_LDO5_ON_VSEL_SHIFT                    0  /* LDO5_ON_VSEL - [4:0] */
833*4882a593Smuzhiyun #define WM831X_LDO5_ON_VSEL_WIDTH                    5  /* LDO5_ON_VSEL - [4:0] */
834*4882a593Smuzhiyun 
835*4882a593Smuzhiyun /*
836*4882a593Smuzhiyun  * R16502 (0x4076) - LDO5 SLEEP Control
837*4882a593Smuzhiyun  */
838*4882a593Smuzhiyun #define WM831X_LDO5_SLP_SLOT_MASK               0xE000  /* LDO5_SLP_SLOT - [15:13] */
839*4882a593Smuzhiyun #define WM831X_LDO5_SLP_SLOT_SHIFT                  13  /* LDO5_SLP_SLOT - [15:13] */
840*4882a593Smuzhiyun #define WM831X_LDO5_SLP_SLOT_WIDTH                   3  /* LDO5_SLP_SLOT - [15:13] */
841*4882a593Smuzhiyun #define WM831X_LDO5_SLP_MODE                    0x0100  /* LDO5_SLP_MODE */
842*4882a593Smuzhiyun #define WM831X_LDO5_SLP_MODE_MASK               0x0100  /* LDO5_SLP_MODE */
843*4882a593Smuzhiyun #define WM831X_LDO5_SLP_MODE_SHIFT                   8  /* LDO5_SLP_MODE */
844*4882a593Smuzhiyun #define WM831X_LDO5_SLP_MODE_WIDTH                   1  /* LDO5_SLP_MODE */
845*4882a593Smuzhiyun #define WM831X_LDO5_SLP_VSEL_MASK               0x001F  /* LDO5_SLP_VSEL - [4:0] */
846*4882a593Smuzhiyun #define WM831X_LDO5_SLP_VSEL_SHIFT                   0  /* LDO5_SLP_VSEL - [4:0] */
847*4882a593Smuzhiyun #define WM831X_LDO5_SLP_VSEL_WIDTH                   5  /* LDO5_SLP_VSEL - [4:0] */
848*4882a593Smuzhiyun 
849*4882a593Smuzhiyun /*
850*4882a593Smuzhiyun  * R16503 (0x4077) - LDO6 Control
851*4882a593Smuzhiyun  */
852*4882a593Smuzhiyun #define WM831X_LDO6_ERR_ACT_MASK                0xC000  /* LDO6_ERR_ACT - [15:14] */
853*4882a593Smuzhiyun #define WM831X_LDO6_ERR_ACT_SHIFT                   14  /* LDO6_ERR_ACT - [15:14] */
854*4882a593Smuzhiyun #define WM831X_LDO6_ERR_ACT_WIDTH                    2  /* LDO6_ERR_ACT - [15:14] */
855*4882a593Smuzhiyun #define WM831X_LDO6_HWC_SRC_MASK                0x1800  /* LDO6_HWC_SRC - [12:11] */
856*4882a593Smuzhiyun #define WM831X_LDO6_HWC_SRC_SHIFT                   11  /* LDO6_HWC_SRC - [12:11] */
857*4882a593Smuzhiyun #define WM831X_LDO6_HWC_SRC_WIDTH                    2  /* LDO6_HWC_SRC - [12:11] */
858*4882a593Smuzhiyun #define WM831X_LDO6_HWC_VSEL                    0x0400  /* LDO6_HWC_VSEL */
859*4882a593Smuzhiyun #define WM831X_LDO6_HWC_VSEL_MASK               0x0400  /* LDO6_HWC_VSEL */
860*4882a593Smuzhiyun #define WM831X_LDO6_HWC_VSEL_SHIFT                  10  /* LDO6_HWC_VSEL */
861*4882a593Smuzhiyun #define WM831X_LDO6_HWC_VSEL_WIDTH                   1  /* LDO6_HWC_VSEL */
862*4882a593Smuzhiyun #define WM831X_LDO6_HWC_MODE_MASK               0x0300  /* LDO6_HWC_MODE - [9:8] */
863*4882a593Smuzhiyun #define WM831X_LDO6_HWC_MODE_SHIFT                   8  /* LDO6_HWC_MODE - [9:8] */
864*4882a593Smuzhiyun #define WM831X_LDO6_HWC_MODE_WIDTH                   2  /* LDO6_HWC_MODE - [9:8] */
865*4882a593Smuzhiyun #define WM831X_LDO6_FLT                         0x0080  /* LDO6_FLT */
866*4882a593Smuzhiyun #define WM831X_LDO6_FLT_MASK                    0x0080  /* LDO6_FLT */
867*4882a593Smuzhiyun #define WM831X_LDO6_FLT_SHIFT                        7  /* LDO6_FLT */
868*4882a593Smuzhiyun #define WM831X_LDO6_FLT_WIDTH                        1  /* LDO6_FLT */
869*4882a593Smuzhiyun #define WM831X_LDO6_SWI                         0x0040  /* LDO6_SWI */
870*4882a593Smuzhiyun #define WM831X_LDO6_SWI_MASK                    0x0040  /* LDO6_SWI */
871*4882a593Smuzhiyun #define WM831X_LDO6_SWI_SHIFT                        6  /* LDO6_SWI */
872*4882a593Smuzhiyun #define WM831X_LDO6_SWI_WIDTH                        1  /* LDO6_SWI */
873*4882a593Smuzhiyun #define WM831X_LDO6_LP_MODE                     0x0001  /* LDO6_LP_MODE */
874*4882a593Smuzhiyun #define WM831X_LDO6_LP_MODE_MASK                0x0001  /* LDO6_LP_MODE */
875*4882a593Smuzhiyun #define WM831X_LDO6_LP_MODE_SHIFT                    0  /* LDO6_LP_MODE */
876*4882a593Smuzhiyun #define WM831X_LDO6_LP_MODE_WIDTH                    1  /* LDO6_LP_MODE */
877*4882a593Smuzhiyun 
878*4882a593Smuzhiyun /*
879*4882a593Smuzhiyun  * R16504 (0x4078) - LDO6 ON Control
880*4882a593Smuzhiyun  */
881*4882a593Smuzhiyun #define WM831X_LDO6_ON_SLOT_MASK                0xE000  /* LDO6_ON_SLOT - [15:13] */
882*4882a593Smuzhiyun #define WM831X_LDO6_ON_SLOT_SHIFT                   13  /* LDO6_ON_SLOT - [15:13] */
883*4882a593Smuzhiyun #define WM831X_LDO6_ON_SLOT_WIDTH                    3  /* LDO6_ON_SLOT - [15:13] */
884*4882a593Smuzhiyun #define WM831X_LDO6_ON_MODE                     0x0100  /* LDO6_ON_MODE */
885*4882a593Smuzhiyun #define WM831X_LDO6_ON_MODE_MASK                0x0100  /* LDO6_ON_MODE */
886*4882a593Smuzhiyun #define WM831X_LDO6_ON_MODE_SHIFT                    8  /* LDO6_ON_MODE */
887*4882a593Smuzhiyun #define WM831X_LDO6_ON_MODE_WIDTH                    1  /* LDO6_ON_MODE */
888*4882a593Smuzhiyun #define WM831X_LDO6_ON_VSEL_MASK                0x001F  /* LDO6_ON_VSEL - [4:0] */
889*4882a593Smuzhiyun #define WM831X_LDO6_ON_VSEL_SHIFT                    0  /* LDO6_ON_VSEL - [4:0] */
890*4882a593Smuzhiyun #define WM831X_LDO6_ON_VSEL_WIDTH                    5  /* LDO6_ON_VSEL - [4:0] */
891*4882a593Smuzhiyun 
892*4882a593Smuzhiyun /*
893*4882a593Smuzhiyun  * R16505 (0x4079) - LDO6 SLEEP Control
894*4882a593Smuzhiyun  */
895*4882a593Smuzhiyun #define WM831X_LDO6_SLP_SLOT_MASK               0xE000  /* LDO6_SLP_SLOT - [15:13] */
896*4882a593Smuzhiyun #define WM831X_LDO6_SLP_SLOT_SHIFT                  13  /* LDO6_SLP_SLOT - [15:13] */
897*4882a593Smuzhiyun #define WM831X_LDO6_SLP_SLOT_WIDTH                   3  /* LDO6_SLP_SLOT - [15:13] */
898*4882a593Smuzhiyun #define WM831X_LDO6_SLP_MODE                    0x0100  /* LDO6_SLP_MODE */
899*4882a593Smuzhiyun #define WM831X_LDO6_SLP_MODE_MASK               0x0100  /* LDO6_SLP_MODE */
900*4882a593Smuzhiyun #define WM831X_LDO6_SLP_MODE_SHIFT                   8  /* LDO6_SLP_MODE */
901*4882a593Smuzhiyun #define WM831X_LDO6_SLP_MODE_WIDTH                   1  /* LDO6_SLP_MODE */
902*4882a593Smuzhiyun #define WM831X_LDO6_SLP_VSEL_MASK               0x001F  /* LDO6_SLP_VSEL - [4:0] */
903*4882a593Smuzhiyun #define WM831X_LDO6_SLP_VSEL_SHIFT                   0  /* LDO6_SLP_VSEL - [4:0] */
904*4882a593Smuzhiyun #define WM831X_LDO6_SLP_VSEL_WIDTH                   5  /* LDO6_SLP_VSEL - [4:0] */
905*4882a593Smuzhiyun 
906*4882a593Smuzhiyun /*
907*4882a593Smuzhiyun  * R16506 (0x407A) - LDO7 Control
908*4882a593Smuzhiyun  */
909*4882a593Smuzhiyun #define WM831X_LDO7_ERR_ACT_MASK                0xC000  /* LDO7_ERR_ACT - [15:14] */
910*4882a593Smuzhiyun #define WM831X_LDO7_ERR_ACT_SHIFT                   14  /* LDO7_ERR_ACT - [15:14] */
911*4882a593Smuzhiyun #define WM831X_LDO7_ERR_ACT_WIDTH                    2  /* LDO7_ERR_ACT - [15:14] */
912*4882a593Smuzhiyun #define WM831X_LDO7_HWC_SRC_MASK                0x1800  /* LDO7_HWC_SRC - [12:11] */
913*4882a593Smuzhiyun #define WM831X_LDO7_HWC_SRC_SHIFT                   11  /* LDO7_HWC_SRC - [12:11] */
914*4882a593Smuzhiyun #define WM831X_LDO7_HWC_SRC_WIDTH                    2  /* LDO7_HWC_SRC - [12:11] */
915*4882a593Smuzhiyun #define WM831X_LDO7_HWC_VSEL                    0x0400  /* LDO7_HWC_VSEL */
916*4882a593Smuzhiyun #define WM831X_LDO7_HWC_VSEL_MASK               0x0400  /* LDO7_HWC_VSEL */
917*4882a593Smuzhiyun #define WM831X_LDO7_HWC_VSEL_SHIFT                  10  /* LDO7_HWC_VSEL */
918*4882a593Smuzhiyun #define WM831X_LDO7_HWC_VSEL_WIDTH                   1  /* LDO7_HWC_VSEL */
919*4882a593Smuzhiyun #define WM831X_LDO7_HWC_MODE_MASK               0x0300  /* LDO7_HWC_MODE - [9:8] */
920*4882a593Smuzhiyun #define WM831X_LDO7_HWC_MODE_SHIFT                   8  /* LDO7_HWC_MODE - [9:8] */
921*4882a593Smuzhiyun #define WM831X_LDO7_HWC_MODE_WIDTH                   2  /* LDO7_HWC_MODE - [9:8] */
922*4882a593Smuzhiyun #define WM831X_LDO7_FLT                         0x0080  /* LDO7_FLT */
923*4882a593Smuzhiyun #define WM831X_LDO7_FLT_MASK                    0x0080  /* LDO7_FLT */
924*4882a593Smuzhiyun #define WM831X_LDO7_FLT_SHIFT                        7  /* LDO7_FLT */
925*4882a593Smuzhiyun #define WM831X_LDO7_FLT_WIDTH                        1  /* LDO7_FLT */
926*4882a593Smuzhiyun #define WM831X_LDO7_SWI                         0x0040  /* LDO7_SWI */
927*4882a593Smuzhiyun #define WM831X_LDO7_SWI_MASK                    0x0040  /* LDO7_SWI */
928*4882a593Smuzhiyun #define WM831X_LDO7_SWI_SHIFT                        6  /* LDO7_SWI */
929*4882a593Smuzhiyun #define WM831X_LDO7_SWI_WIDTH                        1  /* LDO7_SWI */
930*4882a593Smuzhiyun 
931*4882a593Smuzhiyun /*
932*4882a593Smuzhiyun  * R16507 (0x407B) - LDO7 ON Control
933*4882a593Smuzhiyun  */
934*4882a593Smuzhiyun #define WM831X_LDO7_ON_SLOT_MASK                0xE000  /* LDO7_ON_SLOT - [15:13] */
935*4882a593Smuzhiyun #define WM831X_LDO7_ON_SLOT_SHIFT                   13  /* LDO7_ON_SLOT - [15:13] */
936*4882a593Smuzhiyun #define WM831X_LDO7_ON_SLOT_WIDTH                    3  /* LDO7_ON_SLOT - [15:13] */
937*4882a593Smuzhiyun #define WM831X_LDO7_ON_MODE                     0x0100  /* LDO7_ON_MODE */
938*4882a593Smuzhiyun #define WM831X_LDO7_ON_MODE_MASK                0x0100  /* LDO7_ON_MODE */
939*4882a593Smuzhiyun #define WM831X_LDO7_ON_MODE_SHIFT                    8  /* LDO7_ON_MODE */
940*4882a593Smuzhiyun #define WM831X_LDO7_ON_MODE_WIDTH                    1  /* LDO7_ON_MODE */
941*4882a593Smuzhiyun #define WM831X_LDO7_ON_VSEL_MASK                0x001F  /* LDO7_ON_VSEL - [4:0] */
942*4882a593Smuzhiyun #define WM831X_LDO7_ON_VSEL_SHIFT                    0  /* LDO7_ON_VSEL - [4:0] */
943*4882a593Smuzhiyun #define WM831X_LDO7_ON_VSEL_WIDTH                    5  /* LDO7_ON_VSEL - [4:0] */
944*4882a593Smuzhiyun 
945*4882a593Smuzhiyun /*
946*4882a593Smuzhiyun  * R16508 (0x407C) - LDO7 SLEEP Control
947*4882a593Smuzhiyun  */
948*4882a593Smuzhiyun #define WM831X_LDO7_SLP_SLOT_MASK               0xE000  /* LDO7_SLP_SLOT - [15:13] */
949*4882a593Smuzhiyun #define WM831X_LDO7_SLP_SLOT_SHIFT                  13  /* LDO7_SLP_SLOT - [15:13] */
950*4882a593Smuzhiyun #define WM831X_LDO7_SLP_SLOT_WIDTH                   3  /* LDO7_SLP_SLOT - [15:13] */
951*4882a593Smuzhiyun #define WM831X_LDO7_SLP_MODE                    0x0100  /* LDO7_SLP_MODE */
952*4882a593Smuzhiyun #define WM831X_LDO7_SLP_MODE_MASK               0x0100  /* LDO7_SLP_MODE */
953*4882a593Smuzhiyun #define WM831X_LDO7_SLP_MODE_SHIFT                   8  /* LDO7_SLP_MODE */
954*4882a593Smuzhiyun #define WM831X_LDO7_SLP_MODE_WIDTH                   1  /* LDO7_SLP_MODE */
955*4882a593Smuzhiyun #define WM831X_LDO7_SLP_VSEL_MASK               0x001F  /* LDO7_SLP_VSEL - [4:0] */
956*4882a593Smuzhiyun #define WM831X_LDO7_SLP_VSEL_SHIFT                   0  /* LDO7_SLP_VSEL - [4:0] */
957*4882a593Smuzhiyun #define WM831X_LDO7_SLP_VSEL_WIDTH                   5  /* LDO7_SLP_VSEL - [4:0] */
958*4882a593Smuzhiyun 
959*4882a593Smuzhiyun /*
960*4882a593Smuzhiyun  * R16509 (0x407D) - LDO8 Control
961*4882a593Smuzhiyun  */
962*4882a593Smuzhiyun #define WM831X_LDO8_ERR_ACT_MASK                0xC000  /* LDO8_ERR_ACT - [15:14] */
963*4882a593Smuzhiyun #define WM831X_LDO8_ERR_ACT_SHIFT                   14  /* LDO8_ERR_ACT - [15:14] */
964*4882a593Smuzhiyun #define WM831X_LDO8_ERR_ACT_WIDTH                    2  /* LDO8_ERR_ACT - [15:14] */
965*4882a593Smuzhiyun #define WM831X_LDO8_HWC_SRC_MASK                0x1800  /* LDO8_HWC_SRC - [12:11] */
966*4882a593Smuzhiyun #define WM831X_LDO8_HWC_SRC_SHIFT                   11  /* LDO8_HWC_SRC - [12:11] */
967*4882a593Smuzhiyun #define WM831X_LDO8_HWC_SRC_WIDTH                    2  /* LDO8_HWC_SRC - [12:11] */
968*4882a593Smuzhiyun #define WM831X_LDO8_HWC_VSEL                    0x0400  /* LDO8_HWC_VSEL */
969*4882a593Smuzhiyun #define WM831X_LDO8_HWC_VSEL_MASK               0x0400  /* LDO8_HWC_VSEL */
970*4882a593Smuzhiyun #define WM831X_LDO8_HWC_VSEL_SHIFT                  10  /* LDO8_HWC_VSEL */
971*4882a593Smuzhiyun #define WM831X_LDO8_HWC_VSEL_WIDTH                   1  /* LDO8_HWC_VSEL */
972*4882a593Smuzhiyun #define WM831X_LDO8_HWC_MODE_MASK               0x0300  /* LDO8_HWC_MODE - [9:8] */
973*4882a593Smuzhiyun #define WM831X_LDO8_HWC_MODE_SHIFT                   8  /* LDO8_HWC_MODE - [9:8] */
974*4882a593Smuzhiyun #define WM831X_LDO8_HWC_MODE_WIDTH                   2  /* LDO8_HWC_MODE - [9:8] */
975*4882a593Smuzhiyun #define WM831X_LDO8_FLT                         0x0080  /* LDO8_FLT */
976*4882a593Smuzhiyun #define WM831X_LDO8_FLT_MASK                    0x0080  /* LDO8_FLT */
977*4882a593Smuzhiyun #define WM831X_LDO8_FLT_SHIFT                        7  /* LDO8_FLT */
978*4882a593Smuzhiyun #define WM831X_LDO8_FLT_WIDTH                        1  /* LDO8_FLT */
979*4882a593Smuzhiyun #define WM831X_LDO8_SWI                         0x0040  /* LDO8_SWI */
980*4882a593Smuzhiyun #define WM831X_LDO8_SWI_MASK                    0x0040  /* LDO8_SWI */
981*4882a593Smuzhiyun #define WM831X_LDO8_SWI_SHIFT                        6  /* LDO8_SWI */
982*4882a593Smuzhiyun #define WM831X_LDO8_SWI_WIDTH                        1  /* LDO8_SWI */
983*4882a593Smuzhiyun 
984*4882a593Smuzhiyun /*
985*4882a593Smuzhiyun  * R16510 (0x407E) - LDO8 ON Control
986*4882a593Smuzhiyun  */
987*4882a593Smuzhiyun #define WM831X_LDO8_ON_SLOT_MASK                0xE000  /* LDO8_ON_SLOT - [15:13] */
988*4882a593Smuzhiyun #define WM831X_LDO8_ON_SLOT_SHIFT                   13  /* LDO8_ON_SLOT - [15:13] */
989*4882a593Smuzhiyun #define WM831X_LDO8_ON_SLOT_WIDTH                    3  /* LDO8_ON_SLOT - [15:13] */
990*4882a593Smuzhiyun #define WM831X_LDO8_ON_MODE                     0x0100  /* LDO8_ON_MODE */
991*4882a593Smuzhiyun #define WM831X_LDO8_ON_MODE_MASK                0x0100  /* LDO8_ON_MODE */
992*4882a593Smuzhiyun #define WM831X_LDO8_ON_MODE_SHIFT                    8  /* LDO8_ON_MODE */
993*4882a593Smuzhiyun #define WM831X_LDO8_ON_MODE_WIDTH                    1  /* LDO8_ON_MODE */
994*4882a593Smuzhiyun #define WM831X_LDO8_ON_VSEL_MASK                0x001F  /* LDO8_ON_VSEL - [4:0] */
995*4882a593Smuzhiyun #define WM831X_LDO8_ON_VSEL_SHIFT                    0  /* LDO8_ON_VSEL - [4:0] */
996*4882a593Smuzhiyun #define WM831X_LDO8_ON_VSEL_WIDTH                    5  /* LDO8_ON_VSEL - [4:0] */
997*4882a593Smuzhiyun 
998*4882a593Smuzhiyun /*
999*4882a593Smuzhiyun  * R16511 (0x407F) - LDO8 SLEEP Control
1000*4882a593Smuzhiyun  */
1001*4882a593Smuzhiyun #define WM831X_LDO8_SLP_SLOT_MASK               0xE000  /* LDO8_SLP_SLOT - [15:13] */
1002*4882a593Smuzhiyun #define WM831X_LDO8_SLP_SLOT_SHIFT                  13  /* LDO8_SLP_SLOT - [15:13] */
1003*4882a593Smuzhiyun #define WM831X_LDO8_SLP_SLOT_WIDTH                   3  /* LDO8_SLP_SLOT - [15:13] */
1004*4882a593Smuzhiyun #define WM831X_LDO8_SLP_MODE                    0x0100  /* LDO8_SLP_MODE */
1005*4882a593Smuzhiyun #define WM831X_LDO8_SLP_MODE_MASK               0x0100  /* LDO8_SLP_MODE */
1006*4882a593Smuzhiyun #define WM831X_LDO8_SLP_MODE_SHIFT                   8  /* LDO8_SLP_MODE */
1007*4882a593Smuzhiyun #define WM831X_LDO8_SLP_MODE_WIDTH                   1  /* LDO8_SLP_MODE */
1008*4882a593Smuzhiyun #define WM831X_LDO8_SLP_VSEL_MASK               0x001F  /* LDO8_SLP_VSEL - [4:0] */
1009*4882a593Smuzhiyun #define WM831X_LDO8_SLP_VSEL_SHIFT                   0  /* LDO8_SLP_VSEL - [4:0] */
1010*4882a593Smuzhiyun #define WM831X_LDO8_SLP_VSEL_WIDTH                   5  /* LDO8_SLP_VSEL - [4:0] */
1011*4882a593Smuzhiyun 
1012*4882a593Smuzhiyun /*
1013*4882a593Smuzhiyun  * R16512 (0x4080) - LDO9 Control
1014*4882a593Smuzhiyun  */
1015*4882a593Smuzhiyun #define WM831X_LDO9_ERR_ACT_MASK                0xC000  /* LDO9_ERR_ACT - [15:14] */
1016*4882a593Smuzhiyun #define WM831X_LDO9_ERR_ACT_SHIFT                   14  /* LDO9_ERR_ACT - [15:14] */
1017*4882a593Smuzhiyun #define WM831X_LDO9_ERR_ACT_WIDTH                    2  /* LDO9_ERR_ACT - [15:14] */
1018*4882a593Smuzhiyun #define WM831X_LDO9_HWC_SRC_MASK                0x1800  /* LDO9_HWC_SRC - [12:11] */
1019*4882a593Smuzhiyun #define WM831X_LDO9_HWC_SRC_SHIFT                   11  /* LDO9_HWC_SRC - [12:11] */
1020*4882a593Smuzhiyun #define WM831X_LDO9_HWC_SRC_WIDTH                    2  /* LDO9_HWC_SRC - [12:11] */
1021*4882a593Smuzhiyun #define WM831X_LDO9_HWC_VSEL                    0x0400  /* LDO9_HWC_VSEL */
1022*4882a593Smuzhiyun #define WM831X_LDO9_HWC_VSEL_MASK               0x0400  /* LDO9_HWC_VSEL */
1023*4882a593Smuzhiyun #define WM831X_LDO9_HWC_VSEL_SHIFT                  10  /* LDO9_HWC_VSEL */
1024*4882a593Smuzhiyun #define WM831X_LDO9_HWC_VSEL_WIDTH                   1  /* LDO9_HWC_VSEL */
1025*4882a593Smuzhiyun #define WM831X_LDO9_HWC_MODE_MASK               0x0300  /* LDO9_HWC_MODE - [9:8] */
1026*4882a593Smuzhiyun #define WM831X_LDO9_HWC_MODE_SHIFT                   8  /* LDO9_HWC_MODE - [9:8] */
1027*4882a593Smuzhiyun #define WM831X_LDO9_HWC_MODE_WIDTH                   2  /* LDO9_HWC_MODE - [9:8] */
1028*4882a593Smuzhiyun #define WM831X_LDO9_FLT                         0x0080  /* LDO9_FLT */
1029*4882a593Smuzhiyun #define WM831X_LDO9_FLT_MASK                    0x0080  /* LDO9_FLT */
1030*4882a593Smuzhiyun #define WM831X_LDO9_FLT_SHIFT                        7  /* LDO9_FLT */
1031*4882a593Smuzhiyun #define WM831X_LDO9_FLT_WIDTH                        1  /* LDO9_FLT */
1032*4882a593Smuzhiyun #define WM831X_LDO9_SWI                         0x0040  /* LDO9_SWI */
1033*4882a593Smuzhiyun #define WM831X_LDO9_SWI_MASK                    0x0040  /* LDO9_SWI */
1034*4882a593Smuzhiyun #define WM831X_LDO9_SWI_SHIFT                        6  /* LDO9_SWI */
1035*4882a593Smuzhiyun #define WM831X_LDO9_SWI_WIDTH                        1  /* LDO9_SWI */
1036*4882a593Smuzhiyun 
1037*4882a593Smuzhiyun /*
1038*4882a593Smuzhiyun  * R16513 (0x4081) - LDO9 ON Control
1039*4882a593Smuzhiyun  */
1040*4882a593Smuzhiyun #define WM831X_LDO9_ON_SLOT_MASK                0xE000  /* LDO9_ON_SLOT - [15:13] */
1041*4882a593Smuzhiyun #define WM831X_LDO9_ON_SLOT_SHIFT                   13  /* LDO9_ON_SLOT - [15:13] */
1042*4882a593Smuzhiyun #define WM831X_LDO9_ON_SLOT_WIDTH                    3  /* LDO9_ON_SLOT - [15:13] */
1043*4882a593Smuzhiyun #define WM831X_LDO9_ON_MODE                     0x0100  /* LDO9_ON_MODE */
1044*4882a593Smuzhiyun #define WM831X_LDO9_ON_MODE_MASK                0x0100  /* LDO9_ON_MODE */
1045*4882a593Smuzhiyun #define WM831X_LDO9_ON_MODE_SHIFT                    8  /* LDO9_ON_MODE */
1046*4882a593Smuzhiyun #define WM831X_LDO9_ON_MODE_WIDTH                    1  /* LDO9_ON_MODE */
1047*4882a593Smuzhiyun #define WM831X_LDO9_ON_VSEL_MASK                0x001F  /* LDO9_ON_VSEL - [4:0] */
1048*4882a593Smuzhiyun #define WM831X_LDO9_ON_VSEL_SHIFT                    0  /* LDO9_ON_VSEL - [4:0] */
1049*4882a593Smuzhiyun #define WM831X_LDO9_ON_VSEL_WIDTH                    5  /* LDO9_ON_VSEL - [4:0] */
1050*4882a593Smuzhiyun 
1051*4882a593Smuzhiyun /*
1052*4882a593Smuzhiyun  * R16514 (0x4082) - LDO9 SLEEP Control
1053*4882a593Smuzhiyun  */
1054*4882a593Smuzhiyun #define WM831X_LDO9_SLP_SLOT_MASK               0xE000  /* LDO9_SLP_SLOT - [15:13] */
1055*4882a593Smuzhiyun #define WM831X_LDO9_SLP_SLOT_SHIFT                  13  /* LDO9_SLP_SLOT - [15:13] */
1056*4882a593Smuzhiyun #define WM831X_LDO9_SLP_SLOT_WIDTH                   3  /* LDO9_SLP_SLOT - [15:13] */
1057*4882a593Smuzhiyun #define WM831X_LDO9_SLP_MODE                    0x0100  /* LDO9_SLP_MODE */
1058*4882a593Smuzhiyun #define WM831X_LDO9_SLP_MODE_MASK               0x0100  /* LDO9_SLP_MODE */
1059*4882a593Smuzhiyun #define WM831X_LDO9_SLP_MODE_SHIFT                   8  /* LDO9_SLP_MODE */
1060*4882a593Smuzhiyun #define WM831X_LDO9_SLP_MODE_WIDTH                   1  /* LDO9_SLP_MODE */
1061*4882a593Smuzhiyun #define WM831X_LDO9_SLP_VSEL_MASK               0x001F  /* LDO9_SLP_VSEL - [4:0] */
1062*4882a593Smuzhiyun #define WM831X_LDO9_SLP_VSEL_SHIFT                   0  /* LDO9_SLP_VSEL - [4:0] */
1063*4882a593Smuzhiyun #define WM831X_LDO9_SLP_VSEL_WIDTH                   5  /* LDO9_SLP_VSEL - [4:0] */
1064*4882a593Smuzhiyun 
1065*4882a593Smuzhiyun /*
1066*4882a593Smuzhiyun  * R16515 (0x4083) - LDO10 Control
1067*4882a593Smuzhiyun  */
1068*4882a593Smuzhiyun #define WM831X_LDO10_ERR_ACT_MASK               0xC000  /* LDO10_ERR_ACT - [15:14] */
1069*4882a593Smuzhiyun #define WM831X_LDO10_ERR_ACT_SHIFT                  14  /* LDO10_ERR_ACT - [15:14] */
1070*4882a593Smuzhiyun #define WM831X_LDO10_ERR_ACT_WIDTH                   2  /* LDO10_ERR_ACT - [15:14] */
1071*4882a593Smuzhiyun #define WM831X_LDO10_HWC_SRC_MASK               0x1800  /* LDO10_HWC_SRC - [12:11] */
1072*4882a593Smuzhiyun #define WM831X_LDO10_HWC_SRC_SHIFT                  11  /* LDO10_HWC_SRC - [12:11] */
1073*4882a593Smuzhiyun #define WM831X_LDO10_HWC_SRC_WIDTH                   2  /* LDO10_HWC_SRC - [12:11] */
1074*4882a593Smuzhiyun #define WM831X_LDO10_HWC_VSEL                   0x0400  /* LDO10_HWC_VSEL */
1075*4882a593Smuzhiyun #define WM831X_LDO10_HWC_VSEL_MASK              0x0400  /* LDO10_HWC_VSEL */
1076*4882a593Smuzhiyun #define WM831X_LDO10_HWC_VSEL_SHIFT                 10  /* LDO10_HWC_VSEL */
1077*4882a593Smuzhiyun #define WM831X_LDO10_HWC_VSEL_WIDTH                  1  /* LDO10_HWC_VSEL */
1078*4882a593Smuzhiyun #define WM831X_LDO10_HWC_MODE_MASK              0x0300  /* LDO10_HWC_MODE - [9:8] */
1079*4882a593Smuzhiyun #define WM831X_LDO10_HWC_MODE_SHIFT                  8  /* LDO10_HWC_MODE - [9:8] */
1080*4882a593Smuzhiyun #define WM831X_LDO10_HWC_MODE_WIDTH                  2  /* LDO10_HWC_MODE - [9:8] */
1081*4882a593Smuzhiyun #define WM831X_LDO10_FLT                        0x0080  /* LDO10_FLT */
1082*4882a593Smuzhiyun #define WM831X_LDO10_FLT_MASK                   0x0080  /* LDO10_FLT */
1083*4882a593Smuzhiyun #define WM831X_LDO10_FLT_SHIFT                       7  /* LDO10_FLT */
1084*4882a593Smuzhiyun #define WM831X_LDO10_FLT_WIDTH                       1  /* LDO10_FLT */
1085*4882a593Smuzhiyun #define WM831X_LDO10_SWI                        0x0040  /* LDO10_SWI */
1086*4882a593Smuzhiyun #define WM831X_LDO10_SWI_MASK                   0x0040  /* LDO10_SWI */
1087*4882a593Smuzhiyun #define WM831X_LDO10_SWI_SHIFT                       6  /* LDO10_SWI */
1088*4882a593Smuzhiyun #define WM831X_LDO10_SWI_WIDTH                       1  /* LDO10_SWI */
1089*4882a593Smuzhiyun 
1090*4882a593Smuzhiyun /*
1091*4882a593Smuzhiyun  * R16516 (0x4084) - LDO10 ON Control
1092*4882a593Smuzhiyun  */
1093*4882a593Smuzhiyun #define WM831X_LDO10_ON_SLOT_MASK               0xE000  /* LDO10_ON_SLOT - [15:13] */
1094*4882a593Smuzhiyun #define WM831X_LDO10_ON_SLOT_SHIFT                  13  /* LDO10_ON_SLOT - [15:13] */
1095*4882a593Smuzhiyun #define WM831X_LDO10_ON_SLOT_WIDTH                   3  /* LDO10_ON_SLOT - [15:13] */
1096*4882a593Smuzhiyun #define WM831X_LDO10_ON_MODE                    0x0100  /* LDO10_ON_MODE */
1097*4882a593Smuzhiyun #define WM831X_LDO10_ON_MODE_MASK               0x0100  /* LDO10_ON_MODE */
1098*4882a593Smuzhiyun #define WM831X_LDO10_ON_MODE_SHIFT                   8  /* LDO10_ON_MODE */
1099*4882a593Smuzhiyun #define WM831X_LDO10_ON_MODE_WIDTH                   1  /* LDO10_ON_MODE */
1100*4882a593Smuzhiyun #define WM831X_LDO10_ON_VSEL_MASK               0x001F  /* LDO10_ON_VSEL - [4:0] */
1101*4882a593Smuzhiyun #define WM831X_LDO10_ON_VSEL_SHIFT                   0  /* LDO10_ON_VSEL - [4:0] */
1102*4882a593Smuzhiyun #define WM831X_LDO10_ON_VSEL_WIDTH                   5  /* LDO10_ON_VSEL - [4:0] */
1103*4882a593Smuzhiyun 
1104*4882a593Smuzhiyun /*
1105*4882a593Smuzhiyun  * R16517 (0x4085) - LDO10 SLEEP Control
1106*4882a593Smuzhiyun  */
1107*4882a593Smuzhiyun #define WM831X_LDO10_SLP_SLOT_MASK              0xE000  /* LDO10_SLP_SLOT - [15:13] */
1108*4882a593Smuzhiyun #define WM831X_LDO10_SLP_SLOT_SHIFT                 13  /* LDO10_SLP_SLOT - [15:13] */
1109*4882a593Smuzhiyun #define WM831X_LDO10_SLP_SLOT_WIDTH                  3  /* LDO10_SLP_SLOT - [15:13] */
1110*4882a593Smuzhiyun #define WM831X_LDO10_SLP_MODE                   0x0100  /* LDO10_SLP_MODE */
1111*4882a593Smuzhiyun #define WM831X_LDO10_SLP_MODE_MASK              0x0100  /* LDO10_SLP_MODE */
1112*4882a593Smuzhiyun #define WM831X_LDO10_SLP_MODE_SHIFT                  8  /* LDO10_SLP_MODE */
1113*4882a593Smuzhiyun #define WM831X_LDO10_SLP_MODE_WIDTH                  1  /* LDO10_SLP_MODE */
1114*4882a593Smuzhiyun #define WM831X_LDO10_SLP_VSEL_MASK              0x001F  /* LDO10_SLP_VSEL - [4:0] */
1115*4882a593Smuzhiyun #define WM831X_LDO10_SLP_VSEL_SHIFT                  0  /* LDO10_SLP_VSEL - [4:0] */
1116*4882a593Smuzhiyun #define WM831X_LDO10_SLP_VSEL_WIDTH                  5  /* LDO10_SLP_VSEL - [4:0] */
1117*4882a593Smuzhiyun 
1118*4882a593Smuzhiyun /*
1119*4882a593Smuzhiyun  * R16519 (0x4087) - LDO11 ON Control
1120*4882a593Smuzhiyun  */
1121*4882a593Smuzhiyun #define WM831X_LDO11_ON_SLOT_MASK               0xE000  /* LDO11_ON_SLOT - [15:13] */
1122*4882a593Smuzhiyun #define WM831X_LDO11_ON_SLOT_SHIFT                  13  /* LDO11_ON_SLOT - [15:13] */
1123*4882a593Smuzhiyun #define WM831X_LDO11_ON_SLOT_WIDTH                   3  /* LDO11_ON_SLOT - [15:13] */
1124*4882a593Smuzhiyun #define WM831X_LDO11_OFFENA                     0x1000  /* LDO11_OFFENA */
1125*4882a593Smuzhiyun #define WM831X_LDO11_OFFENA_MASK                0x1000  /* LDO11_OFFENA */
1126*4882a593Smuzhiyun #define WM831X_LDO11_OFFENA_SHIFT                   12  /* LDO11_OFFENA */
1127*4882a593Smuzhiyun #define WM831X_LDO11_OFFENA_WIDTH                    1  /* LDO11_OFFENA */
1128*4882a593Smuzhiyun #define WM831X_LDO11_VSEL_SRC                   0x0080  /* LDO11_VSEL_SRC */
1129*4882a593Smuzhiyun #define WM831X_LDO11_VSEL_SRC_MASK              0x0080  /* LDO11_VSEL_SRC */
1130*4882a593Smuzhiyun #define WM831X_LDO11_VSEL_SRC_SHIFT                  7  /* LDO11_VSEL_SRC */
1131*4882a593Smuzhiyun #define WM831X_LDO11_VSEL_SRC_WIDTH                  1  /* LDO11_VSEL_SRC */
1132*4882a593Smuzhiyun #define WM831X_LDO11_ON_VSEL_MASK               0x000F  /* LDO11_ON_VSEL - [3:0] */
1133*4882a593Smuzhiyun #define WM831X_LDO11_ON_VSEL_SHIFT                   0  /* LDO11_ON_VSEL - [3:0] */
1134*4882a593Smuzhiyun #define WM831X_LDO11_ON_VSEL_WIDTH                   4  /* LDO11_ON_VSEL - [3:0] */
1135*4882a593Smuzhiyun 
1136*4882a593Smuzhiyun /*
1137*4882a593Smuzhiyun  * R16520 (0x4088) - LDO11 SLEEP Control
1138*4882a593Smuzhiyun  */
1139*4882a593Smuzhiyun #define WM831X_LDO11_SLP_SLOT_MASK              0xE000  /* LDO11_SLP_SLOT - [15:13] */
1140*4882a593Smuzhiyun #define WM831X_LDO11_SLP_SLOT_SHIFT                 13  /* LDO11_SLP_SLOT - [15:13] */
1141*4882a593Smuzhiyun #define WM831X_LDO11_SLP_SLOT_WIDTH                  3  /* LDO11_SLP_SLOT - [15:13] */
1142*4882a593Smuzhiyun #define WM831X_LDO11_SLP_VSEL_MASK              0x000F  /* LDO11_SLP_VSEL - [3:0] */
1143*4882a593Smuzhiyun #define WM831X_LDO11_SLP_VSEL_SHIFT                  0  /* LDO11_SLP_VSEL - [3:0] */
1144*4882a593Smuzhiyun #define WM831X_LDO11_SLP_VSEL_WIDTH                  4  /* LDO11_SLP_VSEL - [3:0] */
1145*4882a593Smuzhiyun 
1146*4882a593Smuzhiyun /*
1147*4882a593Smuzhiyun  * R16526 (0x408E) - Power Good Source 1
1148*4882a593Smuzhiyun  */
1149*4882a593Smuzhiyun #define WM831X_DC4_OK                           0x0008  /* DC4_OK */
1150*4882a593Smuzhiyun #define WM831X_DC4_OK_MASK                      0x0008  /* DC4_OK */
1151*4882a593Smuzhiyun #define WM831X_DC4_OK_SHIFT                          3  /* DC4_OK */
1152*4882a593Smuzhiyun #define WM831X_DC4_OK_WIDTH                          1  /* DC4_OK */
1153*4882a593Smuzhiyun #define WM831X_DC3_OK                           0x0004  /* DC3_OK */
1154*4882a593Smuzhiyun #define WM831X_DC3_OK_MASK                      0x0004  /* DC3_OK */
1155*4882a593Smuzhiyun #define WM831X_DC3_OK_SHIFT                          2  /* DC3_OK */
1156*4882a593Smuzhiyun #define WM831X_DC3_OK_WIDTH                          1  /* DC3_OK */
1157*4882a593Smuzhiyun #define WM831X_DC2_OK                           0x0002  /* DC2_OK */
1158*4882a593Smuzhiyun #define WM831X_DC2_OK_MASK                      0x0002  /* DC2_OK */
1159*4882a593Smuzhiyun #define WM831X_DC2_OK_SHIFT                          1  /* DC2_OK */
1160*4882a593Smuzhiyun #define WM831X_DC2_OK_WIDTH                          1  /* DC2_OK */
1161*4882a593Smuzhiyun #define WM831X_DC1_OK                           0x0001  /* DC1_OK */
1162*4882a593Smuzhiyun #define WM831X_DC1_OK_MASK                      0x0001  /* DC1_OK */
1163*4882a593Smuzhiyun #define WM831X_DC1_OK_SHIFT                          0  /* DC1_OK */
1164*4882a593Smuzhiyun #define WM831X_DC1_OK_WIDTH                          1  /* DC1_OK */
1165*4882a593Smuzhiyun 
1166*4882a593Smuzhiyun /*
1167*4882a593Smuzhiyun  * R16527 (0x408F) - Power Good Source 2
1168*4882a593Smuzhiyun  */
1169*4882a593Smuzhiyun #define WM831X_LDO10_OK                         0x0200  /* LDO10_OK */
1170*4882a593Smuzhiyun #define WM831X_LDO10_OK_MASK                    0x0200  /* LDO10_OK */
1171*4882a593Smuzhiyun #define WM831X_LDO10_OK_SHIFT                        9  /* LDO10_OK */
1172*4882a593Smuzhiyun #define WM831X_LDO10_OK_WIDTH                        1  /* LDO10_OK */
1173*4882a593Smuzhiyun #define WM831X_LDO9_OK                          0x0100  /* LDO9_OK */
1174*4882a593Smuzhiyun #define WM831X_LDO9_OK_MASK                     0x0100  /* LDO9_OK */
1175*4882a593Smuzhiyun #define WM831X_LDO9_OK_SHIFT                         8  /* LDO9_OK */
1176*4882a593Smuzhiyun #define WM831X_LDO9_OK_WIDTH                         1  /* LDO9_OK */
1177*4882a593Smuzhiyun #define WM831X_LDO8_OK                          0x0080  /* LDO8_OK */
1178*4882a593Smuzhiyun #define WM831X_LDO8_OK_MASK                     0x0080  /* LDO8_OK */
1179*4882a593Smuzhiyun #define WM831X_LDO8_OK_SHIFT                         7  /* LDO8_OK */
1180*4882a593Smuzhiyun #define WM831X_LDO8_OK_WIDTH                         1  /* LDO8_OK */
1181*4882a593Smuzhiyun #define WM831X_LDO7_OK                          0x0040  /* LDO7_OK */
1182*4882a593Smuzhiyun #define WM831X_LDO7_OK_MASK                     0x0040  /* LDO7_OK */
1183*4882a593Smuzhiyun #define WM831X_LDO7_OK_SHIFT                         6  /* LDO7_OK */
1184*4882a593Smuzhiyun #define WM831X_LDO7_OK_WIDTH                         1  /* LDO7_OK */
1185*4882a593Smuzhiyun #define WM831X_LDO6_OK                          0x0020  /* LDO6_OK */
1186*4882a593Smuzhiyun #define WM831X_LDO6_OK_MASK                     0x0020  /* LDO6_OK */
1187*4882a593Smuzhiyun #define WM831X_LDO6_OK_SHIFT                         5  /* LDO6_OK */
1188*4882a593Smuzhiyun #define WM831X_LDO6_OK_WIDTH                         1  /* LDO6_OK */
1189*4882a593Smuzhiyun #define WM831X_LDO5_OK                          0x0010  /* LDO5_OK */
1190*4882a593Smuzhiyun #define WM831X_LDO5_OK_MASK                     0x0010  /* LDO5_OK */
1191*4882a593Smuzhiyun #define WM831X_LDO5_OK_SHIFT                         4  /* LDO5_OK */
1192*4882a593Smuzhiyun #define WM831X_LDO5_OK_WIDTH                         1  /* LDO5_OK */
1193*4882a593Smuzhiyun #define WM831X_LDO4_OK                          0x0008  /* LDO4_OK */
1194*4882a593Smuzhiyun #define WM831X_LDO4_OK_MASK                     0x0008  /* LDO4_OK */
1195*4882a593Smuzhiyun #define WM831X_LDO4_OK_SHIFT                         3  /* LDO4_OK */
1196*4882a593Smuzhiyun #define WM831X_LDO4_OK_WIDTH                         1  /* LDO4_OK */
1197*4882a593Smuzhiyun #define WM831X_LDO3_OK                          0x0004  /* LDO3_OK */
1198*4882a593Smuzhiyun #define WM831X_LDO3_OK_MASK                     0x0004  /* LDO3_OK */
1199*4882a593Smuzhiyun #define WM831X_LDO3_OK_SHIFT                         2  /* LDO3_OK */
1200*4882a593Smuzhiyun #define WM831X_LDO3_OK_WIDTH                         1  /* LDO3_OK */
1201*4882a593Smuzhiyun #define WM831X_LDO2_OK                          0x0002  /* LDO2_OK */
1202*4882a593Smuzhiyun #define WM831X_LDO2_OK_MASK                     0x0002  /* LDO2_OK */
1203*4882a593Smuzhiyun #define WM831X_LDO2_OK_SHIFT                         1  /* LDO2_OK */
1204*4882a593Smuzhiyun #define WM831X_LDO2_OK_WIDTH                         1  /* LDO2_OK */
1205*4882a593Smuzhiyun #define WM831X_LDO1_OK                          0x0001  /* LDO1_OK */
1206*4882a593Smuzhiyun #define WM831X_LDO1_OK_MASK                     0x0001  /* LDO1_OK */
1207*4882a593Smuzhiyun #define WM831X_LDO1_OK_SHIFT                         0  /* LDO1_OK */
1208*4882a593Smuzhiyun #define WM831X_LDO1_OK_WIDTH                         1  /* LDO1_OK */
1209*4882a593Smuzhiyun 
1210*4882a593Smuzhiyun #define WM831X_ISINK_MAX_ISEL 55
1211*4882a593Smuzhiyun extern const unsigned int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1];
1212*4882a593Smuzhiyun 
1213*4882a593Smuzhiyun #endif
1214