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