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