1  // SPDX-License-Identifier: GPL-2.0-only
2  /*
3   * wm8998-tables.c  --  data tables for wm8998-class codecs
4   *
5   * Copyright 2014 Wolfson Microelectronics plc
6   *
7   * Author: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
8   */
9  
10  #include <linux/module.h>
11  
12  #include <linux/mfd/arizona/core.h>
13  #include <linux/mfd/arizona/registers.h>
14  #include <linux/device.h>
15  
16  #include "arizona.h"
17  
18  #define WM8998_NUM_AOD_ISR 2
19  #define WM8998_NUM_ISR 5
20  
21  static const struct reg_sequence wm8998_rev_a_patch[] = {
22  	{ 0x0212, 0x0000 },
23  	{ 0x0211, 0x0014 },
24  	{ 0x04E4, 0x0E0D },
25  	{ 0x04E5, 0x0E0D },
26  	{ 0x04E6, 0x0E0D },
27  	{ 0x04EB, 0x060E },
28  	{ 0x0441, 0xC759 },
29  	{ 0x0442, 0x2A08 },
30  	{ 0x0443, 0x5CFA },
31  	{ 0x026E, 0x0064 },
32  	{ 0x026F, 0x00EA },
33  	{ 0x0270, 0x1F16 },
34  	{ 0x0410, 0x2080 },
35  	{ 0x0418, 0x2080 },
36  	{ 0x0420, 0x2080 },
37  	{ 0x04B8, 0x1120 },
38  	{ 0x047E, 0x080E },
39  	{ 0x0448, 0x03EF },
40  };
41  
42  /* We use a function so we can use ARRAY_SIZE() */
wm8998_patch(struct arizona * arizona)43  int wm8998_patch(struct arizona *arizona)
44  {
45  	return regmap_register_patch(arizona->regmap,
46  				     wm8998_rev_a_patch,
47  				     ARRAY_SIZE(wm8998_rev_a_patch));
48  }
49  
50  static const struct regmap_irq wm8998_aod_irqs[ARIZONA_NUM_IRQ] = {
51  	[ARIZONA_IRQ_MICD_CLAMP_FALL] = {
52  		.mask = ARIZONA_MICD_CLAMP_FALL_EINT1
53  	},
54  	[ARIZONA_IRQ_MICD_CLAMP_RISE] = {
55  		.mask = ARIZONA_MICD_CLAMP_RISE_EINT1
56  	},
57  	[ARIZONA_IRQ_GP5_FALL] = { .mask = ARIZONA_GP5_FALL_EINT1 },
58  	[ARIZONA_IRQ_GP5_RISE] = { .mask = ARIZONA_GP5_RISE_EINT1 },
59  	[ARIZONA_IRQ_JD_FALL] = { .mask = ARIZONA_JD1_FALL_EINT1 },
60  	[ARIZONA_IRQ_JD_RISE] = { .mask = ARIZONA_JD1_RISE_EINT1 },
61  };
62  
63  struct regmap_irq_chip wm8998_aod = {
64  	.name = "wm8998 AOD",
65  	.status_base = ARIZONA_AOD_IRQ1,
66  	.mask_base = ARIZONA_AOD_IRQ_MASK_IRQ1,
67  	.ack_base = ARIZONA_AOD_IRQ1,
68  	.wake_base = ARIZONA_WAKE_CONTROL,
69  	.wake_invert = 1,
70  	.num_regs = 1,
71  	.irqs = wm8998_aod_irqs,
72  	.num_irqs = ARRAY_SIZE(wm8998_aod_irqs),
73  };
74  
75  static const struct regmap_irq wm8998_irqs[ARIZONA_NUM_IRQ] = {
76  	[ARIZONA_IRQ_GP4] = { .reg_offset = 0, .mask = ARIZONA_GP4_EINT1 },
77  	[ARIZONA_IRQ_GP3] = { .reg_offset = 0, .mask = ARIZONA_GP3_EINT1 },
78  	[ARIZONA_IRQ_GP2] = { .reg_offset = 0, .mask = ARIZONA_GP2_EINT1 },
79  	[ARIZONA_IRQ_GP1] = { .reg_offset = 0, .mask = ARIZONA_GP1_EINT1 },
80  
81  	[ARIZONA_IRQ_SPK_OVERHEAT_WARN] = {
82  		.reg_offset = 2, .mask = ARIZONA_SPK_OVERHEAT_WARN_EINT1
83  	},
84  	[ARIZONA_IRQ_SPK_OVERHEAT] = {
85  		.reg_offset = 2, .mask = ARIZONA_SPK_OVERHEAT_EINT1
86  	},
87  	[ARIZONA_IRQ_HPDET] = {
88  		.reg_offset = 2, .mask = ARIZONA_HPDET_EINT1
89  	},
90  	[ARIZONA_IRQ_MICDET] = {
91  		.reg_offset = 2, .mask = ARIZONA_MICDET_EINT1
92  	},
93  	[ARIZONA_IRQ_WSEQ_DONE] = {
94  		.reg_offset = 2, .mask = ARIZONA_WSEQ_DONE_EINT1
95  	},
96  	[ARIZONA_IRQ_DRC1_SIG_DET] = {
97  		.reg_offset = 2, .mask = ARIZONA_DRC1_SIG_DET_EINT1
98  	},
99  	[ARIZONA_IRQ_ASRC2_LOCK] = {
100  		.reg_offset = 2, .mask = ARIZONA_ASRC2_LOCK_EINT1
101  	},
102  	[ARIZONA_IRQ_ASRC1_LOCK] = {
103  		.reg_offset = 2, .mask = ARIZONA_ASRC1_LOCK_EINT1
104  	},
105  	[ARIZONA_IRQ_UNDERCLOCKED] = {
106  		.reg_offset = 2, .mask = ARIZONA_UNDERCLOCKED_EINT1
107  	},
108  	[ARIZONA_IRQ_OVERCLOCKED] = {
109  		.reg_offset = 2, .mask = ARIZONA_OVERCLOCKED_EINT1
110  	},
111  	[ARIZONA_IRQ_FLL2_LOCK] = {
112  		.reg_offset = 2, .mask = ARIZONA_FLL2_LOCK_EINT1
113  	},
114  	[ARIZONA_IRQ_FLL1_LOCK] = {
115  		.reg_offset = 2, .mask = ARIZONA_FLL1_LOCK_EINT1
116  	},
117  	[ARIZONA_IRQ_CLKGEN_ERR] = {
118  		.reg_offset = 2, .mask = ARIZONA_CLKGEN_ERR_EINT1
119  	},
120  	[ARIZONA_IRQ_CLKGEN_ERR_ASYNC] = {
121  		.reg_offset = 2, .mask = ARIZONA_CLKGEN_ERR_ASYNC_EINT1
122  	},
123  
124  	[ARIZONA_IRQ_ASRC_CFG_ERR] = {
125  		.reg_offset = 3, .mask = ARIZONA_ASRC_CFG_ERR_EINT1
126  	},
127  	[ARIZONA_IRQ_AIF3_ERR] = {
128  		.reg_offset = 3, .mask = ARIZONA_AIF3_ERR_EINT1
129  	},
130  	[ARIZONA_IRQ_AIF2_ERR] = {
131  		.reg_offset = 3, .mask = ARIZONA_AIF2_ERR_EINT1
132  	},
133  	[ARIZONA_IRQ_AIF1_ERR] = {
134  		.reg_offset = 3, .mask = ARIZONA_AIF1_ERR_EINT1
135  	},
136  	[ARIZONA_IRQ_CTRLIF_ERR] = {
137  		.reg_offset = 3, .mask = ARIZONA_CTRLIF_ERR_EINT1
138  	},
139  	[ARIZONA_IRQ_MIXER_DROPPED_SAMPLES] = {
140  		.reg_offset = 3, .mask = ARIZONA_MIXER_DROPPED_SAMPLE_EINT1
141  	},
142  	[ARIZONA_IRQ_ASYNC_CLK_ENA_LOW] = {
143  		.reg_offset = 3, .mask = ARIZONA_ASYNC_CLK_ENA_LOW_EINT1
144  	},
145  	[ARIZONA_IRQ_SYSCLK_ENA_LOW] = {
146  		.reg_offset = 3, .mask = ARIZONA_SYSCLK_ENA_LOW_EINT1
147  	},
148  	[ARIZONA_IRQ_ISRC1_CFG_ERR] = {
149  		.reg_offset = 3, .mask = ARIZONA_ISRC1_CFG_ERR_EINT1
150  	},
151  	[ARIZONA_IRQ_ISRC2_CFG_ERR] = {
152  		.reg_offset = 3, .mask = ARIZONA_ISRC2_CFG_ERR_EINT1
153  	},
154  
155  	[ARIZONA_IRQ_BOOT_DONE] = {
156  		.reg_offset = 4, .mask = ARIZONA_BOOT_DONE_EINT1
157  	},
158  	[ARIZONA_IRQ_FLL2_CLOCK_OK] = {
159  		.reg_offset = 4, .mask = ARIZONA_FLL2_CLOCK_OK_EINT1
160  	},
161  	[ARIZONA_IRQ_FLL1_CLOCK_OK] = {
162  		.reg_offset = 4, .mask = ARIZONA_FLL1_CLOCK_OK_EINT1
163  	},
164  };
165  
166  struct regmap_irq_chip wm8998_irq = {
167  	.name = "wm8998 IRQ",
168  	.status_base = ARIZONA_INTERRUPT_STATUS_1,
169  	.mask_base = ARIZONA_INTERRUPT_STATUS_1_MASK,
170  	.ack_base = ARIZONA_INTERRUPT_STATUS_1,
171  	.num_regs = 5,
172  	.irqs = wm8998_irqs,
173  	.num_irqs = ARRAY_SIZE(wm8998_irqs),
174  };
175  
176  static const struct reg_default wm8998_reg_default[] = {
177  	{ 0x00000009, 0x0001 },    /* R9     - Ctrl IF I2C1 CFG 1 */
178  	{ 0x0000000B, 0x001A },    /* R11    - Ctrl IF I2C1 CFG 2 */
179  	{ 0x00000020, 0x0000 },    /* R32    - Tone Generator 1 */
180  	{ 0x00000021, 0x1000 },    /* R33    - Tone Generator 2 */
181  	{ 0x00000022, 0x0000 },    /* R34    - Tone Generator 3 */
182  	{ 0x00000023, 0x1000 },    /* R35    - Tone Generator 4 */
183  	{ 0x00000024, 0x0000 },    /* R36    - Tone Generator 5 */
184  	{ 0x00000030, 0x0000 },    /* R48    - PWM Drive 1 */
185  	{ 0x00000031, 0x0100 },    /* R49    - PWM Drive 2 */
186  	{ 0x00000032, 0x0100 },    /* R50    - PWM Drive 3 */
187  	{ 0x00000040, 0x0000 },    /* R64    - Wake control */
188  	{ 0x00000041, 0x0000 },    /* R65    - Sequence control */
189  	{ 0x00000061, 0x01FF },    /* R97    - Sample Rate Sequence Select 1 */
190  	{ 0x00000062, 0x01FF },    /* R98    - Sample Rate Sequence Select 2 */
191  	{ 0x00000063, 0x01FF },    /* R99    - Sample Rate Sequence Select 3 */
192  	{ 0x00000064, 0x01FF },    /* R100   - Sample Rate Sequence Select 4 */
193  	{ 0x00000066, 0x01FF },    /* R102   - Always On Triggers Sequence Select 1 */
194  	{ 0x00000067, 0x01FF },    /* R103   - Always On Triggers Sequence Select 2 */
195  	{ 0x00000068, 0x01FF },    /* R104   - Always On Triggers Sequence Select 3 */
196  	{ 0x00000069, 0x01FF },    /* R105   - Always On Triggers Sequence Select 4 */
197  	{ 0x0000006A, 0x01FF },    /* R106   - Always On Triggers Sequence Select 5 */
198  	{ 0x0000006B, 0x01FF },    /* R107   - Always On Triggers Sequence Select 6 */
199  	{ 0x00000090, 0x0000 },    /* R144   - Haptics Control 1 */
200  	{ 0x00000091, 0x7FFF },    /* R145   - Haptics Control 2 */
201  	{ 0x00000092, 0x0000 },    /* R146   - Haptics phase 1 intensity */
202  	{ 0x00000093, 0x0000 },    /* R147   - Haptics phase 1 duration */
203  	{ 0x00000094, 0x0000 },    /* R148   - Haptics phase 2 intensity */
204  	{ 0x00000095, 0x0000 },    /* R149   - Haptics phase 2 duration */
205  	{ 0x00000096, 0x0000 },    /* R150   - Haptics phase 3 intensity */
206  	{ 0x00000097, 0x0000 },    /* R151   - Haptics phase 3 duration */
207  	{ 0x00000100, 0x0002 },    /* R256   - Clock 32k 1 */
208  	{ 0x00000101, 0x0304 },    /* R257   - System Clock 1 */
209  	{ 0x00000102, 0x0011 },    /* R258   - Sample rate 1 */
210  	{ 0x00000103, 0x0011 },    /* R259   - Sample rate 2 */
211  	{ 0x00000104, 0x0011 },    /* R260   - Sample rate 3 */
212  	{ 0x00000112, 0x0305 },    /* R274   - Async clock 1 */
213  	{ 0x00000113, 0x0011 },    /* R275   - Async sample rate 1 */
214  	{ 0x00000114, 0x0011 },    /* R276   - Async sample rate 2 */
215  	{ 0x00000149, 0x0000 },    /* R329   - Output system clock */
216  	{ 0x0000014A, 0x0000 },    /* R330   - Output async clock */
217  	{ 0x00000152, 0x0000 },    /* R338   - Rate Estimator 1 */
218  	{ 0x00000153, 0x0000 },    /* R339   - Rate Estimator 2 */
219  	{ 0x00000154, 0x0000 },    /* R340   - Rate Estimator 3 */
220  	{ 0x00000155, 0x0000 },    /* R341   - Rate Estimator 4 */
221  	{ 0x00000156, 0x0000 },    /* R342   - Rate Estimator 5 */
222  	{ 0x00000161, 0x0000 },    /* R353   - Dynamic Frequency Scaling 1 */
223  	{ 0x00000171, 0x0002 },    /* R369   - FLL1 Control 1 */
224  	{ 0x00000172, 0x0008 },    /* R370   - FLL1 Control 2 */
225  	{ 0x00000173, 0x0018 },    /* R371   - FLL1 Control 3 */
226  	{ 0x00000174, 0x007D },    /* R372   - FLL1 Control 4 */
227  	{ 0x00000175, 0x0004 },    /* R373   - FLL1 Control 5 */
228  	{ 0x00000176, 0x0000 },    /* R374   - FLL1 Control 6 */
229  	{ 0x00000179, 0x0000 },    /* R377   - FLL1 Control 7 */
230  	{ 0x00000181, 0x0000 },    /* R385   - FLL1 Synchroniser 1 */
231  	{ 0x00000182, 0x0000 },    /* R386   - FLL1 Synchroniser 2 */
232  	{ 0x00000183, 0x0000 },    /* R387   - FLL1 Synchroniser 3 */
233  	{ 0x00000184, 0x0000 },    /* R388   - FLL1 Synchroniser 4 */
234  	{ 0x00000185, 0x0000 },    /* R389   - FLL1 Synchroniser 5 */
235  	{ 0x00000186, 0x0000 },    /* R390   - FLL1 Synchroniser 6 */
236  	{ 0x00000187, 0x0001 },    /* R391   - FLL1 Synchroniser 7 */
237  	{ 0x00000189, 0x0000 },    /* R393   - FLL1 Spread Spectrum */
238  	{ 0x0000018A, 0x0004 },    /* R394   - FLL1 GPIO Clock */
239  	{ 0x00000191, 0x0000 },    /* R401   - FLL2 Control 1 */
240  	{ 0x00000192, 0x0008 },    /* R402   - FLL2 Control 2 */
241  	{ 0x00000193, 0x0018 },    /* R403   - FLL2 Control 3 */
242  	{ 0x00000194, 0x007D },    /* R404   - FLL2 Control 4 */
243  	{ 0x00000195, 0x0004 },    /* R405   - FLL2 Control 5 */
244  	{ 0x00000196, 0x0000 },    /* R406   - FLL2 Control 6 */
245  	{ 0x00000199, 0x0000 },    /* R409   - FLL2 Control 7 */
246  	{ 0x000001A1, 0x0000 },    /* R417   - FLL2 Synchroniser 1 */
247  	{ 0x000001A2, 0x0000 },    /* R418   - FLL2 Synchroniser 2 */
248  	{ 0x000001A3, 0x0000 },    /* R419   - FLL2 Synchroniser 3 */
249  	{ 0x000001A4, 0x0000 },    /* R420   - FLL2 Synchroniser 4 */
250  	{ 0x000001A5, 0x0000 },    /* R421   - FLL2 Synchroniser 5 */
251  	{ 0x000001A6, 0x0000 },    /* R422   - FLL2 Synchroniser 6 */
252  	{ 0x000001A7, 0x0001 },    /* R423   - FLL2 Synchroniser 7 */
253  	{ 0x000001A9, 0x0000 },    /* R425   - FLL2 Spread Spectrum */
254  	{ 0x000001AA, 0x0004 },    /* R426   - FLL2 GPIO Clock */
255  	{ 0x00000200, 0x0006 },    /* R512   - Mic Charge Pump 1 */
256  	{ 0x00000210, 0x00D4 },    /* R528   - LDO1 Control 1 */
257  	{ 0x00000212, 0x0000 },    /* R530   - LDO1 Control 2 */
258  	{ 0x00000213, 0x0344 },    /* R531   - LDO2 Control 1 */
259  	{ 0x00000218, 0x01A6 },    /* R536   - Mic Bias Ctrl 1 */
260  	{ 0x00000219, 0x01A6 },    /* R537   - Mic Bias Ctrl 2 */
261  	{ 0x0000021A, 0x01A6 },    /* R538   - Mic Bias Ctrl 3 */
262  	{ 0x00000293, 0x0080 },    /* R659   - Accessory Detect Mode 1 */
263  	{ 0x0000029B, 0x0000 },    /* R667   - Headphone Detect 1 */
264  	{ 0x000002A2, 0x0000 },    /* R674   - Micd Clamp control */
265  	{ 0x000002A3, 0x1102 },    /* R675   - Mic Detect 1 */
266  	{ 0x000002A4, 0x009F },    /* R676   - Mic Detect 2 */
267  	{ 0x000002A6, 0x3737 },    /* R678   - Mic Detect Level 1 */
268  	{ 0x000002A7, 0x2C37 },    /* R679   - Mic Detect Level 2 */
269  	{ 0x000002A8, 0x1422 },    /* R680   - Mic Detect Level 3 */
270  	{ 0x000002A9, 0x030A },    /* R681   - Mic Detect Level 4 */
271  	{ 0x000002CB, 0x0000 },    /* R715   - Isolation control */
272  	{ 0x000002D3, 0x0000 },    /* R723   - Jack detect analogue */
273  	{ 0x00000300, 0x0000 },    /* R768   - Input Enables */
274  	{ 0x00000308, 0x0000 },    /* R776   - Input Rate */
275  	{ 0x00000309, 0x0022 },    /* R777   - Input Volume Ramp */
276  	{ 0x0000030C, 0x0002 },    /* R780   - HPF Control */
277  	{ 0x00000310, 0x2080 },    /* R784   - IN1L Control */
278  	{ 0x00000311, 0x0180 },    /* R785   - ADC Digital Volume 1L */
279  	{ 0x00000312, 0x0000 },    /* R786   - DMIC1L Control */
280  	{ 0x00000314, 0x0080 },    /* R788   - IN1R Control */
281  	{ 0x00000315, 0x0180 },    /* R789   - ADC Digital Volume 1R */
282  	{ 0x00000316, 0x0000 },    /* R790   - DMIC1R Control */
283  	{ 0x00000318, 0x2080 },    /* R792   - IN2L Control */
284  	{ 0x00000319, 0x0180 },    /* R793   - ADC Digital Volume 2L */
285  	{ 0x0000031A, 0x0000 },    /* R794   - DMIC2L Control */
286  	{ 0x00000400, 0x0000 },    /* R1024  - Output Enables 1 */
287  	{ 0x00000408, 0x0000 },    /* R1032  - Output Rate 1 */
288  	{ 0x00000409, 0x0022 },    /* R1033  - Output Volume Ramp */
289  	{ 0x00000410, 0x2080 },    /* R1040  - Output Path Config 1L */
290  	{ 0x00000411, 0x0180 },    /* R1041  - DAC Digital Volume 1L */
291  	{ 0x00000413, 0x0001 },    /* R1043  - Noise Gate Select 1L */
292  	{ 0x00000414, 0x0080 },    /* R1044  - Output Path Config 1R */
293  	{ 0x00000415, 0x0180 },    /* R1045  - DAC Digital Volume 1R */
294  	{ 0x00000417, 0x0002 },    /* R1047  - Noise Gate Select 1R */
295  	{ 0x00000418, 0x2080 },    /* R1048  - Output Path Config 2L */
296  	{ 0x00000419, 0x0180 },    /* R1049  - DAC Digital Volume 2L */
297  	{ 0x0000041B, 0x0004 },    /* R1051  - Noise Gate Select 2L */
298  	{ 0x0000041C, 0x0080 },    /* R1052  - Output Path Config 2R */
299  	{ 0x0000041D, 0x0180 },    /* R1053  - DAC Digital Volume 2R */
300  	{ 0x0000041F, 0x0008 },    /* R1055  - Noise Gate Select 2R */
301  	{ 0x00000420, 0x2080 },    /* R1056  - Output Path Config 3L */
302  	{ 0x00000421, 0x0180 },    /* R1057  - DAC Digital Volume 3L */
303  	{ 0x00000423, 0x0010 },    /* R1059  - Noise Gate Select 3L */
304  	{ 0x00000428, 0x0000 },    /* R1064  - Output Path Config 4L */
305  	{ 0x00000429, 0x0180 },    /* R1065  - DAC Digital Volume 4L */
306  	{ 0x0000042B, 0x0040 },    /* R1067  - Noise Gate Select 4L */
307  	{ 0x0000042C, 0x0000 },    /* R1068  - Output Path Config 4R */
308  	{ 0x0000042D, 0x0180 },    /* R1069  - DAC Digital Volume 4R */
309  	{ 0x0000042F, 0x0080 },    /* R1071  - Noise Gate Select 4R */
310  	{ 0x00000430, 0x0000 },    /* R1072  - Output Path Config 5L */
311  	{ 0x00000431, 0x0180 },    /* R1073  - DAC Digital Volume 5L */
312  	{ 0x00000433, 0x0100 },    /* R1075  - Noise Gate Select 5L */
313  	{ 0x00000434, 0x0000 },    /* R1076  - Output Path Config 5R */
314  	{ 0x00000435, 0x0180 },    /* R1077  - DAC Digital Volume 5R */
315  	{ 0x00000437, 0x0200 },    /* R1079  - Noise Gate Select 5R */
316  	{ 0x00000440, 0x002F },    /* R1088  - DRE Enable */
317  	{ 0x00000441, 0xC759 },    /* R1089  - DRE Control 1 */
318  	{ 0x00000442, 0x2A08 },    /* R1089  - DRE Control 2 */
319  	{ 0x00000443, 0x5CFA },    /* R1089  - DRE Control 3 */
320  	{ 0x00000448, 0x03EF },    /* R1096  - EDRE Enable */
321  	{ 0x00000450, 0x0000 },    /* R1104  - DAC AEC Control 1 */
322  	{ 0x00000451, 0x0000 },    /* R1105  - DAC AEC Control 2 */
323  	{ 0x00000458, 0x0000 },    /* R1112  - Noise Gate Control */
324  	{ 0x00000490, 0x0069 },    /* R1168  - PDM SPK1 CTRL 1 */
325  	{ 0x00000491, 0x0000 },    /* R1169  - PDM SPK1 CTRL 2 */
326  	{ 0x0000049A, 0x0000 },    /* R1178  - HP_TEST_CTRL_13 */
327  	{ 0x00000500, 0x000C },    /* R1280  - AIF1 BCLK Ctrl */
328  	{ 0x00000501, 0x0008 },    /* R1281  - AIF1 Tx Pin Ctrl */
329  	{ 0x00000502, 0x0000 },    /* R1282  - AIF1 Rx Pin Ctrl */
330  	{ 0x00000503, 0x0000 },    /* R1283  - AIF1 Rate Ctrl */
331  	{ 0x00000504, 0x0000 },    /* R1284  - AIF1 Format */
332  	{ 0x00000506, 0x0040 },    /* R1286  - AIF1 Rx BCLK Rate */
333  	{ 0x00000507, 0x1818 },    /* R1287  - AIF1 Frame Ctrl 1 */
334  	{ 0x00000508, 0x1818 },    /* R1288  - AIF1 Frame Ctrl 2 */
335  	{ 0x00000509, 0x0000 },    /* R1289  - AIF1 Frame Ctrl 3 */
336  	{ 0x0000050A, 0x0001 },    /* R1290  - AIF1 Frame Ctrl 4 */
337  	{ 0x0000050B, 0x0002 },    /* R1291  - AIF1 Frame Ctrl 5 */
338  	{ 0x0000050C, 0x0003 },    /* R1292  - AIF1 Frame Ctrl 6 */
339  	{ 0x0000050D, 0x0004 },    /* R1293  - AIF1 Frame Ctrl 7 */
340  	{ 0x0000050E, 0x0005 },    /* R1294  - AIF1 Frame Ctrl 8 */
341  	{ 0x00000511, 0x0000 },    /* R1297  - AIF1 Frame Ctrl 11 */
342  	{ 0x00000512, 0x0001 },    /* R1298  - AIF1 Frame Ctrl 12 */
343  	{ 0x00000513, 0x0002 },    /* R1299  - AIF1 Frame Ctrl 13 */
344  	{ 0x00000514, 0x0003 },    /* R1300  - AIF1 Frame Ctrl 14 */
345  	{ 0x00000515, 0x0004 },    /* R1301  - AIF1 Frame Ctrl 15 */
346  	{ 0x00000516, 0x0005 },    /* R1302  - AIF1 Frame Ctrl 16 */
347  	{ 0x00000519, 0x0000 },    /* R1305  - AIF1 Tx Enables */
348  	{ 0x0000051A, 0x0000 },    /* R1306  - AIF1 Rx Enables */
349  	{ 0x00000540, 0x000C },    /* R1344  - AIF2 BCLK Ctrl */
350  	{ 0x00000541, 0x0008 },    /* R1345  - AIF2 Tx Pin Ctrl */
351  	{ 0x00000542, 0x0000 },    /* R1346  - AIF2 Rx Pin Ctrl */
352  	{ 0x00000543, 0x0000 },    /* R1347  - AIF2 Rate Ctrl */
353  	{ 0x00000544, 0x0000 },    /* R1348  - AIF2 Format */
354  	{ 0x00000546, 0x0040 },    /* R1350  - AIF2 Rx BCLK Rate */
355  	{ 0x00000547, 0x1818 },    /* R1351  - AIF2 Frame Ctrl 1 */
356  	{ 0x00000548, 0x1818 },    /* R1352  - AIF2 Frame Ctrl 2 */
357  	{ 0x00000549, 0x0000 },    /* R1353  - AIF2 Frame Ctrl 3 */
358  	{ 0x0000054A, 0x0001 },    /* R1354  - AIF2 Frame Ctrl 4 */
359  	{ 0x0000054B, 0x0002 },    /* R1355  - AIF2 Frame Ctrl 5 */
360  	{ 0x0000054C, 0x0003 },    /* R1356  - AIF2 Frame Ctrl 6 */
361  	{ 0x0000054D, 0x0004 },    /* R1357  - AIF2 Frame Ctrl 7 */
362  	{ 0x0000054E, 0x0005 },    /* R1358  - AIF2 Frame Ctrl 8 */
363  	{ 0x00000551, 0x0000 },    /* R1361  - AIF2 Frame Ctrl 11 */
364  	{ 0x00000552, 0x0001 },    /* R1362  - AIF2 Frame Ctrl 12 */
365  	{ 0x00000553, 0x0002 },    /* R1363  - AIF2 Frame Ctrl 13 */
366  	{ 0x00000554, 0x0003 },    /* R1364  - AIF2 Frame Ctrl 14 */
367  	{ 0x00000555, 0x0004 },    /* R1365  - AIF2 Frame Ctrl 15 */
368  	{ 0x00000556, 0x0005 },    /* R1366  - AIF2 Frame Ctrl 16 */
369  	{ 0x00000559, 0x0000 },    /* R1369  - AIF2 Tx Enables */
370  	{ 0x0000055A, 0x0000 },    /* R1370  - AIF2 Rx Enables */
371  	{ 0x00000580, 0x000C },    /* R1408  - AIF3 BCLK Ctrl */
372  	{ 0x00000581, 0x0008 },    /* R1409  - AIF3 Tx Pin Ctrl */
373  	{ 0x00000582, 0x0000 },    /* R1410  - AIF3 Rx Pin Ctrl */
374  	{ 0x00000583, 0x0000 },    /* R1411  - AIF3 Rate Ctrl */
375  	{ 0x00000584, 0x0000 },    /* R1412  - AIF3 Format */
376  	{ 0x00000586, 0x0040 },    /* R1414  - AIF3 Rx BCLK Rate */
377  	{ 0x00000587, 0x1818 },    /* R1415  - AIF3 Frame Ctrl 1 */
378  	{ 0x00000588, 0x1818 },    /* R1416  - AIF3 Frame Ctrl 2 */
379  	{ 0x00000589, 0x0000 },    /* R1417  - AIF3 Frame Ctrl 3 */
380  	{ 0x0000058A, 0x0001 },    /* R1418  - AIF3 Frame Ctrl 4 */
381  	{ 0x00000591, 0x0000 },    /* R1425  - AIF3 Frame Ctrl 11 */
382  	{ 0x00000592, 0x0001 },    /* R1426  - AIF3 Frame Ctrl 12 */
383  	{ 0x00000599, 0x0000 },    /* R1433  - AIF3 Tx Enables */
384  	{ 0x0000059A, 0x0000 },    /* R1434  - AIF3 Rx Enables */
385  	{ 0x000005C2, 0x0000 },    /* R1474  - SPD1 TX Control */
386  	{ 0x000005C3, 0x0000 },    /* R1475  - SPD1 TX Channel Status 1 */
387  	{ 0x000005C4, 0x0B01 },    /* R1476  - SPD1 TX Channel Status 2 */
388  	{ 0x000005C5, 0x0000 },    /* R1477  - SPD1 TX Channel Status 3 */
389  	{ 0x000005E3, 0x0004 },    /* R1507  - SLIMbus Framer Ref Gear */
390  	{ 0x000005E5, 0x0000 },    /* R1509  - SLIMbus Rates 1 */
391  	{ 0x000005E6, 0x0000 },    /* R1510  - SLIMbus Rates 2 */
392  	{ 0x000005E9, 0x0000 },    /* R1513  - SLIMbus Rates 5 */
393  	{ 0x000005EA, 0x0000 },    /* R1514  - SLIMbus Rates 6 */
394  	{ 0x000005EB, 0x0000 },    /* R1515  - SLIMbus Rates 7 */
395  	{ 0x000005F5, 0x0000 },    /* R1525  - SLIMbus RX Channel Enable */
396  	{ 0x000005F6, 0x0000 },    /* R1526  - SLIMbus TX Channel Enable */
397  	{ 0x00000640, 0x0000 },    /* R1600  - PWM1MIX Input 1 Source */
398  	{ 0x00000641, 0x0080 },    /* R1601  - PWM1MIX Input 1 Volume */
399  	{ 0x00000642, 0x0000 },    /* R1602  - PWM1MIX Input 2 Source */
400  	{ 0x00000643, 0x0080 },    /* R1603  - PWM1MIX Input 2 Volume */
401  	{ 0x00000644, 0x0000 },    /* R1604  - PWM1MIX Input 3 Source */
402  	{ 0x00000645, 0x0080 },    /* R1605  - PWM1MIX Input 3 Volume */
403  	{ 0x00000646, 0x0000 },    /* R1606  - PWM1MIX Input 4 Source */
404  	{ 0x00000647, 0x0080 },    /* R1607  - PWM1MIX Input 4 Volume */
405  	{ 0x00000648, 0x0000 },    /* R1608  - PWM2MIX Input 1 Source */
406  	{ 0x00000649, 0x0080 },    /* R1609  - PWM2MIX Input 1 Volume */
407  	{ 0x0000064A, 0x0000 },    /* R1610  - PWM2MIX Input 2 Source */
408  	{ 0x0000064B, 0x0080 },    /* R1611  - PWM2MIX Input 2 Volume */
409  	{ 0x0000064C, 0x0000 },    /* R1612  - PWM2MIX Input 3 Source */
410  	{ 0x0000064D, 0x0080 },    /* R1613  - PWM2MIX Input 3 Volume */
411  	{ 0x0000064E, 0x0000 },    /* R1614  - PWM2MIX Input 4 Source */
412  	{ 0x0000064F, 0x0080 },    /* R1615  - PWM2MIX Input 4 Volume */
413  	{ 0x00000680, 0x0000 },    /* R1664  - OUT1LMIX Input 1 Source */
414  	{ 0x00000681, 0x0080 },    /* R1665  - OUT1LMIX Input 1 Volume */
415  	{ 0x00000682, 0x0000 },    /* R1666  - OUT1LMIX Input 2 Source */
416  	{ 0x00000683, 0x0080 },    /* R1667  - OUT1LMIX Input 2 Volume */
417  	{ 0x00000684, 0x0000 },    /* R1668  - OUT1LMIX Input 3 Source */
418  	{ 0x00000685, 0x0080 },    /* R1669  - OUT1LMIX Input 3 Volume */
419  	{ 0x00000686, 0x0000 },    /* R1670  - OUT1LMIX Input 4 Source */
420  	{ 0x00000687, 0x0080 },    /* R1671  - OUT1LMIX Input 4 Volume */
421  	{ 0x00000688, 0x0000 },    /* R1672  - OUT1RMIX Input 1 Source */
422  	{ 0x00000689, 0x0080 },    /* R1673  - OUT1RMIX Input 1 Volume */
423  	{ 0x0000068A, 0x0000 },    /* R1674  - OUT1RMIX Input 2 Source */
424  	{ 0x0000068B, 0x0080 },    /* R1675  - OUT1RMIX Input 2 Volume */
425  	{ 0x0000068C, 0x0000 },    /* R1676  - OUT1RMIX Input 3 Source */
426  	{ 0x0000068D, 0x0080 },    /* R1677  - OUT1RMIX Input 3 Volume */
427  	{ 0x0000068E, 0x0000 },    /* R1678  - OUT1RMIX Input 4 Source */
428  	{ 0x0000068F, 0x0080 },    /* R1679  - OUT1RMIX Input 4 Volume */
429  	{ 0x00000690, 0x0000 },    /* R1680  - OUT2LMIX Input 1 Source */
430  	{ 0x00000691, 0x0080 },    /* R1681  - OUT2LMIX Input 1 Volume */
431  	{ 0x00000692, 0x0000 },    /* R1682  - OUT2LMIX Input 2 Source */
432  	{ 0x00000693, 0x0080 },    /* R1683  - OUT2LMIX Input 2 Volume */
433  	{ 0x00000694, 0x0000 },    /* R1684  - OUT2LMIX Input 3 Source */
434  	{ 0x00000695, 0x0080 },    /* R1685  - OUT2LMIX Input 3 Volume */
435  	{ 0x00000696, 0x0000 },    /* R1686  - OUT2LMIX Input 4 Source */
436  	{ 0x00000697, 0x0080 },    /* R1687  - OUT2LMIX Input 4 Volume */
437  	{ 0x00000698, 0x0000 },    /* R1688  - OUT2RMIX Input 1 Source */
438  	{ 0x00000699, 0x0080 },    /* R1689  - OUT2RMIX Input 1 Volume */
439  	{ 0x0000069A, 0x0000 },    /* R1690  - OUT2RMIX Input 2 Source */
440  	{ 0x0000069B, 0x0080 },    /* R1691  - OUT2RMIX Input 2 Volume */
441  	{ 0x0000069C, 0x0000 },    /* R1692  - OUT2RMIX Input 3 Source */
442  	{ 0x0000069D, 0x0080 },    /* R1693  - OUT2RMIX Input 3 Volume */
443  	{ 0x0000069E, 0x0000 },    /* R1694  - OUT2RMIX Input 4 Source */
444  	{ 0x0000069F, 0x0080 },    /* R1695  - OUT2RMIX Input 4 Volume */
445  	{ 0x000006A0, 0x0000 },    /* R1696  - OUT3LMIX Input 1 Source */
446  	{ 0x000006A1, 0x0080 },    /* R1697  - OUT3LMIX Input 1 Volume */
447  	{ 0x000006A2, 0x0000 },    /* R1698  - OUT3LMIX Input 2 Source */
448  	{ 0x000006A3, 0x0080 },    /* R1699  - OUT3LMIX Input 2 Volume */
449  	{ 0x000006A4, 0x0000 },    /* R1700  - OUT3LMIX Input 3 Source */
450  	{ 0x000006A5, 0x0080 },    /* R1701  - OUT3LMIX Input 3 Volume */
451  	{ 0x000006A6, 0x0000 },    /* R1702  - OUT3LMIX Input 4 Source */
452  	{ 0x000006A7, 0x0080 },    /* R1703  - OUT3LMIX Input 4 Volume */
453  	{ 0x000006B0, 0x0000 },    /* R1712  - OUT4LMIX Input 1 Source */
454  	{ 0x000006B1, 0x0080 },    /* R1713  - OUT4LMIX Input 1 Volume */
455  	{ 0x000006B2, 0x0000 },    /* R1714  - OUT4LMIX Input 2 Source */
456  	{ 0x000006B3, 0x0080 },    /* R1715  - OUT4LMIX Input 2 Volume */
457  	{ 0x000006B4, 0x0000 },    /* R1716  - OUT4LMIX Input 3 Source */
458  	{ 0x000006B5, 0x0080 },    /* R1717  - OUT4LMIX Input 3 Volume */
459  	{ 0x000006B6, 0x0000 },    /* R1718  - OUT4LMIX Input 4 Source */
460  	{ 0x000006B7, 0x0080 },    /* R1719  - OUT4LMIX Input 4 Volume */
461  	{ 0x000006B8, 0x0000 },    /* R1720  - OUT4RMIX Input 1 Source */
462  	{ 0x000006B9, 0x0080 },    /* R1721  - OUT4RMIX Input 1 Volume */
463  	{ 0x000006BA, 0x0000 },    /* R1722  - OUT4RMIX Input 2 Source */
464  	{ 0x000006BB, 0x0080 },    /* R1723  - OUT4RMIX Input 2 Volume */
465  	{ 0x000006BC, 0x0000 },    /* R1724  - OUT4RMIX Input 3 Source */
466  	{ 0x000006BD, 0x0080 },    /* R1725  - OUT4RMIX Input 3 Volume */
467  	{ 0x000006BE, 0x0000 },    /* R1726  - OUT4RMIX Input 4 Source */
468  	{ 0x000006BF, 0x0080 },    /* R1727  - OUT4RMIX Input 4 Volume */
469  	{ 0x000006C0, 0x0000 },    /* R1728  - OUT5LMIX Input 1 Source */
470  	{ 0x000006C1, 0x0080 },    /* R1729  - OUT5LMIX Input 1 Volume */
471  	{ 0x000006C2, 0x0000 },    /* R1730  - OUT5LMIX Input 2 Source */
472  	{ 0x000006C3, 0x0080 },    /* R1731  - OUT5LMIX Input 2 Volume */
473  	{ 0x000006C4, 0x0000 },    /* R1732  - OUT5LMIX Input 3 Source */
474  	{ 0x000006C5, 0x0080 },    /* R1733  - OUT5LMIX Input 3 Volume */
475  	{ 0x000006C6, 0x0000 },    /* R1734  - OUT5LMIX Input 4 Source */
476  	{ 0x000006C7, 0x0080 },    /* R1735  - OUT5LMIX Input 4 Volume */
477  	{ 0x000006C8, 0x0000 },    /* R1736  - OUT5RMIX Input 1 Source */
478  	{ 0x000006C9, 0x0080 },    /* R1737  - OUT5RMIX Input 1 Volume */
479  	{ 0x000006CA, 0x0000 },    /* R1738  - OUT5RMIX Input 2 Source */
480  	{ 0x000006CB, 0x0080 },    /* R1739  - OUT5RMIX Input 2 Volume */
481  	{ 0x000006CC, 0x0000 },    /* R1740  - OUT5RMIX Input 3 Source */
482  	{ 0x000006CD, 0x0080 },    /* R1741  - OUT5RMIX Input 3 Volume */
483  	{ 0x000006CE, 0x0000 },    /* R1742  - OUT5RMIX Input 4 Source */
484  	{ 0x000006CF, 0x0080 },    /* R1743  - OUT5RMIX Input 4 Volume */
485  	{ 0x00000700, 0x0000 },    /* R1792  - AIF1TX1MIX Input 1 Source */
486  	{ 0x00000701, 0x0080 },    /* R1793  - AIF1TX1MIX Input 1 Volume */
487  	{ 0x00000702, 0x0000 },    /* R1794  - AIF1TX1MIX Input 2 Source */
488  	{ 0x00000703, 0x0080 },    /* R1795  - AIF1TX1MIX Input 2 Volume */
489  	{ 0x00000704, 0x0000 },    /* R1796  - AIF1TX1MIX Input 3 Source */
490  	{ 0x00000705, 0x0080 },    /* R1797  - AIF1TX1MIX Input 3 Volume */
491  	{ 0x00000706, 0x0000 },    /* R1798  - AIF1TX1MIX Input 4 Source */
492  	{ 0x00000707, 0x0080 },    /* R1799  - AIF1TX1MIX Input 4 Volume */
493  	{ 0x00000708, 0x0000 },    /* R1800  - AIF1TX2MIX Input 1 Source */
494  	{ 0x00000709, 0x0080 },    /* R1801  - AIF1TX2MIX Input 1 Volume */
495  	{ 0x0000070A, 0x0000 },    /* R1802  - AIF1TX2MIX Input 2 Source */
496  	{ 0x0000070B, 0x0080 },    /* R1803  - AIF1TX2MIX Input 2 Volume */
497  	{ 0x0000070C, 0x0000 },    /* R1804  - AIF1TX2MIX Input 3 Source */
498  	{ 0x0000070D, 0x0080 },    /* R1805  - AIF1TX2MIX Input 3 Volume */
499  	{ 0x0000070E, 0x0000 },    /* R1806  - AIF1TX2MIX Input 4 Source */
500  	{ 0x0000070F, 0x0080 },    /* R1807  - AIF1TX2MIX Input 4 Volume */
501  	{ 0x00000710, 0x0000 },    /* R1808  - AIF1TX3MIX Input 1 Source */
502  	{ 0x00000711, 0x0080 },    /* R1809  - AIF1TX3MIX Input 1 Volume */
503  	{ 0x00000712, 0x0000 },    /* R1810  - AIF1TX3MIX Input 2 Source */
504  	{ 0x00000713, 0x0080 },    /* R1811  - AIF1TX3MIX Input 2 Volume */
505  	{ 0x00000714, 0x0000 },    /* R1812  - AIF1TX3MIX Input 3 Source */
506  	{ 0x00000715, 0x0080 },    /* R1813  - AIF1TX3MIX Input 3 Volume */
507  	{ 0x00000716, 0x0000 },    /* R1814  - AIF1TX3MIX Input 4 Source */
508  	{ 0x00000717, 0x0080 },    /* R1815  - AIF1TX3MIX Input 4 Volume */
509  	{ 0x00000718, 0x0000 },    /* R1816  - AIF1TX4MIX Input 1 Source */
510  	{ 0x00000719, 0x0080 },    /* R1817  - AIF1TX4MIX Input 1 Volume */
511  	{ 0x0000071A, 0x0000 },    /* R1818  - AIF1TX4MIX Input 2 Source */
512  	{ 0x0000071B, 0x0080 },    /* R1819  - AIF1TX4MIX Input 2 Volume */
513  	{ 0x0000071C, 0x0000 },    /* R1820  - AIF1TX4MIX Input 3 Source */
514  	{ 0x0000071D, 0x0080 },    /* R1821  - AIF1TX4MIX Input 3 Volume */
515  	{ 0x0000071E, 0x0000 },    /* R1822  - AIF1TX4MIX Input 4 Source */
516  	{ 0x0000071F, 0x0080 },    /* R1823  - AIF1TX4MIX Input 4 Volume */
517  	{ 0x00000720, 0x0000 },    /* R1824  - AIF1TX5MIX Input 1 Source */
518  	{ 0x00000721, 0x0080 },    /* R1825  - AIF1TX5MIX Input 1 Volume */
519  	{ 0x00000722, 0x0000 },    /* R1826  - AIF1TX5MIX Input 2 Source */
520  	{ 0x00000723, 0x0080 },    /* R1827  - AIF1TX5MIX Input 2 Volume */
521  	{ 0x00000724, 0x0000 },    /* R1828  - AIF1TX5MIX Input 3 Source */
522  	{ 0x00000725, 0x0080 },    /* R1829  - AIF1TX5MIX Input 3 Volume */
523  	{ 0x00000726, 0x0000 },    /* R1830  - AIF1TX5MIX Input 4 Source */
524  	{ 0x00000727, 0x0080 },    /* R1831  - AIF1TX5MIX Input 4 Volume */
525  	{ 0x00000728, 0x0000 },    /* R1832  - AIF1TX6MIX Input 1 Source */
526  	{ 0x00000729, 0x0080 },    /* R1833  - AIF1TX6MIX Input 1 Volume */
527  	{ 0x0000072A, 0x0000 },    /* R1834  - AIF1TX6MIX Input 2 Source */
528  	{ 0x0000072B, 0x0080 },    /* R1835  - AIF1TX6MIX Input 2 Volume */
529  	{ 0x0000072C, 0x0000 },    /* R1836  - AIF1TX6MIX Input 3 Source */
530  	{ 0x0000072D, 0x0080 },    /* R1837  - AIF1TX6MIX Input 3 Volume */
531  	{ 0x0000072E, 0x0000 },    /* R1838  - AIF1TX6MIX Input 4 Source */
532  	{ 0x0000072F, 0x0080 },    /* R1839  - AIF1TX6MIX Input 4 Volume */
533  	{ 0x00000740, 0x0000 },    /* R1856  - AIF2TX1MIX Input 1 Source */
534  	{ 0x00000741, 0x0080 },    /* R1857  - AIF2TX1MIX Input 1 Volume */
535  	{ 0x00000742, 0x0000 },    /* R1858  - AIF2TX1MIX Input 2 Source */
536  	{ 0x00000743, 0x0080 },    /* R1859  - AIF2TX1MIX Input 2 Volume */
537  	{ 0x00000744, 0x0000 },    /* R1860  - AIF2TX1MIX Input 3 Source */
538  	{ 0x00000745, 0x0080 },    /* R1861  - AIF2TX1MIX Input 3 Volume */
539  	{ 0x00000746, 0x0000 },    /* R1862  - AIF2TX1MIX Input 4 Source */
540  	{ 0x00000747, 0x0080 },    /* R1863  - AIF2TX1MIX Input 4 Volume */
541  	{ 0x00000748, 0x0000 },    /* R1864  - AIF2TX2MIX Input 1 Source */
542  	{ 0x00000749, 0x0080 },    /* R1865  - AIF2TX2MIX Input 1 Volume */
543  	{ 0x0000074A, 0x0000 },    /* R1866  - AIF2TX2MIX Input 2 Source */
544  	{ 0x0000074B, 0x0080 },    /* R1867  - AIF2TX2MIX Input 2 Volume */
545  	{ 0x0000074C, 0x0000 },    /* R1868  - AIF2TX2MIX Input 3 Source */
546  	{ 0x0000074D, 0x0080 },    /* R1869  - AIF2TX2MIX Input 3 Volume */
547  	{ 0x0000074E, 0x0000 },    /* R1870  - AIF2TX2MIX Input 4 Source */
548  	{ 0x0000074F, 0x0080 },    /* R1871  - AIF2TX2MIX Input 4 Volume */
549  	{ 0x00000750, 0x0000 },    /* R1872  - AIF2TX3MIX Input 1 Source */
550  	{ 0x00000751, 0x0080 },    /* R1873  - AIF2TX3MIX Input 1 Volume */
551  	{ 0x00000752, 0x0000 },    /* R1874  - AIF2TX3MIX Input 2 Source */
552  	{ 0x00000753, 0x0080 },    /* R1875  - AIF2TX3MIX Input 2 Volume */
553  	{ 0x00000754, 0x0000 },    /* R1876  - AIF2TX3MIX Input 3 Source */
554  	{ 0x00000755, 0x0080 },    /* R1877  - AIF2TX3MIX Input 3 Volume */
555  	{ 0x00000756, 0x0000 },    /* R1878  - AIF2TX3MIX Input 4 Source */
556  	{ 0x00000757, 0x0080 },    /* R1879  - AIF2TX3MIX Input 4 Volume */
557  	{ 0x00000758, 0x0000 },    /* R1880  - AIF2TX4MIX Input 1 Source */
558  	{ 0x00000759, 0x0080 },    /* R1881  - AIF2TX4MIX Input 1 Volume */
559  	{ 0x0000075A, 0x0000 },    /* R1882  - AIF2TX4MIX Input 2 Source */
560  	{ 0x0000075B, 0x0080 },    /* R1883  - AIF2TX4MIX Input 2 Volume */
561  	{ 0x0000075C, 0x0000 },    /* R1884  - AIF2TX4MIX Input 3 Source */
562  	{ 0x0000075D, 0x0080 },    /* R1885  - AIF2TX4MIX Input 3 Volume */
563  	{ 0x0000075E, 0x0000 },    /* R1886  - AIF2TX4MIX Input 4 Source */
564  	{ 0x0000075F, 0x0080 },    /* R1887  - AIF2TX4MIX Input 4 Volume */
565  	{ 0x00000760, 0x0000 },    /* R1888  - AIF2TX5MIX Input 1 Source */
566  	{ 0x00000761, 0x0080 },    /* R1889  - AIF2TX5MIX Input 1 Volume */
567  	{ 0x00000762, 0x0000 },    /* R1890  - AIF2TX5MIX Input 2 Source */
568  	{ 0x00000763, 0x0080 },    /* R1891  - AIF2TX5MIX Input 2 Volume */
569  	{ 0x00000764, 0x0000 },    /* R1892  - AIF2TX5MIX Input 3 Source */
570  	{ 0x00000765, 0x0080 },    /* R1893  - AIF2TX5MIX Input 3 Volume */
571  	{ 0x00000766, 0x0000 },    /* R1894  - AIF2TX5MIX Input 4 Source */
572  	{ 0x00000767, 0x0080 },    /* R1895  - AIF2TX5MIX Input 4 Volume */
573  	{ 0x00000768, 0x0000 },    /* R1896  - AIF2TX6MIX Input 1 Source */
574  	{ 0x00000769, 0x0080 },    /* R1897  - AIF2TX6MIX Input 1 Volume */
575  	{ 0x0000076A, 0x0000 },    /* R1898  - AIF2TX6MIX Input 2 Source */
576  	{ 0x0000076B, 0x0080 },    /* R1899  - AIF2TX6MIX Input 2 Volume */
577  	{ 0x0000076C, 0x0000 },    /* R1900  - AIF2TX6MIX Input 3 Source */
578  	{ 0x0000076D, 0x0080 },    /* R1901  - AIF2TX6MIX Input 3 Volume */
579  	{ 0x0000076E, 0x0000 },    /* R1902  - AIF2TX6MIX Input 4 Source */
580  	{ 0x0000076F, 0x0080 },    /* R1903  - AIF2TX6MIX Input 4 Volume */
581  	{ 0x00000780, 0x0000 },    /* R1920  - AIF3TX1MIX Input 1 Source */
582  	{ 0x00000781, 0x0080 },    /* R1921  - AIF3TX1MIX Input 1 Volume */
583  	{ 0x00000782, 0x0000 },    /* R1922  - AIF3TX1MIX Input 2 Source */
584  	{ 0x00000783, 0x0080 },    /* R1923  - AIF3TX1MIX Input 2 Volume */
585  	{ 0x00000784, 0x0000 },    /* R1924  - AIF3TX1MIX Input 3 Source */
586  	{ 0x00000785, 0x0080 },    /* R1925  - AIF3TX1MIX Input 3 Volume */
587  	{ 0x00000786, 0x0000 },    /* R1926  - AIF3TX1MIX Input 4 Source */
588  	{ 0x00000787, 0x0080 },    /* R1927  - AIF3TX1MIX Input 4 Volume */
589  	{ 0x00000788, 0x0000 },    /* R1928  - AIF3TX2MIX Input 1 Source */
590  	{ 0x00000789, 0x0080 },    /* R1929  - AIF3TX2MIX Input 1 Volume */
591  	{ 0x0000078A, 0x0000 },    /* R1930  - AIF3TX2MIX Input 2 Source */
592  	{ 0x0000078B, 0x0080 },    /* R1931  - AIF3TX2MIX Input 2 Volume */
593  	{ 0x0000078C, 0x0000 },    /* R1932  - AIF3TX2MIX Input 3 Source */
594  	{ 0x0000078D, 0x0080 },    /* R1933  - AIF3TX2MIX Input 3 Volume */
595  	{ 0x0000078E, 0x0000 },    /* R1934  - AIF3TX2MIX Input 4 Source */
596  	{ 0x0000078F, 0x0080 },    /* R1935  - AIF3TX2MIX Input 4 Volume */
597  	{ 0x000007C0, 0x0000 },    /* R1984  - SLIMTX1MIX Input 1 Source */
598  	{ 0x000007C1, 0x0080 },    /* R1985  - SLIMTX1MIX Input 1 Volume */
599  	{ 0x000007C8, 0x0000 },    /* R1992  - SLIMTX2MIX Input 1 Source */
600  	{ 0x000007C9, 0x0080 },    /* R1993  - SLIMTX2MIX Input 1 Volume */
601  	{ 0x000007D0, 0x0000 },    /* R2000  - SLIMTX3MIX Input 1 Source */
602  	{ 0x000007D1, 0x0080 },    /* R2001  - SLIMTX3MIX Input 1 Volume */
603  	{ 0x000007D8, 0x0000 },    /* R2008  - SLIMTX4MIX Input 1 Source */
604  	{ 0x000007D9, 0x0080 },    /* R2009  - SLIMTX4MIX Input 1 Volume */
605  	{ 0x000007E0, 0x0000 },    /* R2016  - SLIMTX5MIX Input 1 Source */
606  	{ 0x000007E1, 0x0080 },    /* R2017  - SLIMTX5MIX Input 1 Volume */
607  	{ 0x000007E8, 0x0000 },    /* R2024  - SLIMTX6MIX Input 1 Source */
608  	{ 0x000007E9, 0x0080 },    /* R2025  - SLIMTX6MIX Input 1 Volume */
609  	{ 0x00000800, 0x0000 },    /* R2048  - SPDIF1TX1MIX Input 1 Source */
610  	{ 0x00000801, 0x0080 },    /* R2049  - SPDIF1TX1MIX Input 1 Volume */
611  	{ 0x00000808, 0x0000 },    /* R2056  - SPDIF1TX2MIX Input 1 Source */
612  	{ 0x00000809, 0x0080 },    /* R2057  - SPDIF1TX2MIX Input 1 Volume */
613  	{ 0x00000880, 0x0000 },    /* R2176  - EQ1MIX Input 1 Source */
614  	{ 0x00000881, 0x0080 },    /* R2177  - EQ1MIX Input 1 Volume */
615  	{ 0x00000888, 0x0000 },    /* R2184  - EQ2MIX Input 1 Source */
616  	{ 0x00000889, 0x0080 },    /* R2185  - EQ2MIX Input 1 Volume */
617  	{ 0x00000890, 0x0000 },    /* R2192  - EQ3MIX Input 1 Source */
618  	{ 0x00000891, 0x0080 },    /* R2193  - EQ3MIX Input 1 Volume */
619  	{ 0x00000898, 0x0000 },    /* R2200  - EQ4MIX Input 1 Source */
620  	{ 0x00000899, 0x0080 },    /* R2201  - EQ4MIX Input 1 Volume */
621  	{ 0x000008C0, 0x0000 },    /* R2240  - DRC1LMIX Input 1 Source */
622  	{ 0x000008C1, 0x0080 },    /* R2241  - DRC1LMIX Input 1 Volume */
623  	{ 0x000008C8, 0x0000 },    /* R2248  - DRC1RMIX Input 1 Source */
624  	{ 0x000008C9, 0x0080 },    /* R2249  - DRC1RMIX Input 1 Volume */
625  	{ 0x00000900, 0x0000 },    /* R2304  - HPLP1MIX Input 1 Source */
626  	{ 0x00000901, 0x0080 },    /* R2305  - HPLP1MIX Input 1 Volume */
627  	{ 0x00000902, 0x0000 },    /* R2306  - HPLP1MIX Input 2 Source */
628  	{ 0x00000903, 0x0080 },    /* R2307  - HPLP1MIX Input 2 Volume */
629  	{ 0x00000904, 0x0000 },    /* R2308  - HPLP1MIX Input 3 Source */
630  	{ 0x00000905, 0x0080 },    /* R2309  - HPLP1MIX Input 3 Volume */
631  	{ 0x00000906, 0x0000 },    /* R2310  - HPLP1MIX Input 4 Source */
632  	{ 0x00000907, 0x0080 },    /* R2311  - HPLP1MIX Input 4 Volume */
633  	{ 0x00000908, 0x0000 },    /* R2312  - HPLP2MIX Input 1 Source */
634  	{ 0x00000909, 0x0080 },    /* R2313  - HPLP2MIX Input 1 Volume */
635  	{ 0x0000090A, 0x0000 },    /* R2314  - HPLP2MIX Input 2 Source */
636  	{ 0x0000090B, 0x0080 },    /* R2315  - HPLP2MIX Input 2 Volume */
637  	{ 0x0000090C, 0x0000 },    /* R2316  - HPLP2MIX Input 3 Source */
638  	{ 0x0000090D, 0x0080 },    /* R2317  - HPLP2MIX Input 3 Volume */
639  	{ 0x0000090E, 0x0000 },    /* R2318  - HPLP2MIX Input 4 Source */
640  	{ 0x0000090F, 0x0080 },    /* R2319  - HPLP2MIX Input 4 Volume */
641  	{ 0x00000910, 0x0000 },    /* R2320  - HPLP3MIX Input 1 Source */
642  	{ 0x00000911, 0x0080 },    /* R2321  - HPLP3MIX Input 1 Volume */
643  	{ 0x00000912, 0x0000 },    /* R2322  - HPLP3MIX Input 2 Source */
644  	{ 0x00000913, 0x0080 },    /* R2323  - HPLP3MIX Input 2 Volume */
645  	{ 0x00000914, 0x0000 },    /* R2324  - HPLP3MIX Input 3 Source */
646  	{ 0x00000915, 0x0080 },    /* R2325  - HPLP3MIX Input 3 Volume */
647  	{ 0x00000916, 0x0000 },    /* R2326  - HPLP3MIX Input 4 Source */
648  	{ 0x00000917, 0x0080 },    /* R2327  - HPLP3MIX Input 4 Volume */
649  	{ 0x00000918, 0x0000 },    /* R2328  - HPLP4MIX Input 1 Source */
650  	{ 0x00000919, 0x0080 },    /* R2329  - HPLP4MIX Input 1 Volume */
651  	{ 0x0000091A, 0x0000 },    /* R2330  - HPLP4MIX Input 2 Source */
652  	{ 0x0000091B, 0x0080 },    /* R2331  - HPLP4MIX Input 2 Volume */
653  	{ 0x0000091C, 0x0000 },    /* R2332  - HPLP4MIX Input 3 Source */
654  	{ 0x0000091D, 0x0080 },    /* R2333  - HPLP4MIX Input 3 Volume */
655  	{ 0x0000091E, 0x0000 },    /* R2334  - HPLP4MIX Input 4 Source */
656  	{ 0x0000091F, 0x0080 },    /* R2335  - HPLP4MIX Input 4 Volume */
657  	{ 0x00000A80, 0x0000 },    /* R2688  - ASRC1LMIX Input 1 Source */
658  	{ 0x00000A88, 0x0000 },    /* R2696  - ASRC1RMIX Input 1 Source */
659  	{ 0x00000A90, 0x0000 },    /* R2704  - ASRC2LMIX Input 1 Source */
660  	{ 0x00000A98, 0x0000 },    /* R2712  - ASRC2RMIX Input 1 Source */
661  	{ 0x00000B00, 0x0000 },    /* R2816  - ISRC1DEC1MIX Input 1 Source */
662  	{ 0x00000B08, 0x0000 },    /* R2824  - ISRC1DEC2MIX Input 1 Source */
663  	{ 0x00000B10, 0x0000 },    /* R2832  - ISRC1DEC3MIX Input 1 Source */
664  	{ 0x00000B18, 0x0000 },    /* R2840  - ISRC1DEC4MIX Input 1 Source */
665  	{ 0x00000B20, 0x0000 },    /* R2848  - ISRC1INT1MIX Input 1 Source */
666  	{ 0x00000B28, 0x0000 },    /* R2856  - ISRC1INT2MIX Input 1 Source */
667  	{ 0x00000B30, 0x0000 },    /* R2864  - ISRC1INT3MIX Input 1 Source */
668  	{ 0x00000B38, 0x0000 },    /* R2872  - ISRC1INT4MIX Input 1 Source */
669  	{ 0x00000B40, 0x0000 },    /* R2880  - ISRC2DEC1MIX Input 1 Source */
670  	{ 0x00000B48, 0x0000 },    /* R2888  - ISRC2DEC2MIX Input 1 Source */
671  	{ 0x00000B60, 0x0000 },    /* R2912  - ISRC2INT1MIX Input 1 Source */
672  	{ 0x00000B68, 0x0000 },    /* R2920  - ISRC2INT2MIX Input 1 Source */
673  	{ 0x00000C00, 0xA101 },    /* R3072  - GPIO1 CTRL */
674  	{ 0x00000C01, 0xA101 },    /* R3073  - GPIO2 CTRL */
675  	{ 0x00000C02, 0xA101 },    /* R3074  - GPIO3 CTRL */
676  	{ 0x00000C03, 0xA101 },    /* R3075  - GPIO4 CTRL */
677  	{ 0x00000C04, 0xA101 },    /* R3076  - GPIO5 CTRL */
678  	{ 0x00000C0F, 0x0400 },    /* R3087  - IRQ CTRL 1 */
679  	{ 0x00000C10, 0x1000 },    /* R3088  - GPIO Debounce Config */
680  	{ 0x00000C18, 0x0000 },    /* R3096  - GP Switch 1 */
681  	{ 0x00000C20, 0x8002 },    /* R3104  - Misc Pad Ctrl 1 */
682  	{ 0x00000C21, 0x0001 },    /* R3105  - Misc Pad Ctrl 2 */
683  	{ 0x00000C22, 0x0000 },    /* R3106  - Misc Pad Ctrl 3 */
684  	{ 0x00000C23, 0x0000 },    /* R3107  - Misc Pad Ctrl 4 */
685  	{ 0x00000C24, 0x0000 },    /* R3108  - Misc Pad Ctrl 5 */
686  	{ 0x00000C25, 0x0000 },    /* R3109  - Misc Pad Ctrl 6 */
687  	{ 0x00000D08, 0xFFFF },    /* R3336  - Interrupt Status 1 Mask */
688  	{ 0x00000D09, 0xFFFF },    /* R3337  - Interrupt Status 2 Mask */
689  	{ 0x00000D0A, 0xFFFF },    /* R3338  - Interrupt Status 3 Mask */
690  	{ 0x00000D0B, 0xFFFF },    /* R3339  - Interrupt Status 4 Mask */
691  	{ 0x00000D0C, 0xFEFF },    /* R3340  - Interrupt Status 5 Mask */
692  	{ 0x00000D0F, 0x0000 },    /* R3343  - Interrupt Control */
693  	{ 0x00000D18, 0xFFFF },    /* R3352  - IRQ2 Status 1 Mask */
694  	{ 0x00000D19, 0xFFFF },    /* R3353  - IRQ2 Status 2 Mask */
695  	{ 0x00000D1A, 0xFFFF },    /* R3354  - IRQ2 Status 3 Mask */
696  	{ 0x00000D1B, 0xFFFF },    /* R3355  - IRQ2 Status 4 Mask */
697  	{ 0x00000D1C, 0xFEFF },    /* R3356  - IRQ2 Status 5 Mask */
698  	{ 0x00000D1F, 0x0000 },    /* R3359  - IRQ2 Control */
699  	{ 0x00000D53, 0xFFFF },    /* R3411  - AOD IRQ Mask IRQ1 */
700  	{ 0x00000D54, 0xFFFF },    /* R3412  - AOD IRQ Mask IRQ2 */
701  	{ 0x00000D56, 0x0000 },    /* R3414  - Jack detect debounce */
702  	{ 0x00000E00, 0x0000 },    /* R3584  - FX_Ctrl1 */
703  	{ 0x00000E10, 0x6318 },    /* R3600  - EQ1_1 */
704  	{ 0x00000E11, 0x6300 },    /* R3601  - EQ1_2 */
705  	{ 0x00000E12, 0x0FC8 },    /* R3602  - EQ1_3 */
706  	{ 0x00000E13, 0x03FE },    /* R3603  - EQ1_4 */
707  	{ 0x00000E14, 0x00E0 },    /* R3604  - EQ1_5 */
708  	{ 0x00000E15, 0x1EC4 },    /* R3605  - EQ1_6 */
709  	{ 0x00000E16, 0xF136 },    /* R3606  - EQ1_7 */
710  	{ 0x00000E17, 0x0409 },    /* R3607  - EQ1_8 */
711  	{ 0x00000E18, 0x04CC },    /* R3608  - EQ1_9 */
712  	{ 0x00000E19, 0x1C9B },    /* R3609  - EQ1_10 */
713  	{ 0x00000E1A, 0xF337 },    /* R3610  - EQ1_11 */
714  	{ 0x00000E1B, 0x040B },    /* R3611  - EQ1_12 */
715  	{ 0x00000E1C, 0x0CBB },    /* R3612  - EQ1_13 */
716  	{ 0x00000E1D, 0x16F8 },    /* R3613  - EQ1_14 */
717  	{ 0x00000E1E, 0xF7D9 },    /* R3614  - EQ1_15 */
718  	{ 0x00000E1F, 0x040A },    /* R3615  - EQ1_16 */
719  	{ 0x00000E20, 0x1F14 },    /* R3616  - EQ1_17 */
720  	{ 0x00000E21, 0x058C },    /* R3617  - EQ1_18 */
721  	{ 0x00000E22, 0x0563 },    /* R3618  - EQ1_19 */
722  	{ 0x00000E23, 0x4000 },    /* R3619  - EQ1_20 */
723  	{ 0x00000E24, 0x0B75 },    /* R3620  - EQ1_21 */
724  	{ 0x00000E26, 0x6318 },    /* R3622  - EQ2_1 */
725  	{ 0x00000E27, 0x6300 },    /* R3623  - EQ2_2 */
726  	{ 0x00000E28, 0x0FC8 },    /* R3624  - EQ2_3 */
727  	{ 0x00000E29, 0x03FE },    /* R3625  - EQ2_4 */
728  	{ 0x00000E2A, 0x00E0 },    /* R3626  - EQ2_5 */
729  	{ 0x00000E2B, 0x1EC4 },    /* R3627  - EQ2_6 */
730  	{ 0x00000E2C, 0xF136 },    /* R3628  - EQ2_7 */
731  	{ 0x00000E2D, 0x0409 },    /* R3629  - EQ2_8 */
732  	{ 0x00000E2E, 0x04CC },    /* R3630  - EQ2_9 */
733  	{ 0x00000E2F, 0x1C9B },    /* R3631  - EQ2_10 */
734  	{ 0x00000E30, 0xF337 },    /* R3632  - EQ2_11 */
735  	{ 0x00000E31, 0x040B },    /* R3633  - EQ2_12 */
736  	{ 0x00000E32, 0x0CBB },    /* R3634  - EQ2_13 */
737  	{ 0x00000E33, 0x16F8 },    /* R3635  - EQ2_14 */
738  	{ 0x00000E34, 0xF7D9 },    /* R3636  - EQ2_15 */
739  	{ 0x00000E35, 0x040A },    /* R3637  - EQ2_16 */
740  	{ 0x00000E36, 0x1F14 },    /* R3638  - EQ2_17 */
741  	{ 0x00000E37, 0x058C },    /* R3639  - EQ2_18 */
742  	{ 0x00000E38, 0x0563 },    /* R3640  - EQ2_19 */
743  	{ 0x00000E39, 0x4000 },    /* R3641  - EQ2_20 */
744  	{ 0x00000E3A, 0x0B75 },    /* R3642  - EQ2_21 */
745  	{ 0x00000E3C, 0x6318 },    /* R3644  - EQ3_1 */
746  	{ 0x00000E3D, 0x6300 },    /* R3645  - EQ3_2 */
747  	{ 0x00000E3E, 0x0FC8 },    /* R3646  - EQ3_3 */
748  	{ 0x00000E3F, 0x03FE },    /* R3647  - EQ3_4 */
749  	{ 0x00000E40, 0x00E0 },    /* R3648  - EQ3_5 */
750  	{ 0x00000E41, 0x1EC4 },    /* R3649  - EQ3_6 */
751  	{ 0x00000E42, 0xF136 },    /* R3650  - EQ3_7 */
752  	{ 0x00000E43, 0x0409 },    /* R3651  - EQ3_8 */
753  	{ 0x00000E44, 0x04CC },    /* R3652  - EQ3_9 */
754  	{ 0x00000E45, 0x1C9B },    /* R3653  - EQ3_10 */
755  	{ 0x00000E46, 0xF337 },    /* R3654  - EQ3_11 */
756  	{ 0x00000E47, 0x040B },    /* R3655  - EQ3_12 */
757  	{ 0x00000E48, 0x0CBB },    /* R3656  - EQ3_13 */
758  	{ 0x00000E49, 0x16F8 },    /* R3657  - EQ3_14 */
759  	{ 0x00000E4A, 0xF7D9 },    /* R3658  - EQ3_15 */
760  	{ 0x00000E4B, 0x040A },    /* R3659  - EQ3_16 */
761  	{ 0x00000E4C, 0x1F14 },    /* R3660  - EQ3_17 */
762  	{ 0x00000E4D, 0x058C },    /* R3661  - EQ3_18 */
763  	{ 0x00000E4E, 0x0563 },    /* R3662  - EQ3_19 */
764  	{ 0x00000E4F, 0x4000 },    /* R3663  - EQ3_20 */
765  	{ 0x00000E50, 0x0B75 },    /* R3664  - EQ3_21 */
766  	{ 0x00000E52, 0x6318 },    /* R3666  - EQ4_1 */
767  	{ 0x00000E53, 0x6300 },    /* R3667  - EQ4_2 */
768  	{ 0x00000E54, 0x0FC8 },    /* R3668  - EQ4_3 */
769  	{ 0x00000E55, 0x03FE },    /* R3669  - EQ4_4 */
770  	{ 0x00000E56, 0x00E0 },    /* R3670  - EQ4_5 */
771  	{ 0x00000E57, 0x1EC4 },    /* R3671  - EQ4_6 */
772  	{ 0x00000E58, 0xF136 },    /* R3672  - EQ4_7 */
773  	{ 0x00000E59, 0x0409 },    /* R3673  - EQ4_8 */
774  	{ 0x00000E5A, 0x04CC },    /* R3674  - EQ4_9 */
775  	{ 0x00000E5B, 0x1C9B },    /* R3675  - EQ4_10 */
776  	{ 0x00000E5C, 0xF337 },    /* R3676  - EQ4_11 */
777  	{ 0x00000E5D, 0x040B },    /* R3677  - EQ4_12 */
778  	{ 0x00000E5E, 0x0CBB },    /* R3678  - EQ4_13 */
779  	{ 0x00000E5F, 0x16F8 },    /* R3679  - EQ4_14 */
780  	{ 0x00000E60, 0xF7D9 },    /* R3680  - EQ4_15 */
781  	{ 0x00000E61, 0x040A },    /* R3681  - EQ4_16 */
782  	{ 0x00000E62, 0x1F14 },    /* R3682  - EQ4_17 */
783  	{ 0x00000E63, 0x058C },    /* R3683  - EQ4_18 */
784  	{ 0x00000E64, 0x0563 },    /* R3684  - EQ4_19 */
785  	{ 0x00000E65, 0x4000 },    /* R3685  - EQ4_20 */
786  	{ 0x00000E66, 0x0B75 },    /* R3686  - EQ4_21 */
787  	{ 0x00000E80, 0x0018 },    /* R3712  - DRC1 ctrl1 */
788  	{ 0x00000E81, 0x0933 },    /* R3713  - DRC1 ctrl2 */
789  	{ 0x00000E82, 0x0018 },    /* R3714  - DRC1 ctrl3 */
790  	{ 0x00000E83, 0x0000 },    /* R3715  - DRC1 ctrl4 */
791  	{ 0x00000E84, 0x0000 },    /* R3716  - DRC1 ctrl5 */
792  	{ 0x00000EC0, 0x0000 },    /* R3776  - HPLPF1_1 */
793  	{ 0x00000EC1, 0x0000 },    /* R3777  - HPLPF1_2 */
794  	{ 0x00000EC4, 0x0000 },    /* R3780  - HPLPF2_1 */
795  	{ 0x00000EC5, 0x0000 },    /* R3781  - HPLPF2_2 */
796  	{ 0x00000EC8, 0x0000 },    /* R3784  - HPLPF3_1 */
797  	{ 0x00000EC9, 0x0000 },    /* R3785  - HPLPF3_2 */
798  	{ 0x00000ECC, 0x0000 },    /* R3788  - HPLPF4_1 */
799  	{ 0x00000ECD, 0x0000 },    /* R3789  - HPLPF4_2 */
800  	{ 0x00000EE0, 0x0000 },    /* R3808  - ASRC_ENABLE */
801  	{ 0x00000EE2, 0x0000 },    /* R3810  - ASRC_RATE1 */
802  	{ 0x00000EE3, 0x4000 },    /* R3811  - ASRC_RATE2 */
803  	{ 0x00000EF0, 0x0000 },    /* R3824  - ISRC 1 CTRL 1 */
804  	{ 0x00000EF1, 0x0001 },    /* R3825  - ISRC 1 CTRL 2 */
805  	{ 0x00000EF2, 0x0000 },    /* R3826  - ISRC 1 CTRL 3 */
806  	{ 0x00000EF3, 0x0000 },    /* R3827  - ISRC 2 CTRL 1 */
807  	{ 0x00000EF4, 0x0001 },    /* R3828  - ISRC 2 CTRL 2 */
808  	{ 0x00000EF5, 0x0000 },    /* R3829  - ISRC 2 CTRL 3 */
809  };
810  
wm8998_readable_register(struct device * dev,unsigned int reg)811  static bool wm8998_readable_register(struct device *dev, unsigned int reg)
812  {
813  	switch (reg) {
814  	case ARIZONA_SOFTWARE_RESET:
815  	case ARIZONA_DEVICE_REVISION:
816  	case ARIZONA_CTRL_IF_I2C1_CFG_1:
817  	case ARIZONA_CTRL_IF_I2C1_CFG_2:
818  	case ARIZONA_WRITE_SEQUENCER_CTRL_0:
819  	case ARIZONA_WRITE_SEQUENCER_CTRL_1:
820  	case ARIZONA_WRITE_SEQUENCER_CTRL_2:
821  	case ARIZONA_TONE_GENERATOR_1:
822  	case ARIZONA_TONE_GENERATOR_2:
823  	case ARIZONA_TONE_GENERATOR_3:
824  	case ARIZONA_TONE_GENERATOR_4:
825  	case ARIZONA_TONE_GENERATOR_5:
826  	case ARIZONA_PWM_DRIVE_1:
827  	case ARIZONA_PWM_DRIVE_2:
828  	case ARIZONA_PWM_DRIVE_3:
829  	case ARIZONA_WAKE_CONTROL:
830  	case ARIZONA_SEQUENCE_CONTROL:
831  	case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_1:
832  	case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_2:
833  	case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_3:
834  	case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_4:
835  	case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_1:
836  	case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_2:
837  	case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_3:
838  	case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_4:
839  	case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_5:
840  	case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_6:
841  	case ARIZONA_HAPTICS_CONTROL_1:
842  	case ARIZONA_HAPTICS_CONTROL_2:
843  	case ARIZONA_HAPTICS_PHASE_1_INTENSITY:
844  	case ARIZONA_HAPTICS_PHASE_1_DURATION:
845  	case ARIZONA_HAPTICS_PHASE_2_INTENSITY:
846  	case ARIZONA_HAPTICS_PHASE_2_DURATION:
847  	case ARIZONA_HAPTICS_PHASE_3_INTENSITY:
848  	case ARIZONA_HAPTICS_PHASE_3_DURATION:
849  	case ARIZONA_HAPTICS_STATUS:
850  	case ARIZONA_CLOCK_32K_1:
851  	case ARIZONA_SYSTEM_CLOCK_1:
852  	case ARIZONA_SAMPLE_RATE_1:
853  	case ARIZONA_SAMPLE_RATE_2:
854  	case ARIZONA_SAMPLE_RATE_3:
855  	case ARIZONA_SAMPLE_RATE_1_STATUS:
856  	case ARIZONA_SAMPLE_RATE_2_STATUS:
857  	case ARIZONA_SAMPLE_RATE_3_STATUS:
858  	case ARIZONA_ASYNC_CLOCK_1:
859  	case ARIZONA_ASYNC_SAMPLE_RATE_1:
860  	case ARIZONA_ASYNC_SAMPLE_RATE_1_STATUS:
861  	case ARIZONA_ASYNC_SAMPLE_RATE_2:
862  	case ARIZONA_ASYNC_SAMPLE_RATE_2_STATUS:
863  	case ARIZONA_OUTPUT_SYSTEM_CLOCK:
864  	case ARIZONA_OUTPUT_ASYNC_CLOCK:
865  	case ARIZONA_RATE_ESTIMATOR_1:
866  	case ARIZONA_RATE_ESTIMATOR_2:
867  	case ARIZONA_RATE_ESTIMATOR_3:
868  	case ARIZONA_RATE_ESTIMATOR_4:
869  	case ARIZONA_RATE_ESTIMATOR_5:
870  	case ARIZONA_DYNAMIC_FREQUENCY_SCALING_1:
871  	case ARIZONA_FLL1_CONTROL_1:
872  	case ARIZONA_FLL1_CONTROL_2:
873  	case ARIZONA_FLL1_CONTROL_3:
874  	case ARIZONA_FLL1_CONTROL_4:
875  	case ARIZONA_FLL1_CONTROL_5:
876  	case ARIZONA_FLL1_CONTROL_6:
877  	case ARIZONA_FLL1_CONTROL_7:
878  	case ARIZONA_FLL1_SYNCHRONISER_1:
879  	case ARIZONA_FLL1_SYNCHRONISER_2:
880  	case ARIZONA_FLL1_SYNCHRONISER_3:
881  	case ARIZONA_FLL1_SYNCHRONISER_4:
882  	case ARIZONA_FLL1_SYNCHRONISER_5:
883  	case ARIZONA_FLL1_SYNCHRONISER_6:
884  	case ARIZONA_FLL1_SYNCHRONISER_7:
885  	case ARIZONA_FLL1_SPREAD_SPECTRUM:
886  	case ARIZONA_FLL1_GPIO_CLOCK:
887  	case ARIZONA_FLL2_CONTROL_1:
888  	case ARIZONA_FLL2_CONTROL_2:
889  	case ARIZONA_FLL2_CONTROL_3:
890  	case ARIZONA_FLL2_CONTROL_4:
891  	case ARIZONA_FLL2_CONTROL_5:
892  	case ARIZONA_FLL2_CONTROL_6:
893  	case ARIZONA_FLL2_CONTROL_7:
894  	case ARIZONA_FLL2_SYNCHRONISER_1:
895  	case ARIZONA_FLL2_SYNCHRONISER_2:
896  	case ARIZONA_FLL2_SYNCHRONISER_3:
897  	case ARIZONA_FLL2_SYNCHRONISER_4:
898  	case ARIZONA_FLL2_SYNCHRONISER_5:
899  	case ARIZONA_FLL2_SYNCHRONISER_6:
900  	case ARIZONA_FLL2_SYNCHRONISER_7:
901  	case ARIZONA_FLL2_SPREAD_SPECTRUM:
902  	case ARIZONA_FLL2_GPIO_CLOCK:
903  	case ARIZONA_MIC_CHARGE_PUMP_1:
904  	case ARIZONA_LDO1_CONTROL_1:
905  	case ARIZONA_LDO1_CONTROL_2:
906  	case ARIZONA_LDO2_CONTROL_1:
907  	case ARIZONA_MIC_BIAS_CTRL_1:
908  	case ARIZONA_MIC_BIAS_CTRL_2:
909  	case ARIZONA_MIC_BIAS_CTRL_3:
910  	case ARIZONA_ACCESSORY_DETECT_MODE_1:
911  	case ARIZONA_HEADPHONE_DETECT_1:
912  	case ARIZONA_HEADPHONE_DETECT_2:
913  	case ARIZONA_MICD_CLAMP_CONTROL:
914  	case ARIZONA_MIC_DETECT_1:
915  	case ARIZONA_MIC_DETECT_2:
916  	case ARIZONA_MIC_DETECT_3:
917  	case ARIZONA_MIC_DETECT_4:
918  	case ARIZONA_MIC_DETECT_LEVEL_1:
919  	case ARIZONA_MIC_DETECT_LEVEL_2:
920  	case ARIZONA_MIC_DETECT_LEVEL_3:
921  	case ARIZONA_MIC_DETECT_LEVEL_4:
922  	case ARIZONA_ISOLATION_CONTROL:
923  	case ARIZONA_JACK_DETECT_ANALOGUE:
924  	case ARIZONA_INPUT_ENABLES:
925  	case ARIZONA_INPUT_ENABLES_STATUS:
926  	case ARIZONA_INPUT_RATE:
927  	case ARIZONA_INPUT_VOLUME_RAMP:
928  	case ARIZONA_HPF_CONTROL:
929  	case ARIZONA_IN1L_CONTROL:
930  	case ARIZONA_ADC_DIGITAL_VOLUME_1L:
931  	case ARIZONA_DMIC1L_CONTROL:
932  	case ARIZONA_IN1R_CONTROL:
933  	case ARIZONA_ADC_DIGITAL_VOLUME_1R:
934  	case ARIZONA_DMIC1R_CONTROL:
935  	case ARIZONA_IN2L_CONTROL:
936  	case ARIZONA_ADC_DIGITAL_VOLUME_2L:
937  	case ARIZONA_DMIC2L_CONTROL:
938  	case ARIZONA_OUTPUT_ENABLES_1:
939  	case ARIZONA_OUTPUT_STATUS_1:
940  	case ARIZONA_RAW_OUTPUT_STATUS_1:
941  	case ARIZONA_OUTPUT_RATE_1:
942  	case ARIZONA_OUTPUT_VOLUME_RAMP:
943  	case ARIZONA_OUTPUT_PATH_CONFIG_1L:
944  	case ARIZONA_DAC_DIGITAL_VOLUME_1L:
945  	case ARIZONA_NOISE_GATE_SELECT_1L:
946  	case ARIZONA_OUTPUT_PATH_CONFIG_1R:
947  	case ARIZONA_DAC_DIGITAL_VOLUME_1R:
948  	case ARIZONA_NOISE_GATE_SELECT_1R:
949  	case ARIZONA_OUTPUT_PATH_CONFIG_2L:
950  	case ARIZONA_DAC_DIGITAL_VOLUME_2L:
951  	case ARIZONA_NOISE_GATE_SELECT_2L:
952  	case ARIZONA_OUTPUT_PATH_CONFIG_2R:
953  	case ARIZONA_DAC_DIGITAL_VOLUME_2R:
954  	case ARIZONA_NOISE_GATE_SELECT_2R:
955  	case ARIZONA_OUTPUT_PATH_CONFIG_3L:
956  	case ARIZONA_DAC_DIGITAL_VOLUME_3L:
957  	case ARIZONA_NOISE_GATE_SELECT_3L:
958  	case ARIZONA_OUTPUT_PATH_CONFIG_4L:
959  	case ARIZONA_DAC_DIGITAL_VOLUME_4L:
960  	case ARIZONA_NOISE_GATE_SELECT_4L:
961  	case ARIZONA_OUTPUT_PATH_CONFIG_4R:
962  	case ARIZONA_DAC_DIGITAL_VOLUME_4R:
963  	case ARIZONA_NOISE_GATE_SELECT_4R:
964  	case ARIZONA_OUTPUT_PATH_CONFIG_5L:
965  	case ARIZONA_DAC_DIGITAL_VOLUME_5L:
966  	case ARIZONA_NOISE_GATE_SELECT_5L:
967  	case ARIZONA_OUTPUT_PATH_CONFIG_5R:
968  	case ARIZONA_DAC_DIGITAL_VOLUME_5R:
969  	case ARIZONA_NOISE_GATE_SELECT_5R:
970  	case ARIZONA_DRE_ENABLE:
971  	case ARIZONA_DRE_CONTROL_1:
972  	case ARIZONA_DRE_CONTROL_2:
973  	case ARIZONA_DRE_CONTROL_3:
974  	case ARIZONA_EDRE_ENABLE:
975  	case ARIZONA_DAC_AEC_CONTROL_1:
976  	case ARIZONA_DAC_AEC_CONTROL_2:
977  	case ARIZONA_NOISE_GATE_CONTROL:
978  	case ARIZONA_PDM_SPK1_CTRL_1:
979  	case ARIZONA_PDM_SPK1_CTRL_2:
980  	case ARIZONA_HP_TEST_CTRL_13:
981  	case ARIZONA_AIF1_BCLK_CTRL:
982  	case ARIZONA_AIF1_TX_PIN_CTRL:
983  	case ARIZONA_AIF1_RX_PIN_CTRL:
984  	case ARIZONA_AIF1_RATE_CTRL:
985  	case ARIZONA_AIF1_FORMAT:
986  	case ARIZONA_AIF1_RX_BCLK_RATE:
987  	case ARIZONA_AIF1_FRAME_CTRL_1:
988  	case ARIZONA_AIF1_FRAME_CTRL_2:
989  	case ARIZONA_AIF1_FRAME_CTRL_3:
990  	case ARIZONA_AIF1_FRAME_CTRL_4:
991  	case ARIZONA_AIF1_FRAME_CTRL_5:
992  	case ARIZONA_AIF1_FRAME_CTRL_6:
993  	case ARIZONA_AIF1_FRAME_CTRL_7:
994  	case ARIZONA_AIF1_FRAME_CTRL_8:
995  	case ARIZONA_AIF1_FRAME_CTRL_11:
996  	case ARIZONA_AIF1_FRAME_CTRL_12:
997  	case ARIZONA_AIF1_FRAME_CTRL_13:
998  	case ARIZONA_AIF1_FRAME_CTRL_14:
999  	case ARIZONA_AIF1_FRAME_CTRL_15:
1000  	case ARIZONA_AIF1_FRAME_CTRL_16:
1001  	case ARIZONA_AIF1_TX_ENABLES:
1002  	case ARIZONA_AIF1_RX_ENABLES:
1003  	case ARIZONA_AIF2_BCLK_CTRL:
1004  	case ARIZONA_AIF2_TX_PIN_CTRL:
1005  	case ARIZONA_AIF2_RX_PIN_CTRL:
1006  	case ARIZONA_AIF2_RATE_CTRL:
1007  	case ARIZONA_AIF2_FORMAT:
1008  	case ARIZONA_AIF2_RX_BCLK_RATE:
1009  	case ARIZONA_AIF2_FRAME_CTRL_1:
1010  	case ARIZONA_AIF2_FRAME_CTRL_2:
1011  	case ARIZONA_AIF2_FRAME_CTRL_3:
1012  	case ARIZONA_AIF2_FRAME_CTRL_4:
1013  	case ARIZONA_AIF2_FRAME_CTRL_5:
1014  	case ARIZONA_AIF2_FRAME_CTRL_6:
1015  	case ARIZONA_AIF2_FRAME_CTRL_7:
1016  	case ARIZONA_AIF2_FRAME_CTRL_8:
1017  	case ARIZONA_AIF2_FRAME_CTRL_11:
1018  	case ARIZONA_AIF2_FRAME_CTRL_12:
1019  	case ARIZONA_AIF2_FRAME_CTRL_13:
1020  	case ARIZONA_AIF2_FRAME_CTRL_14:
1021  	case ARIZONA_AIF2_FRAME_CTRL_15:
1022  	case ARIZONA_AIF2_FRAME_CTRL_16:
1023  	case ARIZONA_AIF2_TX_ENABLES:
1024  	case ARIZONA_AIF2_RX_ENABLES:
1025  	case ARIZONA_AIF3_BCLK_CTRL:
1026  	case ARIZONA_AIF3_TX_PIN_CTRL:
1027  	case ARIZONA_AIF3_RX_PIN_CTRL:
1028  	case ARIZONA_AIF3_RATE_CTRL:
1029  	case ARIZONA_AIF3_FORMAT:
1030  	case ARIZONA_AIF3_RX_BCLK_RATE:
1031  	case ARIZONA_AIF3_FRAME_CTRL_1:
1032  	case ARIZONA_AIF3_FRAME_CTRL_2:
1033  	case ARIZONA_AIF3_FRAME_CTRL_3:
1034  	case ARIZONA_AIF3_FRAME_CTRL_4:
1035  	case ARIZONA_AIF3_FRAME_CTRL_11:
1036  	case ARIZONA_AIF3_FRAME_CTRL_12:
1037  	case ARIZONA_AIF3_TX_ENABLES:
1038  	case ARIZONA_AIF3_RX_ENABLES:
1039  	case ARIZONA_SPD1_TX_CONTROL:
1040  	case ARIZONA_SPD1_TX_CHANNEL_STATUS_1:
1041  	case ARIZONA_SPD1_TX_CHANNEL_STATUS_2:
1042  	case ARIZONA_SPD1_TX_CHANNEL_STATUS_3:
1043  	case ARIZONA_SLIMBUS_FRAMER_REF_GEAR:
1044  	case ARIZONA_SLIMBUS_RATES_1:
1045  	case ARIZONA_SLIMBUS_RATES_2:
1046  	case ARIZONA_SLIMBUS_RATES_5:
1047  	case ARIZONA_SLIMBUS_RATES_6:
1048  	case ARIZONA_SLIMBUS_RATES_7:
1049  	case ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE:
1050  	case ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE:
1051  	case ARIZONA_SLIMBUS_RX_PORT_STATUS:
1052  	case ARIZONA_SLIMBUS_TX_PORT_STATUS:
1053  	case ARIZONA_PWM1MIX_INPUT_1_SOURCE:
1054  	case ARIZONA_PWM1MIX_INPUT_1_VOLUME:
1055  	case ARIZONA_PWM1MIX_INPUT_2_SOURCE:
1056  	case ARIZONA_PWM1MIX_INPUT_2_VOLUME:
1057  	case ARIZONA_PWM1MIX_INPUT_3_SOURCE:
1058  	case ARIZONA_PWM1MIX_INPUT_3_VOLUME:
1059  	case ARIZONA_PWM1MIX_INPUT_4_SOURCE:
1060  	case ARIZONA_PWM1MIX_INPUT_4_VOLUME:
1061  	case ARIZONA_PWM2MIX_INPUT_1_SOURCE:
1062  	case ARIZONA_PWM2MIX_INPUT_1_VOLUME:
1063  	case ARIZONA_PWM2MIX_INPUT_2_SOURCE:
1064  	case ARIZONA_PWM2MIX_INPUT_2_VOLUME:
1065  	case ARIZONA_PWM2MIX_INPUT_3_SOURCE:
1066  	case ARIZONA_PWM2MIX_INPUT_3_VOLUME:
1067  	case ARIZONA_PWM2MIX_INPUT_4_SOURCE:
1068  	case ARIZONA_PWM2MIX_INPUT_4_VOLUME:
1069  	case ARIZONA_OUT1LMIX_INPUT_1_SOURCE:
1070  	case ARIZONA_OUT1LMIX_INPUT_1_VOLUME:
1071  	case ARIZONA_OUT1LMIX_INPUT_2_SOURCE:
1072  	case ARIZONA_OUT1LMIX_INPUT_2_VOLUME:
1073  	case ARIZONA_OUT1LMIX_INPUT_3_SOURCE:
1074  	case ARIZONA_OUT1LMIX_INPUT_3_VOLUME:
1075  	case ARIZONA_OUT1LMIX_INPUT_4_SOURCE:
1076  	case ARIZONA_OUT1LMIX_INPUT_4_VOLUME:
1077  	case ARIZONA_OUT1RMIX_INPUT_1_SOURCE:
1078  	case ARIZONA_OUT1RMIX_INPUT_1_VOLUME:
1079  	case ARIZONA_OUT1RMIX_INPUT_2_SOURCE:
1080  	case ARIZONA_OUT1RMIX_INPUT_2_VOLUME:
1081  	case ARIZONA_OUT1RMIX_INPUT_3_SOURCE:
1082  	case ARIZONA_OUT1RMIX_INPUT_3_VOLUME:
1083  	case ARIZONA_OUT1RMIX_INPUT_4_SOURCE:
1084  	case ARIZONA_OUT1RMIX_INPUT_4_VOLUME:
1085  	case ARIZONA_OUT2LMIX_INPUT_1_SOURCE:
1086  	case ARIZONA_OUT2LMIX_INPUT_1_VOLUME:
1087  	case ARIZONA_OUT2LMIX_INPUT_2_SOURCE:
1088  	case ARIZONA_OUT2LMIX_INPUT_2_VOLUME:
1089  	case ARIZONA_OUT2LMIX_INPUT_3_SOURCE:
1090  	case ARIZONA_OUT2LMIX_INPUT_3_VOLUME:
1091  	case ARIZONA_OUT2LMIX_INPUT_4_SOURCE:
1092  	case ARIZONA_OUT2LMIX_INPUT_4_VOLUME:
1093  	case ARIZONA_OUT2RMIX_INPUT_1_SOURCE:
1094  	case ARIZONA_OUT2RMIX_INPUT_1_VOLUME:
1095  	case ARIZONA_OUT2RMIX_INPUT_2_SOURCE:
1096  	case ARIZONA_OUT2RMIX_INPUT_2_VOLUME:
1097  	case ARIZONA_OUT2RMIX_INPUT_3_SOURCE:
1098  	case ARIZONA_OUT2RMIX_INPUT_3_VOLUME:
1099  	case ARIZONA_OUT2RMIX_INPUT_4_SOURCE:
1100  	case ARIZONA_OUT2RMIX_INPUT_4_VOLUME:
1101  	case ARIZONA_OUT3LMIX_INPUT_1_SOURCE:
1102  	case ARIZONA_OUT3LMIX_INPUT_1_VOLUME:
1103  	case ARIZONA_OUT3LMIX_INPUT_2_SOURCE:
1104  	case ARIZONA_OUT3LMIX_INPUT_2_VOLUME:
1105  	case ARIZONA_OUT3LMIX_INPUT_3_SOURCE:
1106  	case ARIZONA_OUT3LMIX_INPUT_3_VOLUME:
1107  	case ARIZONA_OUT3LMIX_INPUT_4_SOURCE:
1108  	case ARIZONA_OUT3LMIX_INPUT_4_VOLUME:
1109  	case ARIZONA_OUT4LMIX_INPUT_1_SOURCE:
1110  	case ARIZONA_OUT4LMIX_INPUT_1_VOLUME:
1111  	case ARIZONA_OUT4LMIX_INPUT_2_SOURCE:
1112  	case ARIZONA_OUT4LMIX_INPUT_2_VOLUME:
1113  	case ARIZONA_OUT4LMIX_INPUT_3_SOURCE:
1114  	case ARIZONA_OUT4LMIX_INPUT_3_VOLUME:
1115  	case ARIZONA_OUT4LMIX_INPUT_4_SOURCE:
1116  	case ARIZONA_OUT4LMIX_INPUT_4_VOLUME:
1117  	case ARIZONA_OUT4RMIX_INPUT_1_SOURCE:
1118  	case ARIZONA_OUT4RMIX_INPUT_1_VOLUME:
1119  	case ARIZONA_OUT4RMIX_INPUT_2_SOURCE:
1120  	case ARIZONA_OUT4RMIX_INPUT_2_VOLUME:
1121  	case ARIZONA_OUT4RMIX_INPUT_3_SOURCE:
1122  	case ARIZONA_OUT4RMIX_INPUT_3_VOLUME:
1123  	case ARIZONA_OUT4RMIX_INPUT_4_SOURCE:
1124  	case ARIZONA_OUT4RMIX_INPUT_4_VOLUME:
1125  	case ARIZONA_OUT5LMIX_INPUT_1_SOURCE:
1126  	case ARIZONA_OUT5LMIX_INPUT_1_VOLUME:
1127  	case ARIZONA_OUT5LMIX_INPUT_2_SOURCE:
1128  	case ARIZONA_OUT5LMIX_INPUT_2_VOLUME:
1129  	case ARIZONA_OUT5LMIX_INPUT_3_SOURCE:
1130  	case ARIZONA_OUT5LMIX_INPUT_3_VOLUME:
1131  	case ARIZONA_OUT5LMIX_INPUT_4_SOURCE:
1132  	case ARIZONA_OUT5LMIX_INPUT_4_VOLUME:
1133  	case ARIZONA_OUT5RMIX_INPUT_1_SOURCE:
1134  	case ARIZONA_OUT5RMIX_INPUT_1_VOLUME:
1135  	case ARIZONA_OUT5RMIX_INPUT_2_SOURCE:
1136  	case ARIZONA_OUT5RMIX_INPUT_2_VOLUME:
1137  	case ARIZONA_OUT5RMIX_INPUT_3_SOURCE:
1138  	case ARIZONA_OUT5RMIX_INPUT_3_VOLUME:
1139  	case ARIZONA_OUT5RMIX_INPUT_4_SOURCE:
1140  	case ARIZONA_OUT5RMIX_INPUT_4_VOLUME:
1141  	case ARIZONA_AIF1TX1MIX_INPUT_1_SOURCE:
1142  	case ARIZONA_AIF1TX1MIX_INPUT_1_VOLUME:
1143  	case ARIZONA_AIF1TX1MIX_INPUT_2_SOURCE:
1144  	case ARIZONA_AIF1TX1MIX_INPUT_2_VOLUME:
1145  	case ARIZONA_AIF1TX1MIX_INPUT_3_SOURCE:
1146  	case ARIZONA_AIF1TX1MIX_INPUT_3_VOLUME:
1147  	case ARIZONA_AIF1TX1MIX_INPUT_4_SOURCE:
1148  	case ARIZONA_AIF1TX1MIX_INPUT_4_VOLUME:
1149  	case ARIZONA_AIF1TX2MIX_INPUT_1_SOURCE:
1150  	case ARIZONA_AIF1TX2MIX_INPUT_1_VOLUME:
1151  	case ARIZONA_AIF1TX2MIX_INPUT_2_SOURCE:
1152  	case ARIZONA_AIF1TX2MIX_INPUT_2_VOLUME:
1153  	case ARIZONA_AIF1TX2MIX_INPUT_3_SOURCE:
1154  	case ARIZONA_AIF1TX2MIX_INPUT_3_VOLUME:
1155  	case ARIZONA_AIF1TX2MIX_INPUT_4_SOURCE:
1156  	case ARIZONA_AIF1TX2MIX_INPUT_4_VOLUME:
1157  	case ARIZONA_AIF1TX3MIX_INPUT_1_SOURCE:
1158  	case ARIZONA_AIF1TX3MIX_INPUT_1_VOLUME:
1159  	case ARIZONA_AIF1TX3MIX_INPUT_2_SOURCE:
1160  	case ARIZONA_AIF1TX3MIX_INPUT_2_VOLUME:
1161  	case ARIZONA_AIF1TX3MIX_INPUT_3_SOURCE:
1162  	case ARIZONA_AIF1TX3MIX_INPUT_3_VOLUME:
1163  	case ARIZONA_AIF1TX3MIX_INPUT_4_SOURCE:
1164  	case ARIZONA_AIF1TX3MIX_INPUT_4_VOLUME:
1165  	case ARIZONA_AIF1TX4MIX_INPUT_1_SOURCE:
1166  	case ARIZONA_AIF1TX4MIX_INPUT_1_VOLUME:
1167  	case ARIZONA_AIF1TX4MIX_INPUT_2_SOURCE:
1168  	case ARIZONA_AIF1TX4MIX_INPUT_2_VOLUME:
1169  	case ARIZONA_AIF1TX4MIX_INPUT_3_SOURCE:
1170  	case ARIZONA_AIF1TX4MIX_INPUT_3_VOLUME:
1171  	case ARIZONA_AIF1TX4MIX_INPUT_4_SOURCE:
1172  	case ARIZONA_AIF1TX4MIX_INPUT_4_VOLUME:
1173  	case ARIZONA_AIF1TX5MIX_INPUT_1_SOURCE:
1174  	case ARIZONA_AIF1TX5MIX_INPUT_1_VOLUME:
1175  	case ARIZONA_AIF1TX5MIX_INPUT_2_SOURCE:
1176  	case ARIZONA_AIF1TX5MIX_INPUT_2_VOLUME:
1177  	case ARIZONA_AIF1TX5MIX_INPUT_3_SOURCE:
1178  	case ARIZONA_AIF1TX5MIX_INPUT_3_VOLUME:
1179  	case ARIZONA_AIF1TX5MIX_INPUT_4_SOURCE:
1180  	case ARIZONA_AIF1TX5MIX_INPUT_4_VOLUME:
1181  	case ARIZONA_AIF1TX6MIX_INPUT_1_SOURCE:
1182  	case ARIZONA_AIF1TX6MIX_INPUT_1_VOLUME:
1183  	case ARIZONA_AIF1TX6MIX_INPUT_2_SOURCE:
1184  	case ARIZONA_AIF1TX6MIX_INPUT_2_VOLUME:
1185  	case ARIZONA_AIF1TX6MIX_INPUT_3_SOURCE:
1186  	case ARIZONA_AIF1TX6MIX_INPUT_3_VOLUME:
1187  	case ARIZONA_AIF1TX6MIX_INPUT_4_SOURCE:
1188  	case ARIZONA_AIF1TX6MIX_INPUT_4_VOLUME:
1189  	case ARIZONA_AIF2TX1MIX_INPUT_1_SOURCE:
1190  	case ARIZONA_AIF2TX1MIX_INPUT_1_VOLUME:
1191  	case ARIZONA_AIF2TX1MIX_INPUT_2_SOURCE:
1192  	case ARIZONA_AIF2TX1MIX_INPUT_2_VOLUME:
1193  	case ARIZONA_AIF2TX1MIX_INPUT_3_SOURCE:
1194  	case ARIZONA_AIF2TX1MIX_INPUT_3_VOLUME:
1195  	case ARIZONA_AIF2TX1MIX_INPUT_4_SOURCE:
1196  	case ARIZONA_AIF2TX1MIX_INPUT_4_VOLUME:
1197  	case ARIZONA_AIF2TX2MIX_INPUT_1_SOURCE:
1198  	case ARIZONA_AIF2TX2MIX_INPUT_1_VOLUME:
1199  	case ARIZONA_AIF2TX2MIX_INPUT_2_SOURCE:
1200  	case ARIZONA_AIF2TX2MIX_INPUT_2_VOLUME:
1201  	case ARIZONA_AIF2TX2MIX_INPUT_3_SOURCE:
1202  	case ARIZONA_AIF2TX2MIX_INPUT_3_VOLUME:
1203  	case ARIZONA_AIF2TX2MIX_INPUT_4_SOURCE:
1204  	case ARIZONA_AIF2TX2MIX_INPUT_4_VOLUME:
1205  	case ARIZONA_AIF2TX3MIX_INPUT_1_SOURCE:
1206  	case ARIZONA_AIF2TX3MIX_INPUT_1_VOLUME:
1207  	case ARIZONA_AIF2TX3MIX_INPUT_2_SOURCE:
1208  	case ARIZONA_AIF2TX3MIX_INPUT_2_VOLUME:
1209  	case ARIZONA_AIF2TX3MIX_INPUT_3_SOURCE:
1210  	case ARIZONA_AIF2TX3MIX_INPUT_3_VOLUME:
1211  	case ARIZONA_AIF2TX3MIX_INPUT_4_SOURCE:
1212  	case ARIZONA_AIF2TX3MIX_INPUT_4_VOLUME:
1213  	case ARIZONA_AIF2TX4MIX_INPUT_1_SOURCE:
1214  	case ARIZONA_AIF2TX4MIX_INPUT_1_VOLUME:
1215  	case ARIZONA_AIF2TX4MIX_INPUT_2_SOURCE:
1216  	case ARIZONA_AIF2TX4MIX_INPUT_2_VOLUME:
1217  	case ARIZONA_AIF2TX4MIX_INPUT_3_SOURCE:
1218  	case ARIZONA_AIF2TX4MIX_INPUT_3_VOLUME:
1219  	case ARIZONA_AIF2TX4MIX_INPUT_4_SOURCE:
1220  	case ARIZONA_AIF2TX4MIX_INPUT_4_VOLUME:
1221  	case ARIZONA_AIF2TX5MIX_INPUT_1_SOURCE:
1222  	case ARIZONA_AIF2TX5MIX_INPUT_1_VOLUME:
1223  	case ARIZONA_AIF2TX5MIX_INPUT_2_SOURCE:
1224  	case ARIZONA_AIF2TX5MIX_INPUT_2_VOLUME:
1225  	case ARIZONA_AIF2TX5MIX_INPUT_3_SOURCE:
1226  	case ARIZONA_AIF2TX5MIX_INPUT_3_VOLUME:
1227  	case ARIZONA_AIF2TX5MIX_INPUT_4_SOURCE:
1228  	case ARIZONA_AIF2TX5MIX_INPUT_4_VOLUME:
1229  	case ARIZONA_AIF2TX6MIX_INPUT_1_SOURCE:
1230  	case ARIZONA_AIF2TX6MIX_INPUT_1_VOLUME:
1231  	case ARIZONA_AIF2TX6MIX_INPUT_2_SOURCE:
1232  	case ARIZONA_AIF2TX6MIX_INPUT_2_VOLUME:
1233  	case ARIZONA_AIF2TX6MIX_INPUT_3_SOURCE:
1234  	case ARIZONA_AIF2TX6MIX_INPUT_3_VOLUME:
1235  	case ARIZONA_AIF2TX6MIX_INPUT_4_SOURCE:
1236  	case ARIZONA_AIF2TX6MIX_INPUT_4_VOLUME:
1237  	case ARIZONA_AIF3TX1MIX_INPUT_1_SOURCE:
1238  	case ARIZONA_AIF3TX1MIX_INPUT_1_VOLUME:
1239  	case ARIZONA_AIF3TX1MIX_INPUT_2_SOURCE:
1240  	case ARIZONA_AIF3TX1MIX_INPUT_2_VOLUME:
1241  	case ARIZONA_AIF3TX1MIX_INPUT_3_SOURCE:
1242  	case ARIZONA_AIF3TX1MIX_INPUT_3_VOLUME:
1243  	case ARIZONA_AIF3TX1MIX_INPUT_4_SOURCE:
1244  	case ARIZONA_AIF3TX1MIX_INPUT_4_VOLUME:
1245  	case ARIZONA_AIF3TX2MIX_INPUT_1_SOURCE:
1246  	case ARIZONA_AIF3TX2MIX_INPUT_1_VOLUME:
1247  	case ARIZONA_AIF3TX2MIX_INPUT_2_SOURCE:
1248  	case ARIZONA_AIF3TX2MIX_INPUT_2_VOLUME:
1249  	case ARIZONA_AIF3TX2MIX_INPUT_3_SOURCE:
1250  	case ARIZONA_AIF3TX2MIX_INPUT_3_VOLUME:
1251  	case ARIZONA_AIF3TX2MIX_INPUT_4_SOURCE:
1252  	case ARIZONA_AIF3TX2MIX_INPUT_4_VOLUME:
1253  	case ARIZONA_SLIMTX1MIX_INPUT_1_SOURCE:
1254  	case ARIZONA_SLIMTX1MIX_INPUT_1_VOLUME:
1255  	case ARIZONA_SLIMTX2MIX_INPUT_1_SOURCE:
1256  	case ARIZONA_SLIMTX2MIX_INPUT_1_VOLUME:
1257  	case ARIZONA_SLIMTX3MIX_INPUT_1_SOURCE:
1258  	case ARIZONA_SLIMTX3MIX_INPUT_1_VOLUME:
1259  	case ARIZONA_SLIMTX4MIX_INPUT_1_SOURCE:
1260  	case ARIZONA_SLIMTX4MIX_INPUT_1_VOLUME:
1261  	case ARIZONA_SLIMTX5MIX_INPUT_1_SOURCE:
1262  	case ARIZONA_SLIMTX5MIX_INPUT_1_VOLUME:
1263  	case ARIZONA_SLIMTX6MIX_INPUT_1_SOURCE:
1264  	case ARIZONA_SLIMTX6MIX_INPUT_1_VOLUME:
1265  	case ARIZONA_SPDIFTX1MIX_INPUT_1_SOURCE:
1266  	case ARIZONA_SPDIFTX1MIX_INPUT_1_VOLUME:
1267  	case ARIZONA_SPDIFTX2MIX_INPUT_1_SOURCE:
1268  	case ARIZONA_SPDIFTX2MIX_INPUT_1_VOLUME:
1269  	case ARIZONA_EQ1MIX_INPUT_1_SOURCE:
1270  	case ARIZONA_EQ1MIX_INPUT_1_VOLUME:
1271  	case ARIZONA_EQ2MIX_INPUT_1_SOURCE:
1272  	case ARIZONA_EQ2MIX_INPUT_1_VOLUME:
1273  	case ARIZONA_EQ3MIX_INPUT_1_SOURCE:
1274  	case ARIZONA_EQ3MIX_INPUT_1_VOLUME:
1275  	case ARIZONA_EQ4MIX_INPUT_1_SOURCE:
1276  	case ARIZONA_EQ4MIX_INPUT_1_VOLUME:
1277  	case ARIZONA_DRC1LMIX_INPUT_1_SOURCE:
1278  	case ARIZONA_DRC1LMIX_INPUT_1_VOLUME:
1279  	case ARIZONA_DRC1RMIX_INPUT_1_SOURCE:
1280  	case ARIZONA_DRC1RMIX_INPUT_1_VOLUME:
1281  	case ARIZONA_HPLP1MIX_INPUT_1_SOURCE:
1282  	case ARIZONA_HPLP1MIX_INPUT_1_VOLUME:
1283  	case ARIZONA_HPLP1MIX_INPUT_2_SOURCE:
1284  	case ARIZONA_HPLP1MIX_INPUT_2_VOLUME:
1285  	case ARIZONA_HPLP1MIX_INPUT_3_SOURCE:
1286  	case ARIZONA_HPLP1MIX_INPUT_3_VOLUME:
1287  	case ARIZONA_HPLP1MIX_INPUT_4_SOURCE:
1288  	case ARIZONA_HPLP1MIX_INPUT_4_VOLUME:
1289  	case ARIZONA_HPLP2MIX_INPUT_1_SOURCE:
1290  	case ARIZONA_HPLP2MIX_INPUT_1_VOLUME:
1291  	case ARIZONA_HPLP2MIX_INPUT_2_SOURCE:
1292  	case ARIZONA_HPLP2MIX_INPUT_2_VOLUME:
1293  	case ARIZONA_HPLP2MIX_INPUT_3_SOURCE:
1294  	case ARIZONA_HPLP2MIX_INPUT_3_VOLUME:
1295  	case ARIZONA_HPLP2MIX_INPUT_4_SOURCE:
1296  	case ARIZONA_HPLP2MIX_INPUT_4_VOLUME:
1297  	case ARIZONA_HPLP3MIX_INPUT_1_SOURCE:
1298  	case ARIZONA_HPLP3MIX_INPUT_1_VOLUME:
1299  	case ARIZONA_HPLP3MIX_INPUT_2_SOURCE:
1300  	case ARIZONA_HPLP3MIX_INPUT_2_VOLUME:
1301  	case ARIZONA_HPLP3MIX_INPUT_3_SOURCE:
1302  	case ARIZONA_HPLP3MIX_INPUT_3_VOLUME:
1303  	case ARIZONA_HPLP3MIX_INPUT_4_SOURCE:
1304  	case ARIZONA_HPLP3MIX_INPUT_4_VOLUME:
1305  	case ARIZONA_HPLP4MIX_INPUT_1_SOURCE:
1306  	case ARIZONA_HPLP4MIX_INPUT_1_VOLUME:
1307  	case ARIZONA_HPLP4MIX_INPUT_2_SOURCE:
1308  	case ARIZONA_HPLP4MIX_INPUT_2_VOLUME:
1309  	case ARIZONA_HPLP4MIX_INPUT_3_SOURCE:
1310  	case ARIZONA_HPLP4MIX_INPUT_3_VOLUME:
1311  	case ARIZONA_HPLP4MIX_INPUT_4_SOURCE:
1312  	case ARIZONA_HPLP4MIX_INPUT_4_VOLUME:
1313  	case ARIZONA_ASRC1LMIX_INPUT_1_SOURCE:
1314  	case ARIZONA_ASRC1RMIX_INPUT_1_SOURCE:
1315  	case ARIZONA_ASRC2LMIX_INPUT_1_SOURCE:
1316  	case ARIZONA_ASRC2RMIX_INPUT_1_SOURCE:
1317  	case ARIZONA_ISRC1DEC1MIX_INPUT_1_SOURCE:
1318  	case ARIZONA_ISRC1DEC2MIX_INPUT_1_SOURCE:
1319  	case ARIZONA_ISRC1DEC3MIX_INPUT_1_SOURCE:
1320  	case ARIZONA_ISRC1DEC4MIX_INPUT_1_SOURCE:
1321  	case ARIZONA_ISRC1INT1MIX_INPUT_1_SOURCE:
1322  	case ARIZONA_ISRC1INT2MIX_INPUT_1_SOURCE:
1323  	case ARIZONA_ISRC1INT3MIX_INPUT_1_SOURCE:
1324  	case ARIZONA_ISRC1INT4MIX_INPUT_1_SOURCE:
1325  	case ARIZONA_ISRC2DEC1MIX_INPUT_1_SOURCE:
1326  	case ARIZONA_ISRC2DEC2MIX_INPUT_1_SOURCE:
1327  	case ARIZONA_ISRC2INT1MIX_INPUT_1_SOURCE:
1328  	case ARIZONA_ISRC2INT2MIX_INPUT_1_SOURCE:
1329  	case ARIZONA_GPIO1_CTRL:
1330  	case ARIZONA_GPIO2_CTRL:
1331  	case ARIZONA_GPIO3_CTRL:
1332  	case ARIZONA_GPIO4_CTRL:
1333  	case ARIZONA_GPIO5_CTRL:
1334  	case ARIZONA_IRQ_CTRL_1:
1335  	case ARIZONA_GPIO_DEBOUNCE_CONFIG:
1336  	case ARIZONA_GP_SWITCH_1:
1337  	case ARIZONA_MISC_PAD_CTRL_1:
1338  	case ARIZONA_MISC_PAD_CTRL_2:
1339  	case ARIZONA_MISC_PAD_CTRL_3:
1340  	case ARIZONA_MISC_PAD_CTRL_4:
1341  	case ARIZONA_MISC_PAD_CTRL_5:
1342  	case ARIZONA_MISC_PAD_CTRL_6:
1343  	case ARIZONA_INTERRUPT_STATUS_1:
1344  	case ARIZONA_INTERRUPT_STATUS_2:
1345  	case ARIZONA_INTERRUPT_STATUS_3:
1346  	case ARIZONA_INTERRUPT_STATUS_4:
1347  	case ARIZONA_INTERRUPT_STATUS_5:
1348  	case ARIZONA_INTERRUPT_STATUS_1_MASK:
1349  	case ARIZONA_INTERRUPT_STATUS_2_MASK:
1350  	case ARIZONA_INTERRUPT_STATUS_3_MASK:
1351  	case ARIZONA_INTERRUPT_STATUS_4_MASK:
1352  	case ARIZONA_INTERRUPT_STATUS_5_MASK:
1353  	case ARIZONA_INTERRUPT_CONTROL:
1354  	case ARIZONA_IRQ2_STATUS_1:
1355  	case ARIZONA_IRQ2_STATUS_2:
1356  	case ARIZONA_IRQ2_STATUS_3:
1357  	case ARIZONA_IRQ2_STATUS_4:
1358  	case ARIZONA_IRQ2_STATUS_5:
1359  	case ARIZONA_IRQ2_STATUS_1_MASK:
1360  	case ARIZONA_IRQ2_STATUS_2_MASK:
1361  	case ARIZONA_IRQ2_STATUS_3_MASK:
1362  	case ARIZONA_IRQ2_STATUS_4_MASK:
1363  	case ARIZONA_IRQ2_STATUS_5_MASK:
1364  	case ARIZONA_IRQ2_CONTROL:
1365  	case ARIZONA_INTERRUPT_RAW_STATUS_2:
1366  	case ARIZONA_INTERRUPT_RAW_STATUS_3:
1367  	case ARIZONA_INTERRUPT_RAW_STATUS_4:
1368  	case ARIZONA_INTERRUPT_RAW_STATUS_5:
1369  	case ARIZONA_INTERRUPT_RAW_STATUS_6:
1370  	case ARIZONA_INTERRUPT_RAW_STATUS_7:
1371  	case ARIZONA_INTERRUPT_RAW_STATUS_8:
1372  	case ARIZONA_IRQ_PIN_STATUS:
1373  	case ARIZONA_AOD_WKUP_AND_TRIG:
1374  	case ARIZONA_AOD_IRQ1:
1375  	case ARIZONA_AOD_IRQ2:
1376  	case ARIZONA_AOD_IRQ_MASK_IRQ1:
1377  	case ARIZONA_AOD_IRQ_MASK_IRQ2:
1378  	case ARIZONA_AOD_IRQ_RAW_STATUS:
1379  	case ARIZONA_JACK_DETECT_DEBOUNCE:
1380  	case ARIZONA_FX_CTRL1:
1381  	case ARIZONA_FX_CTRL2:
1382  	case ARIZONA_EQ1_1:
1383  	case ARIZONA_EQ1_2:
1384  	case ARIZONA_EQ1_3:
1385  	case ARIZONA_EQ1_4:
1386  	case ARIZONA_EQ1_5:
1387  	case ARIZONA_EQ1_6:
1388  	case ARIZONA_EQ1_7:
1389  	case ARIZONA_EQ1_8:
1390  	case ARIZONA_EQ1_9:
1391  	case ARIZONA_EQ1_10:
1392  	case ARIZONA_EQ1_11:
1393  	case ARIZONA_EQ1_12:
1394  	case ARIZONA_EQ1_13:
1395  	case ARIZONA_EQ1_14:
1396  	case ARIZONA_EQ1_15:
1397  	case ARIZONA_EQ1_16:
1398  	case ARIZONA_EQ1_17:
1399  	case ARIZONA_EQ1_18:
1400  	case ARIZONA_EQ1_19:
1401  	case ARIZONA_EQ1_20:
1402  	case ARIZONA_EQ1_21:
1403  	case ARIZONA_EQ2_1:
1404  	case ARIZONA_EQ2_2:
1405  	case ARIZONA_EQ2_3:
1406  	case ARIZONA_EQ2_4:
1407  	case ARIZONA_EQ2_5:
1408  	case ARIZONA_EQ2_6:
1409  	case ARIZONA_EQ2_7:
1410  	case ARIZONA_EQ2_8:
1411  	case ARIZONA_EQ2_9:
1412  	case ARIZONA_EQ2_10:
1413  	case ARIZONA_EQ2_11:
1414  	case ARIZONA_EQ2_12:
1415  	case ARIZONA_EQ2_13:
1416  	case ARIZONA_EQ2_14:
1417  	case ARIZONA_EQ2_15:
1418  	case ARIZONA_EQ2_16:
1419  	case ARIZONA_EQ2_17:
1420  	case ARIZONA_EQ2_18:
1421  	case ARIZONA_EQ2_19:
1422  	case ARIZONA_EQ2_20:
1423  	case ARIZONA_EQ2_21:
1424  	case ARIZONA_EQ3_1:
1425  	case ARIZONA_EQ3_2:
1426  	case ARIZONA_EQ3_3:
1427  	case ARIZONA_EQ3_4:
1428  	case ARIZONA_EQ3_5:
1429  	case ARIZONA_EQ3_6:
1430  	case ARIZONA_EQ3_7:
1431  	case ARIZONA_EQ3_8:
1432  	case ARIZONA_EQ3_9:
1433  	case ARIZONA_EQ3_10:
1434  	case ARIZONA_EQ3_11:
1435  	case ARIZONA_EQ3_12:
1436  	case ARIZONA_EQ3_13:
1437  	case ARIZONA_EQ3_14:
1438  	case ARIZONA_EQ3_15:
1439  	case ARIZONA_EQ3_16:
1440  	case ARIZONA_EQ3_17:
1441  	case ARIZONA_EQ3_18:
1442  	case ARIZONA_EQ3_19:
1443  	case ARIZONA_EQ3_20:
1444  	case ARIZONA_EQ3_21:
1445  	case ARIZONA_EQ4_1:
1446  	case ARIZONA_EQ4_2:
1447  	case ARIZONA_EQ4_3:
1448  	case ARIZONA_EQ4_4:
1449  	case ARIZONA_EQ4_5:
1450  	case ARIZONA_EQ4_6:
1451  	case ARIZONA_EQ4_7:
1452  	case ARIZONA_EQ4_8:
1453  	case ARIZONA_EQ4_9:
1454  	case ARIZONA_EQ4_10:
1455  	case ARIZONA_EQ4_11:
1456  	case ARIZONA_EQ4_12:
1457  	case ARIZONA_EQ4_13:
1458  	case ARIZONA_EQ4_14:
1459  	case ARIZONA_EQ4_15:
1460  	case ARIZONA_EQ4_16:
1461  	case ARIZONA_EQ4_17:
1462  	case ARIZONA_EQ4_18:
1463  	case ARIZONA_EQ4_19:
1464  	case ARIZONA_EQ4_20:
1465  	case ARIZONA_EQ4_21:
1466  	case ARIZONA_DRC1_CTRL1:
1467  	case ARIZONA_DRC1_CTRL2:
1468  	case ARIZONA_DRC1_CTRL3:
1469  	case ARIZONA_DRC1_CTRL4:
1470  	case ARIZONA_DRC1_CTRL5:
1471  	case ARIZONA_HPLPF1_1:
1472  	case ARIZONA_HPLPF1_2:
1473  	case ARIZONA_HPLPF2_1:
1474  	case ARIZONA_HPLPF2_2:
1475  	case ARIZONA_HPLPF3_1:
1476  	case ARIZONA_HPLPF3_2:
1477  	case ARIZONA_HPLPF4_1:
1478  	case ARIZONA_HPLPF4_2:
1479  	case ARIZONA_ASRC_ENABLE:
1480  	case ARIZONA_ASRC_STATUS:
1481  	case ARIZONA_ASRC_RATE1:
1482  	case ARIZONA_ASRC_RATE2:
1483  	case ARIZONA_ISRC_1_CTRL_1:
1484  	case ARIZONA_ISRC_1_CTRL_2:
1485  	case ARIZONA_ISRC_1_CTRL_3:
1486  	case ARIZONA_ISRC_2_CTRL_1:
1487  	case ARIZONA_ISRC_2_CTRL_2:
1488  	case ARIZONA_ISRC_2_CTRL_3:
1489  		return true;
1490  	default:
1491  		return false;
1492  	}
1493  }
1494  
wm8998_volatile_register(struct device * dev,unsigned int reg)1495  static bool wm8998_volatile_register(struct device *dev, unsigned int reg)
1496  {
1497  	switch (reg) {
1498  	case ARIZONA_SOFTWARE_RESET:
1499  	case ARIZONA_DEVICE_REVISION:
1500  	case ARIZONA_WRITE_SEQUENCER_CTRL_0:
1501  	case ARIZONA_WRITE_SEQUENCER_CTRL_1:
1502  	case ARIZONA_WRITE_SEQUENCER_CTRL_2:
1503  	case ARIZONA_HAPTICS_STATUS:
1504  	case ARIZONA_SAMPLE_RATE_1_STATUS:
1505  	case ARIZONA_SAMPLE_RATE_2_STATUS:
1506  	case ARIZONA_SAMPLE_RATE_3_STATUS:
1507  	case ARIZONA_ASYNC_SAMPLE_RATE_1_STATUS:
1508  	case ARIZONA_ASYNC_SAMPLE_RATE_2_STATUS:
1509  	case ARIZONA_MIC_DETECT_3:
1510  	case ARIZONA_MIC_DETECT_4:
1511  	case ARIZONA_HEADPHONE_DETECT_2:
1512  	case ARIZONA_INPUT_ENABLES_STATUS:
1513  	case ARIZONA_OUTPUT_STATUS_1:
1514  	case ARIZONA_RAW_OUTPUT_STATUS_1:
1515  	case ARIZONA_SLIMBUS_RX_PORT_STATUS:
1516  	case ARIZONA_SLIMBUS_TX_PORT_STATUS:
1517  	case ARIZONA_INTERRUPT_STATUS_1:
1518  	case ARIZONA_INTERRUPT_STATUS_2:
1519  	case ARIZONA_INTERRUPT_STATUS_3:
1520  	case ARIZONA_INTERRUPT_STATUS_4:
1521  	case ARIZONA_INTERRUPT_STATUS_5:
1522  	case ARIZONA_IRQ2_STATUS_1:
1523  	case ARIZONA_IRQ2_STATUS_2:
1524  	case ARIZONA_IRQ2_STATUS_3:
1525  	case ARIZONA_IRQ2_STATUS_4:
1526  	case ARIZONA_IRQ2_STATUS_5:
1527  	case ARIZONA_INTERRUPT_RAW_STATUS_2:
1528  	case ARIZONA_INTERRUPT_RAW_STATUS_3:
1529  	case ARIZONA_INTERRUPT_RAW_STATUS_4:
1530  	case ARIZONA_INTERRUPT_RAW_STATUS_5:
1531  	case ARIZONA_INTERRUPT_RAW_STATUS_6:
1532  	case ARIZONA_INTERRUPT_RAW_STATUS_7:
1533  	case ARIZONA_INTERRUPT_RAW_STATUS_8:
1534  	case ARIZONA_IRQ_PIN_STATUS:
1535  	case ARIZONA_AOD_WKUP_AND_TRIG:
1536  	case ARIZONA_AOD_IRQ1:
1537  	case ARIZONA_AOD_IRQ2:
1538  	case ARIZONA_AOD_IRQ_RAW_STATUS:
1539  	case ARIZONA_FX_CTRL2:
1540  	case ARIZONA_ASRC_STATUS:
1541  		return true;
1542  	default:
1543  		return false;
1544  	}
1545  }
1546  
1547  #define WM8998_MAX_REGISTER 0x31ff
1548  
1549  const struct regmap_config wm8998_i2c_regmap = {
1550  	.reg_bits = 32,
1551  	.val_bits = 16,
1552  	.reg_format_endian = REGMAP_ENDIAN_BIG,
1553  	.val_format_endian = REGMAP_ENDIAN_BIG,
1554  
1555  	.max_register = WM8998_MAX_REGISTER,
1556  	.readable_reg = wm8998_readable_register,
1557  	.volatile_reg = wm8998_volatile_register,
1558  
1559  	.cache_type = REGCACHE_MAPLE,
1560  	.reg_defaults = wm8998_reg_default,
1561  	.num_reg_defaults = ARRAY_SIZE(wm8998_reg_default),
1562  };
1563  EXPORT_SYMBOL_GPL(wm8998_i2c_regmap);
1564