Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mfd: arizona: Integrate wm8997 into Arizona mfd

The wm8997 is a compact, high-performance audio hub CODEC with SLIMbus
interfacing, for smartphones, tablets and other portable audio devices
based on the Arizona platform.

This patch integrates the wm8997 into the Arizona mfd.

Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>

authored by

Charles Keepax and committed by
Samuel Ortiz
dc7d4863 f3799e93

+1582
+6
drivers/mfd/Kconfig
··· 1047 1047 help 1048 1048 Support for Wolfson Microelectronics WM5110 low power audio SoC 1049 1049 1050 + config MFD_WM8997 1051 + bool "Support Wolfson Microelectronics WM8997" 1052 + depends on MFD_ARIZONA 1053 + help 1054 + Support for Wolfson Microelectronics WM8997 low power audio SoC 1055 + 1050 1056 config MFD_WM8400 1051 1057 bool "Wolfson Microelectronics WM8400" 1052 1058 select MFD_CORE
+3
drivers/mfd/Makefile
··· 43 43 ifneq ($(CONFIG_MFD_WM5110),n) 44 44 obj-$(CONFIG_MFD_ARIZONA) += wm5110-tables.o 45 45 endif 46 + ifneq ($(CONFIG_MFD_WM8997),n) 47 + obj-$(CONFIG_MFD_ARIZONA) += wm8997-tables.o 48 + endif 46 49 obj-$(CONFIG_MFD_WM8400) += wm8400-core.o 47 50 wm831x-objs := wm831x-core.o wm831x-irq.o wm831x-otp.o 48 51 wm831x-objs += wm831x-auxadc.o
+27
drivers/mfd/arizona-core.c
··· 554 554 const struct of_device_id arizona_of_match[] = { 555 555 { .compatible = "wlf,wm5102", .data = (void *)WM5102 }, 556 556 { .compatible = "wlf,wm5110", .data = (void *)WM5110 }, 557 + { .compatible = "wlf,wm8997", .data = (void *)WM8997 }, 557 558 {}, 558 559 }; 559 560 EXPORT_SYMBOL_GPL(arizona_of_match); ··· 587 586 { .name = "wm5110-codec" }, 588 587 }; 589 588 589 + static struct mfd_cell wm8997_devs[] = { 590 + { .name = "arizona-micsupp" }, 591 + { .name = "arizona-extcon" }, 592 + { .name = "arizona-gpio" }, 593 + { .name = "arizona-haptics" }, 594 + { .name = "arizona-pwm" }, 595 + { .name = "wm8997-codec" }, 596 + }; 597 + 590 598 int arizona_dev_init(struct arizona *arizona) 591 599 { 592 600 struct device *dev = arizona->dev; ··· 618 608 switch (arizona->type) { 619 609 case WM5102: 620 610 case WM5110: 611 + case WM8997: 621 612 for (i = 0; i < ARRAY_SIZE(wm5102_core_supplies); i++) 622 613 arizona->core_supplies[i].supply 623 614 = wm5102_core_supplies[i]; ··· 694 683 switch (reg) { 695 684 case 0x5102: 696 685 case 0x5110: 686 + case 0x8997: 697 687 break; 698 688 default: 699 689 dev_err(arizona->dev, "Unknown device ID: %x\n", reg); ··· 778 766 arizona->type = WM5110; 779 767 } 780 768 apply_patch = wm5110_patch; 769 + break; 770 + #endif 771 + #ifdef CONFIG_MFD_WM8997 772 + case 0x8997: 773 + type_name = "WM8997"; 774 + if (arizona->type != WM8997) { 775 + dev_err(arizona->dev, "WM8997 registered as %d\n", 776 + arizona->type); 777 + arizona->type = WM8997; 778 + } 779 + apply_patch = wm8997_patch; 781 780 break; 782 781 #endif 783 782 default: ··· 956 933 case WM5110: 957 934 ret = mfd_add_devices(arizona->dev, -1, wm5110_devs, 958 935 ARRAY_SIZE(wm5110_devs), NULL, 0, NULL); 936 + break; 937 + case WM8997: 938 + ret = mfd_add_devices(arizona->dev, -1, wm8997_devs, 939 + ARRAY_SIZE(wm8997_devs), NULL, 0, NULL); 959 940 break; 960 941 } 961 942
+6
drivers/mfd/arizona-i2c.c
··· 45 45 regmap_config = &wm5110_i2c_regmap; 46 46 break; 47 47 #endif 48 + #ifdef CONFIG_MFD_WM8997 49 + case WM8997: 50 + regmap_config = &wm8997_i2c_regmap; 51 + break; 52 + #endif 48 53 default: 49 54 dev_err(&i2c->dev, "Unknown device type %ld\n", 50 55 id->driver_data); ··· 85 80 static const struct i2c_device_id arizona_i2c_id[] = { 86 81 { "wm5102", WM5102 }, 87 82 { "wm5110", WM5110 }, 83 + { "wm8997", WM8997 }, 88 84 { } 89 85 }; 90 86 MODULE_DEVICE_TABLE(i2c, arizona_i2c_id);
+8
drivers/mfd/arizona-irq.c
··· 208 208 ctrlif_error = false; 209 209 break; 210 210 #endif 211 + #ifdef CONFIG_MFD_WM8997 212 + case WM8997: 213 + aod = &wm8997_aod; 214 + irq = &wm8997_irq; 215 + 216 + ctrlif_error = false; 217 + break; 218 + #endif 211 219 default: 212 220 BUG_ON("Unknown Arizona class device" == NULL); 213 221 return -EINVAL;
+5
drivers/mfd/arizona.h
··· 25 25 extern const struct regmap_config wm5110_i2c_regmap; 26 26 extern const struct regmap_config wm5110_spi_regmap; 27 27 28 + extern const struct regmap_config wm8997_i2c_regmap; 29 + 28 30 extern const struct dev_pm_ops arizona_pm_ops; 29 31 30 32 extern const struct of_device_id arizona_of_match[]; ··· 36 34 37 35 extern const struct regmap_irq_chip wm5110_aod; 38 36 extern const struct regmap_irq_chip wm5110_irq; 37 + 38 + extern const struct regmap_irq_chip wm8997_aod; 39 + extern const struct regmap_irq_chip wm8997_irq; 39 40 40 41 int arizona_dev_init(struct arizona *arizona); 41 42 int arizona_dev_exit(struct arizona *arizona);
+1525
drivers/mfd/wm8997-tables.c
··· 1 + /* 2 + * wm8997-tables.c -- WM8997 data tables 3 + * 4 + * Copyright 2012 Wolfson Microelectronics plc 5 + * 6 + * Author: Charles Keepax <ckeepax@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 + 18 + #include "arizona.h" 19 + 20 + static const struct reg_default wm8997_reva_patch[] = { 21 + { 0x80, 0x0003 }, 22 + { 0x214, 0x0008 }, 23 + { 0x458, 0x0000 }, 24 + { 0x0081, 0xE022 }, 25 + { 0x294, 0x0000 }, 26 + { 0x80, 0x0000 }, 27 + { 0x171, 0x0000 }, 28 + }; 29 + 30 + /* We use a function so we can use ARRAY_SIZE() */ 31 + int wm8997_patch(struct arizona *arizona) 32 + { 33 + switch (arizona->rev) { 34 + case 0: 35 + return regmap_register_patch(arizona->regmap, 36 + wm8997_reva_patch, 37 + ARRAY_SIZE(wm8997_reva_patch)); 38 + default: 39 + return 0; 40 + } 41 + } 42 + EXPORT_SYMBOL_GPL(wm8997_patch); 43 + 44 + static const struct regmap_irq wm8997_aod_irqs[ARIZONA_NUM_IRQ] = { 45 + [ARIZONA_IRQ_GP5_FALL] = { .mask = ARIZONA_GP5_FALL_EINT1 }, 46 + [ARIZONA_IRQ_GP5_RISE] = { .mask = ARIZONA_GP5_RISE_EINT1 }, 47 + [ARIZONA_IRQ_JD_FALL] = { .mask = ARIZONA_JD1_FALL_EINT1 }, 48 + [ARIZONA_IRQ_JD_RISE] = { .mask = ARIZONA_JD1_RISE_EINT1 }, 49 + }; 50 + 51 + const struct regmap_irq_chip wm8997_aod = { 52 + .name = "wm8997 AOD", 53 + .status_base = ARIZONA_AOD_IRQ1, 54 + .mask_base = ARIZONA_AOD_IRQ_MASK_IRQ1, 55 + .ack_base = ARIZONA_AOD_IRQ1, 56 + .num_regs = 1, 57 + .irqs = wm8997_aod_irqs, 58 + .num_irqs = ARRAY_SIZE(wm8997_aod_irqs), 59 + }; 60 + EXPORT_SYMBOL_GPL(wm8997_aod); 61 + 62 + static const struct regmap_irq wm8997_irqs[ARIZONA_NUM_IRQ] = { 63 + [ARIZONA_IRQ_GP4] = { .reg_offset = 0, .mask = ARIZONA_GP4_EINT1 }, 64 + [ARIZONA_IRQ_GP3] = { .reg_offset = 0, .mask = ARIZONA_GP3_EINT1 }, 65 + [ARIZONA_IRQ_GP2] = { .reg_offset = 0, .mask = ARIZONA_GP2_EINT1 }, 66 + [ARIZONA_IRQ_GP1] = { .reg_offset = 0, .mask = ARIZONA_GP1_EINT1 }, 67 + 68 + [ARIZONA_IRQ_SPK_SHUTDOWN_WARN] = { 69 + .reg_offset = 2, .mask = ARIZONA_SPK_SHUTDOWN_WARN_EINT1 70 + }, 71 + [ARIZONA_IRQ_SPK_SHUTDOWN] = { 72 + .reg_offset = 2, .mask = ARIZONA_SPK_SHUTDOWN_EINT1 73 + }, 74 + [ARIZONA_IRQ_HPDET] = { 75 + .reg_offset = 2, .mask = ARIZONA_HPDET_EINT1 76 + }, 77 + [ARIZONA_IRQ_MICDET] = { 78 + .reg_offset = 2, .mask = ARIZONA_MICDET_EINT1 79 + }, 80 + [ARIZONA_IRQ_WSEQ_DONE] = { 81 + .reg_offset = 2, .mask = ARIZONA_WSEQ_DONE_EINT1 82 + }, 83 + [ARIZONA_IRQ_DRC1_SIG_DET] = { 84 + .reg_offset = 2, .mask = ARIZONA_DRC1_SIG_DET_EINT1 85 + }, 86 + [ARIZONA_IRQ_UNDERCLOCKED] = { 87 + .reg_offset = 2, .mask = ARIZONA_UNDERCLOCKED_EINT1 88 + }, 89 + [ARIZONA_IRQ_OVERCLOCKED] = { 90 + .reg_offset = 2, .mask = ARIZONA_OVERCLOCKED_EINT1 91 + }, 92 + [ARIZONA_IRQ_FLL2_LOCK] = { 93 + .reg_offset = 2, .mask = ARIZONA_FLL2_LOCK_EINT1 94 + }, 95 + [ARIZONA_IRQ_FLL1_LOCK] = { 96 + .reg_offset = 2, .mask = ARIZONA_FLL1_LOCK_EINT1 97 + }, 98 + [ARIZONA_IRQ_CLKGEN_ERR] = { 99 + .reg_offset = 2, .mask = ARIZONA_CLKGEN_ERR_EINT1 100 + }, 101 + [ARIZONA_IRQ_CLKGEN_ERR_ASYNC] = { 102 + .reg_offset = 2, .mask = ARIZONA_CLKGEN_ERR_ASYNC_EINT1 103 + }, 104 + 105 + [ARIZONA_IRQ_AIF2_ERR] = { 106 + .reg_offset = 3, .mask = ARIZONA_AIF2_ERR_EINT1 107 + }, 108 + [ARIZONA_IRQ_AIF1_ERR] = { 109 + .reg_offset = 3, .mask = ARIZONA_AIF1_ERR_EINT1 110 + }, 111 + [ARIZONA_IRQ_CTRLIF_ERR] = { 112 + .reg_offset = 3, .mask = ARIZONA_CTRLIF_ERR_EINT1 113 + }, 114 + [ARIZONA_IRQ_MIXER_DROPPED_SAMPLES] = { 115 + .reg_offset = 3, .mask = ARIZONA_MIXER_DROPPED_SAMPLE_EINT1 116 + }, 117 + [ARIZONA_IRQ_ASYNC_CLK_ENA_LOW] = { 118 + .reg_offset = 3, .mask = ARIZONA_ASYNC_CLK_ENA_LOW_EINT1 119 + }, 120 + [ARIZONA_IRQ_SYSCLK_ENA_LOW] = { 121 + .reg_offset = 3, .mask = ARIZONA_SYSCLK_ENA_LOW_EINT1 122 + }, 123 + [ARIZONA_IRQ_ISRC1_CFG_ERR] = { 124 + .reg_offset = 3, .mask = ARIZONA_ISRC1_CFG_ERR_EINT1 125 + }, 126 + [ARIZONA_IRQ_ISRC2_CFG_ERR] = { 127 + .reg_offset = 3, .mask = ARIZONA_ISRC2_CFG_ERR_EINT1 128 + }, 129 + 130 + [ARIZONA_IRQ_BOOT_DONE] = { 131 + .reg_offset = 4, .mask = ARIZONA_BOOT_DONE_EINT1 132 + }, 133 + [ARIZONA_IRQ_DCS_DAC_DONE] = { 134 + .reg_offset = 4, .mask = ARIZONA_DCS_DAC_DONE_EINT1 135 + }, 136 + [ARIZONA_IRQ_DCS_HP_DONE] = { 137 + .reg_offset = 4, .mask = ARIZONA_DCS_HP_DONE_EINT1 138 + }, 139 + [ARIZONA_IRQ_FLL2_CLOCK_OK] = { 140 + .reg_offset = 4, .mask = ARIZONA_FLL2_CLOCK_OK_EINT1 141 + }, 142 + [ARIZONA_IRQ_FLL1_CLOCK_OK] = { 143 + .reg_offset = 4, .mask = ARIZONA_FLL1_CLOCK_OK_EINT1 144 + }, 145 + }; 146 + 147 + const struct regmap_irq_chip wm8997_irq = { 148 + .name = "wm8997 IRQ", 149 + .status_base = ARIZONA_INTERRUPT_STATUS_1, 150 + .mask_base = ARIZONA_INTERRUPT_STATUS_1_MASK, 151 + .ack_base = ARIZONA_INTERRUPT_STATUS_1, 152 + .num_regs = 5, 153 + .irqs = wm8997_irqs, 154 + .num_irqs = ARRAY_SIZE(wm8997_irqs), 155 + }; 156 + EXPORT_SYMBOL_GPL(wm8997_irq); 157 + 158 + static const struct reg_default wm8997_reg_default[] = { 159 + { 0x00000009, 0x0001 }, /* R9 - Ctrl IF I2C1 CFG 1 */ 160 + { 0x00000016, 0x0000 }, /* R22 - Write Sequencer Ctrl 0 */ 161 + { 0x00000017, 0x0000 }, /* R23 - Write Sequencer Ctrl 1 */ 162 + { 0x00000018, 0x0000 }, /* R24 - Write Sequencer Ctrl 2 */ 163 + { 0x00000020, 0x0000 }, /* R32 - Tone Generator 1 */ 164 + { 0x00000021, 0x1000 }, /* R33 - Tone Generator 2 */ 165 + { 0x00000022, 0x0000 }, /* R34 - Tone Generator 3 */ 166 + { 0x00000023, 0x1000 }, /* R35 - Tone Generator 4 */ 167 + { 0x00000024, 0x0000 }, /* R36 - Tone Generator 5 */ 168 + { 0x00000030, 0x0000 }, /* R48 - PWM Drive 1 */ 169 + { 0x00000031, 0x0100 }, /* R49 - PWM Drive 2 */ 170 + { 0x00000032, 0x0100 }, /* R50 - PWM Drive 3 */ 171 + { 0x00000040, 0x0000 }, /* R64 - Wake control */ 172 + { 0x00000041, 0x0000 }, /* R65 - Sequence control */ 173 + { 0x00000061, 0x01FF }, /* R97 - Sample Rate Sequence Select 1 */ 174 + { 0x00000062, 0x01FF }, /* R98 - Sample Rate Sequence Select 2 */ 175 + { 0x00000063, 0x01FF }, /* R99 - Sample Rate Sequence Select 3 */ 176 + { 0x00000064, 0x01FF }, /* R100 - Sample Rate Sequence Select 4 */ 177 + { 0x00000068, 0x01FF }, /* R104 - Always On Triggers Sequence Select 1 */ 178 + { 0x00000069, 0x01FF }, /* R105 - Always On Triggers Sequence Select 2 */ 179 + { 0x0000006A, 0x01FF }, /* R106 - Always On Triggers Sequence Select 3 */ 180 + { 0x0000006B, 0x01FF }, /* R107 - Always On Triggers Sequence Select 4 */ 181 + { 0x00000070, 0x0000 }, /* R112 - Comfort Noise Generator */ 182 + { 0x00000090, 0x0000 }, /* R144 - Haptics Control 1 */ 183 + { 0x00000091, 0x7FFF }, /* R145 - Haptics Control 2 */ 184 + { 0x00000092, 0x0000 }, /* R146 - Haptics phase 1 intensity */ 185 + { 0x00000093, 0x0000 }, /* R147 - Haptics phase 1 duration */ 186 + { 0x00000094, 0x0000 }, /* R148 - Haptics phase 2 intensity */ 187 + { 0x00000095, 0x0000 }, /* R149 - Haptics phase 2 duration */ 188 + { 0x00000096, 0x0000 }, /* R150 - Haptics phase 3 intensity */ 189 + { 0x00000097, 0x0000 }, /* R151 - Haptics phase 3 duration */ 190 + { 0x00000100, 0x0002 }, /* R256 - Clock 32k 1 */ 191 + { 0x00000101, 0x0304 }, /* R257 - System Clock 1 */ 192 + { 0x00000102, 0x0011 }, /* R258 - Sample rate 1 */ 193 + { 0x00000103, 0x0011 }, /* R259 - Sample rate 2 */ 194 + { 0x00000104, 0x0011 }, /* R260 - Sample rate 3 */ 195 + { 0x00000112, 0x0305 }, /* R274 - Async clock 1 */ 196 + { 0x00000113, 0x0011 }, /* R275 - Async sample rate 1 */ 197 + { 0x00000149, 0x0000 }, /* R329 - Output system clock */ 198 + { 0x0000014A, 0x0000 }, /* R330 - Output async clock */ 199 + { 0x00000152, 0x0000 }, /* R338 - Rate Estimator 1 */ 200 + { 0x00000153, 0x0000 }, /* R339 - Rate Estimator 2 */ 201 + { 0x00000154, 0x0000 }, /* R340 - Rate Estimator 3 */ 202 + { 0x00000155, 0x0000 }, /* R341 - Rate Estimator 4 */ 203 + { 0x00000156, 0x0000 }, /* R342 - Rate Estimator 5 */ 204 + { 0x00000161, 0x0000 }, /* R353 - Dynamic Frequency Scaling 1 */ 205 + { 0x00000171, 0x0000 }, /* R369 - FLL1 Control 1 */ 206 + { 0x00000172, 0x0008 }, /* R370 - FLL1 Control 2 */ 207 + { 0x00000173, 0x0018 }, /* R371 - FLL1 Control 3 */ 208 + { 0x00000174, 0x007D }, /* R372 - FLL1 Control 4 */ 209 + { 0x00000175, 0x0004 }, /* R373 - FLL1 Control 5 */ 210 + { 0x00000176, 0x0000 }, /* R374 - FLL1 Control 6 */ 211 + { 0x00000177, 0x0181 }, /* R375 - FLL1 Loop Filter Test 1 */ 212 + { 0x00000181, 0x0000 }, /* R385 - FLL1 Synchroniser 1 */ 213 + { 0x00000182, 0x0000 }, /* R386 - FLL1 Synchroniser 2 */ 214 + { 0x00000183, 0x0000 }, /* R387 - FLL1 Synchroniser 3 */ 215 + { 0x00000184, 0x0000 }, /* R388 - FLL1 Synchroniser 4 */ 216 + { 0x00000185, 0x0000 }, /* R389 - FLL1 Synchroniser 5 */ 217 + { 0x00000186, 0x0000 }, /* R390 - FLL1 Synchroniser 6 */ 218 + { 0x00000189, 0x0000 }, /* R393 - FLL1 Spread Spectrum */ 219 + { 0x0000018A, 0x0004 }, /* R394 - FLL1 GPIO Clock */ 220 + { 0x00000191, 0x0000 }, /* R401 - FLL2 Control 1 */ 221 + { 0x00000192, 0x0008 }, /* R402 - FLL2 Control 2 */ 222 + { 0x00000193, 0x0018 }, /* R403 - FLL2 Control 3 */ 223 + { 0x00000194, 0x007D }, /* R404 - FLL2 Control 4 */ 224 + { 0x00000195, 0x0004 }, /* R405 - FLL2 Control 5 */ 225 + { 0x00000196, 0x0000 }, /* R406 - FLL2 Control 6 */ 226 + { 0x00000197, 0x0000 }, /* R407 - FLL2 Loop Filter Test 1 */ 227 + { 0x000001A1, 0x0000 }, /* R417 - FLL2 Synchroniser 1 */ 228 + { 0x000001A2, 0x0000 }, /* R418 - FLL2 Synchroniser 2 */ 229 + { 0x000001A3, 0x0000 }, /* R419 - FLL2 Synchroniser 3 */ 230 + { 0x000001A4, 0x0000 }, /* R420 - FLL2 Synchroniser 4 */ 231 + { 0x000001A5, 0x0000 }, /* R421 - FLL2 Synchroniser 5 */ 232 + { 0x000001A6, 0x0000 }, /* R422 - FLL2 Synchroniser 6 */ 233 + { 0x000001A9, 0x0000 }, /* R425 - FLL2 Spread Spectrum */ 234 + { 0x000001AA, 0x0004 }, /* R426 - FLL2 GPIO Clock */ 235 + { 0x00000200, 0x0006 }, /* R512 - Mic Charge Pump 1 */ 236 + { 0x00000210, 0x00D4 }, /* R528 - LDO1 Control 1 */ 237 + { 0x00000212, 0x0000 }, /* R530 - LDO1 Control 2 */ 238 + { 0x00000213, 0x0344 }, /* R531 - LDO2 Control 1 */ 239 + { 0x00000218, 0x01A6 }, /* R536 - Mic Bias Ctrl 1 */ 240 + { 0x00000219, 0x01A6 }, /* R537 - Mic Bias Ctrl 2 */ 241 + { 0x0000021A, 0x01A6 }, /* R538 - Mic Bias Ctrl 3 */ 242 + { 0x00000293, 0x0000 }, /* R659 - Accessory Detect Mode 1 */ 243 + { 0x0000029B, 0x0020 }, /* R667 - Headphone Detect 1 */ 244 + { 0x000002A3, 0x1102 }, /* R675 - Mic Detect 1 */ 245 + { 0x000002A4, 0x009F }, /* R676 - Mic Detect 2 */ 246 + { 0x000002A5, 0x0000 }, /* R677 - Mic Detect 3 */ 247 + { 0x000002C3, 0x0000 }, /* R707 - Mic noise mix control 1 */ 248 + { 0x000002CB, 0x0000 }, /* R715 - Isolation control */ 249 + { 0x000002D3, 0x0000 }, /* R723 - Jack detect analogue */ 250 + { 0x00000300, 0x0000 }, /* R768 - Input Enables */ 251 + { 0x00000308, 0x0000 }, /* R776 - Input Rate */ 252 + { 0x00000309, 0x0022 }, /* R777 - Input Volume Ramp */ 253 + { 0x00000310, 0x2080 }, /* R784 - IN1L Control */ 254 + { 0x00000311, 0x0180 }, /* R785 - ADC Digital Volume 1L */ 255 + { 0x00000312, 0x0000 }, /* R786 - DMIC1L Control */ 256 + { 0x00000314, 0x0080 }, /* R788 - IN1R Control */ 257 + { 0x00000315, 0x0180 }, /* R789 - ADC Digital Volume 1R */ 258 + { 0x00000316, 0x0000 }, /* R790 - DMIC1R Control */ 259 + { 0x00000318, 0x2080 }, /* R792 - IN2L Control */ 260 + { 0x00000319, 0x0180 }, /* R793 - ADC Digital Volume 2L */ 261 + { 0x0000031A, 0x0000 }, /* R794 - DMIC2L Control */ 262 + { 0x0000031C, 0x0080 }, /* R796 - IN2R Control */ 263 + { 0x0000031D, 0x0180 }, /* R797 - ADC Digital Volume 2R */ 264 + { 0x0000031E, 0x0000 }, /* R798 - DMIC2R Control */ 265 + { 0x00000400, 0x0000 }, /* R1024 - Output Enables 1 */ 266 + { 0x00000408, 0x0000 }, /* R1032 - Output Rate 1 */ 267 + { 0x00000409, 0x0022 }, /* R1033 - Output Volume Ramp */ 268 + { 0x00000410, 0x0080 }, /* R1040 - Output Path Config 1L */ 269 + { 0x00000411, 0x0180 }, /* R1041 - DAC Digital Volume 1L */ 270 + { 0x00000412, 0x0080 }, /* R1042 - DAC Volume Limit 1L */ 271 + { 0x00000413, 0x0001 }, /* R1043 - Noise Gate Select 1L */ 272 + { 0x00000414, 0x0080 }, /* R1044 - Output Path Config 1R */ 273 + { 0x00000415, 0x0180 }, /* R1045 - DAC Digital Volume 1R */ 274 + { 0x00000416, 0x0080 }, /* R1046 - DAC Volume Limit 1R */ 275 + { 0x00000417, 0x0002 }, /* R1047 - Noise Gate Select 1R */ 276 + { 0x00000420, 0x0080 }, /* R1056 - Output Path Config 3L */ 277 + { 0x00000421, 0x0180 }, /* R1057 - DAC Digital Volume 3L */ 278 + { 0x00000422, 0x0080 }, /* R1058 - DAC Volume Limit 3L */ 279 + { 0x00000423, 0x0010 }, /* R1059 - Noise Gate Select 3L */ 280 + { 0x00000428, 0x0000 }, /* R1064 - Output Path Config 4L */ 281 + { 0x00000429, 0x0180 }, /* R1065 - DAC Digital Volume 4L */ 282 + { 0x0000042A, 0x0080 }, /* R1066 - Out Volume 4L */ 283 + { 0x0000042B, 0x0040 }, /* R1067 - Noise Gate Select 4L */ 284 + { 0x00000430, 0x0000 }, /* R1072 - Output Path Config 5L */ 285 + { 0x00000431, 0x0180 }, /* R1073 - DAC Digital Volume 5L */ 286 + { 0x00000432, 0x0080 }, /* R1074 - DAC Volume Limit 5L */ 287 + { 0x00000433, 0x0100 }, /* R1075 - Noise Gate Select 5L */ 288 + { 0x00000435, 0x0180 }, /* R1077 - DAC Digital Volume 5R */ 289 + { 0x00000436, 0x0080 }, /* R1078 - DAC Volume Limit 5R */ 290 + { 0x00000437, 0x0200 }, /* R1079 - Noise Gate Select 5R */ 291 + { 0x00000450, 0x0000 }, /* R1104 - DAC AEC Control 1 */ 292 + { 0x00000458, 0x0000 }, /* R1112 - Noise Gate Control */ 293 + { 0x00000490, 0x0069 }, /* R1168 - PDM SPK1 CTRL 1 */ 294 + { 0x00000491, 0x0000 }, /* R1169 - PDM SPK1 CTRL 2 */ 295 + { 0x00000500, 0x000C }, /* R1280 - AIF1 BCLK Ctrl */ 296 + { 0x00000501, 0x0008 }, /* R1281 - AIF1 Tx Pin Ctrl */ 297 + { 0x00000502, 0x0000 }, /* R1282 - AIF1 Rx Pin Ctrl */ 298 + { 0x00000503, 0x0000 }, /* R1283 - AIF1 Rate Ctrl */ 299 + { 0x00000504, 0x0000 }, /* R1284 - AIF1 Format */ 300 + { 0x00000505, 0x0040 }, /* R1285 - AIF1 Tx BCLK Rate */ 301 + { 0x00000506, 0x0040 }, /* R1286 - AIF1 Rx BCLK Rate */ 302 + { 0x00000507, 0x1818 }, /* R1287 - AIF1 Frame Ctrl 1 */ 303 + { 0x00000508, 0x1818 }, /* R1288 - AIF1 Frame Ctrl 2 */ 304 + { 0x00000509, 0x0000 }, /* R1289 - AIF1 Frame Ctrl 3 */ 305 + { 0x0000050A, 0x0001 }, /* R1290 - AIF1 Frame Ctrl 4 */ 306 + { 0x0000050B, 0x0002 }, /* R1291 - AIF1 Frame Ctrl 5 */ 307 + { 0x0000050C, 0x0003 }, /* R1292 - AIF1 Frame Ctrl 6 */ 308 + { 0x0000050D, 0x0004 }, /* R1293 - AIF1 Frame Ctrl 7 */ 309 + { 0x0000050E, 0x0005 }, /* R1294 - AIF1 Frame Ctrl 8 */ 310 + { 0x0000050F, 0x0006 }, /* R1295 - AIF1 Frame Ctrl 9 */ 311 + { 0x00000510, 0x0007 }, /* R1296 - AIF1 Frame Ctrl 10 */ 312 + { 0x00000511, 0x0000 }, /* R1297 - AIF1 Frame Ctrl 11 */ 313 + { 0x00000512, 0x0001 }, /* R1298 - AIF1 Frame Ctrl 12 */ 314 + { 0x00000513, 0x0002 }, /* R1299 - AIF1 Frame Ctrl 13 */ 315 + { 0x00000514, 0x0003 }, /* R1300 - AIF1 Frame Ctrl 14 */ 316 + { 0x00000515, 0x0004 }, /* R1301 - AIF1 Frame Ctrl 15 */ 317 + { 0x00000516, 0x0005 }, /* R1302 - AIF1 Frame Ctrl 16 */ 318 + { 0x00000517, 0x0006 }, /* R1303 - AIF1 Frame Ctrl 17 */ 319 + { 0x00000518, 0x0007 }, /* R1304 - AIF1 Frame Ctrl 18 */ 320 + { 0x00000519, 0x0000 }, /* R1305 - AIF1 Tx Enables */ 321 + { 0x0000051A, 0x0000 }, /* R1306 - AIF1 Rx Enables */ 322 + { 0x00000540, 0x000C }, /* R1344 - AIF2 BCLK Ctrl */ 323 + { 0x00000541, 0x0008 }, /* R1345 - AIF2 Tx Pin Ctrl */ 324 + { 0x00000542, 0x0000 }, /* R1346 - AIF2 Rx Pin Ctrl */ 325 + { 0x00000543, 0x0000 }, /* R1347 - AIF2 Rate Ctrl */ 326 + { 0x00000544, 0x0000 }, /* R1348 - AIF2 Format */ 327 + { 0x00000545, 0x0040 }, /* R1349 - AIF2 Tx BCLK Rate */ 328 + { 0x00000546, 0x0040 }, /* R1350 - AIF2 Rx BCLK Rate */ 329 + { 0x00000547, 0x1818 }, /* R1351 - AIF2 Frame Ctrl 1 */ 330 + { 0x00000548, 0x1818 }, /* R1352 - AIF2 Frame Ctrl 2 */ 331 + { 0x00000549, 0x0000 }, /* R1353 - AIF2 Frame Ctrl 3 */ 332 + { 0x0000054A, 0x0001 }, /* R1354 - AIF2 Frame Ctrl 4 */ 333 + { 0x00000551, 0x0000 }, /* R1361 - AIF2 Frame Ctrl 11 */ 334 + { 0x00000552, 0x0001 }, /* R1362 - AIF2 Frame Ctrl 12 */ 335 + { 0x00000559, 0x0000 }, /* R1369 - AIF2 Tx Enables */ 336 + { 0x0000055A, 0x0000 }, /* R1370 - AIF2 Rx Enables */ 337 + { 0x000005E3, 0x0004 }, /* R1507 - SLIMbus Framer Ref Gear */ 338 + { 0x000005E5, 0x0000 }, /* R1509 - SLIMbus Rates 1 */ 339 + { 0x000005E6, 0x0000 }, /* R1510 - SLIMbus Rates 2 */ 340 + { 0x000005E7, 0x0000 }, /* R1511 - SLIMbus Rates 3 */ 341 + { 0x000005E8, 0x0000 }, /* R1512 - SLIMbus Rates 4 */ 342 + { 0x000005E9, 0x0000 }, /* R1513 - SLIMbus Rates 5 */ 343 + { 0x000005EA, 0x0000 }, /* R1514 - SLIMbus Rates 6 */ 344 + { 0x000005EB, 0x0000 }, /* R1515 - SLIMbus Rates 7 */ 345 + { 0x000005EC, 0x0000 }, /* R1516 - SLIMbus Rates 8 */ 346 + { 0x000005F5, 0x0000 }, /* R1525 - SLIMbus RX Channel Enable */ 347 + { 0x000005F6, 0x0000 }, /* R1526 - SLIMbus TX Channel Enable */ 348 + { 0x00000640, 0x0000 }, /* R1600 - PWM1MIX Input 1 Source */ 349 + { 0x00000641, 0x0080 }, /* R1601 - PWM1MIX Input 1 Volume */ 350 + { 0x00000642, 0x0000 }, /* R1602 - PWM1MIX Input 2 Source */ 351 + { 0x00000643, 0x0080 }, /* R1603 - PWM1MIX Input 2 Volume */ 352 + { 0x00000644, 0x0000 }, /* R1604 - PWM1MIX Input 3 Source */ 353 + { 0x00000645, 0x0080 }, /* R1605 - PWM1MIX Input 3 Volume */ 354 + { 0x00000646, 0x0000 }, /* R1606 - PWM1MIX Input 4 Source */ 355 + { 0x00000647, 0x0080 }, /* R1607 - PWM1MIX Input 4 Volume */ 356 + { 0x00000648, 0x0000 }, /* R1608 - PWM2MIX Input 1 Source */ 357 + { 0x00000649, 0x0080 }, /* R1609 - PWM2MIX Input 1 Volume */ 358 + { 0x0000064A, 0x0000 }, /* R1610 - PWM2MIX Input 2 Source */ 359 + { 0x0000064B, 0x0080 }, /* R1611 - PWM2MIX Input 2 Volume */ 360 + { 0x0000064C, 0x0000 }, /* R1612 - PWM2MIX Input 3 Source */ 361 + { 0x0000064D, 0x0080 }, /* R1613 - PWM2MIX Input 3 Volume */ 362 + { 0x0000064E, 0x0000 }, /* R1614 - PWM2MIX Input 4 Source */ 363 + { 0x0000064F, 0x0080 }, /* R1615 - PWM2MIX Input 4 Volume */ 364 + { 0x00000660, 0x0000 }, /* R1632 - MICMIX Input 1 Source */ 365 + { 0x00000661, 0x0080 }, /* R1633 - MICMIX Input 1 Volume */ 366 + { 0x00000662, 0x0000 }, /* R1634 - MICMIX Input 2 Source */ 367 + { 0x00000663, 0x0080 }, /* R1635 - MICMIX Input 2 Volume */ 368 + { 0x00000664, 0x0000 }, /* R1636 - MICMIX Input 3 Source */ 369 + { 0x00000665, 0x0080 }, /* R1637 - MICMIX Input 3 Volume */ 370 + { 0x00000666, 0x0000 }, /* R1638 - MICMIX Input 4 Source */ 371 + { 0x00000667, 0x0080 }, /* R1639 - MICMIX Input 4 Volume */ 372 + { 0x00000668, 0x0000 }, /* R1640 - NOISEMIX Input 1 Source */ 373 + { 0x00000669, 0x0080 }, /* R1641 - NOISEMIX Input 1 Volume */ 374 + { 0x0000066A, 0x0000 }, /* R1642 - NOISEMIX Input 2 Source */ 375 + { 0x0000066B, 0x0080 }, /* R1643 - NOISEMIX Input 2 Volume */ 376 + { 0x0000066C, 0x0000 }, /* R1644 - NOISEMIX Input 3 Source */ 377 + { 0x0000066D, 0x0080 }, /* R1645 - NOISEMIX Input 3 Volume */ 378 + { 0x0000066E, 0x0000 }, /* R1646 - NOISEMIX Input 4 Source */ 379 + { 0x0000066F, 0x0080 }, /* R1647 - NOISEMIX Input 4 Volume */ 380 + { 0x00000680, 0x0000 }, /* R1664 - OUT1LMIX Input 1 Source */ 381 + { 0x00000681, 0x0080 }, /* R1665 - OUT1LMIX Input 1 Volume */ 382 + { 0x00000682, 0x0000 }, /* R1666 - OUT1LMIX Input 2 Source */ 383 + { 0x00000683, 0x0080 }, /* R1667 - OUT1LMIX Input 2 Volume */ 384 + { 0x00000684, 0x0000 }, /* R1668 - OUT1LMIX Input 3 Source */ 385 + { 0x00000685, 0x0080 }, /* R1669 - OUT1LMIX Input 3 Volume */ 386 + { 0x00000686, 0x0000 }, /* R1670 - OUT1LMIX Input 4 Source */ 387 + { 0x00000687, 0x0080 }, /* R1671 - OUT1LMIX Input 4 Volume */ 388 + { 0x00000688, 0x0000 }, /* R1672 - OUT1RMIX Input 1 Source */ 389 + { 0x00000689, 0x0080 }, /* R1673 - OUT1RMIX Input 1 Volume */ 390 + { 0x0000068A, 0x0000 }, /* R1674 - OUT1RMIX Input 2 Source */ 391 + { 0x0000068B, 0x0080 }, /* R1675 - OUT1RMIX Input 2 Volume */ 392 + { 0x0000068C, 0x0000 }, /* R1676 - OUT1RMIX Input 3 Source */ 393 + { 0x0000068D, 0x0080 }, /* R1677 - OUT1RMIX Input 3 Volume */ 394 + { 0x0000068E, 0x0000 }, /* R1678 - OUT1RMIX Input 4 Source */ 395 + { 0x0000068F, 0x0080 }, /* R1679 - OUT1RMIX Input 4 Volume */ 396 + { 0x000006A0, 0x0000 }, /* R1696 - OUT3LMIX Input 1 Source */ 397 + { 0x000006A1, 0x0080 }, /* R1697 - OUT3LMIX Input 1 Volume */ 398 + { 0x000006A2, 0x0000 }, /* R1698 - OUT3LMIX Input 2 Source */ 399 + { 0x000006A3, 0x0080 }, /* R1699 - OUT3LMIX Input 2 Volume */ 400 + { 0x000006A4, 0x0000 }, /* R1700 - OUT3LMIX Input 3 Source */ 401 + { 0x000006A5, 0x0080 }, /* R1701 - OUT3LMIX Input 3 Volume */ 402 + { 0x000006A6, 0x0000 }, /* R1702 - OUT3LMIX Input 4 Source */ 403 + { 0x000006A7, 0x0080 }, /* R1703 - OUT3LMIX Input 4 Volume */ 404 + { 0x000006B0, 0x0000 }, /* R1712 - OUT4LMIX Input 1 Source */ 405 + { 0x000006B1, 0x0080 }, /* R1713 - OUT4LMIX Input 1 Volume */ 406 + { 0x000006B2, 0x0000 }, /* R1714 - OUT4LMIX Input 2 Source */ 407 + { 0x000006B3, 0x0080 }, /* R1715 - OUT4LMIX Input 2 Volume */ 408 + { 0x000006B4, 0x0000 }, /* R1716 - OUT4LMIX Input 3 Source */ 409 + { 0x000006B5, 0x0080 }, /* R1717 - OUT4LMIX Input 3 Volume */ 410 + { 0x000006B6, 0x0000 }, /* R1718 - OUT4LMIX Input 4 Source */ 411 + { 0x000006B7, 0x0080 }, /* R1719 - OUT4LMIX Input 4 Volume */ 412 + { 0x000006C0, 0x0000 }, /* R1728 - OUT5LMIX Input 1 Source */ 413 + { 0x000006C1, 0x0080 }, /* R1729 - OUT5LMIX Input 1 Volume */ 414 + { 0x000006C2, 0x0000 }, /* R1730 - OUT5LMIX Input 2 Source */ 415 + { 0x000006C3, 0x0080 }, /* R1731 - OUT5LMIX Input 2 Volume */ 416 + { 0x000006C4, 0x0000 }, /* R1732 - OUT5LMIX Input 3 Source */ 417 + { 0x000006C5, 0x0080 }, /* R1733 - OUT5LMIX Input 3 Volume */ 418 + { 0x000006C6, 0x0000 }, /* R1734 - OUT5LMIX Input 4 Source */ 419 + { 0x000006C7, 0x0080 }, /* R1735 - OUT5LMIX Input 4 Volume */ 420 + { 0x000006C8, 0x0000 }, /* R1736 - OUT5RMIX Input 1 Source */ 421 + { 0x000006C9, 0x0080 }, /* R1737 - OUT5RMIX Input 1 Volume */ 422 + { 0x000006CA, 0x0000 }, /* R1738 - OUT5RMIX Input 2 Source */ 423 + { 0x000006CB, 0x0080 }, /* R1739 - OUT5RMIX Input 2 Volume */ 424 + { 0x000006CC, 0x0000 }, /* R1740 - OUT5RMIX Input 3 Source */ 425 + { 0x000006CD, 0x0080 }, /* R1741 - OUT5RMIX Input 3 Volume */ 426 + { 0x000006CE, 0x0000 }, /* R1742 - OUT5RMIX Input 4 Source */ 427 + { 0x000006CF, 0x0080 }, /* R1743 - OUT5RMIX Input 4 Volume */ 428 + { 0x00000700, 0x0000 }, /* R1792 - AIF1TX1MIX Input 1 Source */ 429 + { 0x00000701, 0x0080 }, /* R1793 - AIF1TX1MIX Input 1 Volume */ 430 + { 0x00000702, 0x0000 }, /* R1794 - AIF1TX1MIX Input 2 Source */ 431 + { 0x00000703, 0x0080 }, /* R1795 - AIF1TX1MIX Input 2 Volume */ 432 + { 0x00000704, 0x0000 }, /* R1796 - AIF1TX1MIX Input 3 Source */ 433 + { 0x00000705, 0x0080 }, /* R1797 - AIF1TX1MIX Input 3 Volume */ 434 + { 0x00000706, 0x0000 }, /* R1798 - AIF1TX1MIX Input 4 Source */ 435 + { 0x00000707, 0x0080 }, /* R1799 - AIF1TX1MIX Input 4 Volume */ 436 + { 0x00000708, 0x0000 }, /* R1800 - AIF1TX2MIX Input 1 Source */ 437 + { 0x00000709, 0x0080 }, /* R1801 - AIF1TX2MIX Input 1 Volume */ 438 + { 0x0000070A, 0x0000 }, /* R1802 - AIF1TX2MIX Input 2 Source */ 439 + { 0x0000070B, 0x0080 }, /* R1803 - AIF1TX2MIX Input 2 Volume */ 440 + { 0x0000070C, 0x0000 }, /* R1804 - AIF1TX2MIX Input 3 Source */ 441 + { 0x0000070D, 0x0080 }, /* R1805 - AIF1TX2MIX Input 3 Volume */ 442 + { 0x0000070E, 0x0000 }, /* R1806 - AIF1TX2MIX Input 4 Source */ 443 + { 0x0000070F, 0x0080 }, /* R1807 - AIF1TX2MIX Input 4 Volume */ 444 + { 0x00000710, 0x0000 }, /* R1808 - AIF1TX3MIX Input 1 Source */ 445 + { 0x00000711, 0x0080 }, /* R1809 - AIF1TX3MIX Input 1 Volume */ 446 + { 0x00000712, 0x0000 }, /* R1810 - AIF1TX3MIX Input 2 Source */ 447 + { 0x00000713, 0x0080 }, /* R1811 - AIF1TX3MIX Input 2 Volume */ 448 + { 0x00000714, 0x0000 }, /* R1812 - AIF1TX3MIX Input 3 Source */ 449 + { 0x00000715, 0x0080 }, /* R1813 - AIF1TX3MIX Input 3 Volume */ 450 + { 0x00000716, 0x0000 }, /* R1814 - AIF1TX3MIX Input 4 Source */ 451 + { 0x00000717, 0x0080 }, /* R1815 - AIF1TX3MIX Input 4 Volume */ 452 + { 0x00000718, 0x0000 }, /* R1816 - AIF1TX4MIX Input 1 Source */ 453 + { 0x00000719, 0x0080 }, /* R1817 - AIF1TX4MIX Input 1 Volume */ 454 + { 0x0000071A, 0x0000 }, /* R1818 - AIF1TX4MIX Input 2 Source */ 455 + { 0x0000071B, 0x0080 }, /* R1819 - AIF1TX4MIX Input 2 Volume */ 456 + { 0x0000071C, 0x0000 }, /* R1820 - AIF1TX4MIX Input 3 Source */ 457 + { 0x0000071D, 0x0080 }, /* R1821 - AIF1TX4MIX Input 3 Volume */ 458 + { 0x0000071E, 0x0000 }, /* R1822 - AIF1TX4MIX Input 4 Source */ 459 + { 0x0000071F, 0x0080 }, /* R1823 - AIF1TX4MIX Input 4 Volume */ 460 + { 0x00000720, 0x0000 }, /* R1824 - AIF1TX5MIX Input 1 Source */ 461 + { 0x00000721, 0x0080 }, /* R1825 - AIF1TX5MIX Input 1 Volume */ 462 + { 0x00000722, 0x0000 }, /* R1826 - AIF1TX5MIX Input 2 Source */ 463 + { 0x00000723, 0x0080 }, /* R1827 - AIF1TX5MIX Input 2 Volume */ 464 + { 0x00000724, 0x0000 }, /* R1828 - AIF1TX5MIX Input 3 Source */ 465 + { 0x00000725, 0x0080 }, /* R1829 - AIF1TX5MIX Input 3 Volume */ 466 + { 0x00000726, 0x0000 }, /* R1830 - AIF1TX5MIX Input 4 Source */ 467 + { 0x00000727, 0x0080 }, /* R1831 - AIF1TX5MIX Input 4 Volume */ 468 + { 0x00000728, 0x0000 }, /* R1832 - AIF1TX6MIX Input 1 Source */ 469 + { 0x00000729, 0x0080 }, /* R1833 - AIF1TX6MIX Input 1 Volume */ 470 + { 0x0000072A, 0x0000 }, /* R1834 - AIF1TX6MIX Input 2 Source */ 471 + { 0x0000072B, 0x0080 }, /* R1835 - AIF1TX6MIX Input 2 Volume */ 472 + { 0x0000072C, 0x0000 }, /* R1836 - AIF1TX6MIX Input 3 Source */ 473 + { 0x0000072D, 0x0080 }, /* R1837 - AIF1TX6MIX Input 3 Volume */ 474 + { 0x0000072E, 0x0000 }, /* R1838 - AIF1TX6MIX Input 4 Source */ 475 + { 0x0000072F, 0x0080 }, /* R1839 - AIF1TX6MIX Input 4 Volume */ 476 + { 0x00000730, 0x0000 }, /* R1840 - AIF1TX7MIX Input 1 Source */ 477 + { 0x00000731, 0x0080 }, /* R1841 - AIF1TX7MIX Input 1 Volume */ 478 + { 0x00000732, 0x0000 }, /* R1842 - AIF1TX7MIX Input 2 Source */ 479 + { 0x00000733, 0x0080 }, /* R1843 - AIF1TX7MIX Input 2 Volume */ 480 + { 0x00000734, 0x0000 }, /* R1844 - AIF1TX7MIX Input 3 Source */ 481 + { 0x00000735, 0x0080 }, /* R1845 - AIF1TX7MIX Input 3 Volume */ 482 + { 0x00000736, 0x0000 }, /* R1846 - AIF1TX7MIX Input 4 Source */ 483 + { 0x00000737, 0x0080 }, /* R1847 - AIF1TX7MIX Input 4 Volume */ 484 + { 0x00000738, 0x0000 }, /* R1848 - AIF1TX8MIX Input 1 Source */ 485 + { 0x00000739, 0x0080 }, /* R1849 - AIF1TX8MIX Input 1 Volume */ 486 + { 0x0000073A, 0x0000 }, /* R1850 - AIF1TX8MIX Input 2 Source */ 487 + { 0x0000073B, 0x0080 }, /* R1851 - AIF1TX8MIX Input 2 Volume */ 488 + { 0x0000073C, 0x0000 }, /* R1852 - AIF1TX8MIX Input 3 Source */ 489 + { 0x0000073D, 0x0080 }, /* R1853 - AIF1TX8MIX Input 3 Volume */ 490 + { 0x0000073E, 0x0000 }, /* R1854 - AIF1TX8MIX Input 4 Source */ 491 + { 0x0000073F, 0x0080 }, /* R1855 - AIF1TX8MIX Input 4 Volume */ 492 + { 0x00000740, 0x0000 }, /* R1856 - AIF2TX1MIX Input 1 Source */ 493 + { 0x00000741, 0x0080 }, /* R1857 - AIF2TX1MIX Input 1 Volume */ 494 + { 0x00000742, 0x0000 }, /* R1858 - AIF2TX1MIX Input 2 Source */ 495 + { 0x00000743, 0x0080 }, /* R1859 - AIF2TX1MIX Input 2 Volume */ 496 + { 0x00000744, 0x0000 }, /* R1860 - AIF2TX1MIX Input 3 Source */ 497 + { 0x00000745, 0x0080 }, /* R1861 - AIF2TX1MIX Input 3 Volume */ 498 + { 0x00000746, 0x0000 }, /* R1862 - AIF2TX1MIX Input 4 Source */ 499 + { 0x00000747, 0x0080 }, /* R1863 - AIF2TX1MIX Input 4 Volume */ 500 + { 0x00000748, 0x0000 }, /* R1864 - AIF2TX2MIX Input 1 Source */ 501 + { 0x00000749, 0x0080 }, /* R1865 - AIF2TX2MIX Input 1 Volume */ 502 + { 0x0000074A, 0x0000 }, /* R1866 - AIF2TX2MIX Input 2 Source */ 503 + { 0x0000074B, 0x0080 }, /* R1867 - AIF2TX2MIX Input 2 Volume */ 504 + { 0x0000074C, 0x0000 }, /* R1868 - AIF2TX2MIX Input 3 Source */ 505 + { 0x0000074D, 0x0080 }, /* R1869 - AIF2TX2MIX Input 3 Volume */ 506 + { 0x0000074E, 0x0000 }, /* R1870 - AIF2TX2MIX Input 4 Source */ 507 + { 0x0000074F, 0x0080 }, /* R1871 - AIF2TX2MIX Input 4 Volume */ 508 + { 0x000007C0, 0x0000 }, /* R1984 - SLIMTX1MIX Input 1 Source */ 509 + { 0x000007C1, 0x0080 }, /* R1985 - SLIMTX1MIX Input 1 Volume */ 510 + { 0x000007C2, 0x0000 }, /* R1986 - SLIMTX1MIX Input 2 Source */ 511 + { 0x000007C3, 0x0080 }, /* R1987 - SLIMTX1MIX Input 2 Volume */ 512 + { 0x000007C4, 0x0000 }, /* R1988 - SLIMTX1MIX Input 3 Source */ 513 + { 0x000007C5, 0x0080 }, /* R1989 - SLIMTX1MIX Input 3 Volume */ 514 + { 0x000007C6, 0x0000 }, /* R1990 - SLIMTX1MIX Input 4 Source */ 515 + { 0x000007C7, 0x0080 }, /* R1991 - SLIMTX1MIX Input 4 Volume */ 516 + { 0x000007C8, 0x0000 }, /* R1992 - SLIMTX2MIX Input 1 Source */ 517 + { 0x000007C9, 0x0080 }, /* R1993 - SLIMTX2MIX Input 1 Volume */ 518 + { 0x000007CA, 0x0000 }, /* R1994 - SLIMTX2MIX Input 2 Source */ 519 + { 0x000007CB, 0x0080 }, /* R1995 - SLIMTX2MIX Input 2 Volume */ 520 + { 0x000007CC, 0x0000 }, /* R1996 - SLIMTX2MIX Input 3 Source */ 521 + { 0x000007CD, 0x0080 }, /* R1997 - SLIMTX2MIX Input 3 Volume */ 522 + { 0x000007CE, 0x0000 }, /* R1998 - SLIMTX2MIX Input 4 Source */ 523 + { 0x000007CF, 0x0080 }, /* R1999 - SLIMTX2MIX Input 4 Volume */ 524 + { 0x000007D0, 0x0000 }, /* R2000 - SLIMTX3MIX Input 1 Source */ 525 + { 0x000007D1, 0x0080 }, /* R2001 - SLIMTX3MIX Input 1 Volume */ 526 + { 0x000007D2, 0x0000 }, /* R2002 - SLIMTX3MIX Input 2 Source */ 527 + { 0x000007D3, 0x0080 }, /* R2003 - SLIMTX3MIX Input 2 Volume */ 528 + { 0x000007D4, 0x0000 }, /* R2004 - SLIMTX3MIX Input 3 Source */ 529 + { 0x000007D5, 0x0080 }, /* R2005 - SLIMTX3MIX Input 3 Volume */ 530 + { 0x000007D6, 0x0000 }, /* R2006 - SLIMTX3MIX Input 4 Source */ 531 + { 0x000007D7, 0x0080 }, /* R2007 - SLIMTX3MIX Input 4 Volume */ 532 + { 0x000007D8, 0x0000 }, /* R2008 - SLIMTX4MIX Input 1 Source */ 533 + { 0x000007D9, 0x0080 }, /* R2009 - SLIMTX4MIX Input 1 Volume */ 534 + { 0x000007DA, 0x0000 }, /* R2010 - SLIMTX4MIX Input 2 Source */ 535 + { 0x000007DB, 0x0080 }, /* R2011 - SLIMTX4MIX Input 2 Volume */ 536 + { 0x000007DC, 0x0000 }, /* R2012 - SLIMTX4MIX Input 3 Source */ 537 + { 0x000007DD, 0x0080 }, /* R2013 - SLIMTX4MIX Input 3 Volume */ 538 + { 0x000007DE, 0x0000 }, /* R2014 - SLIMTX4MIX Input 4 Source */ 539 + { 0x000007DF, 0x0080 }, /* R2015 - SLIMTX4MIX Input 4 Volume */ 540 + { 0x000007E0, 0x0000 }, /* R2016 - SLIMTX5MIX Input 1 Source */ 541 + { 0x000007E1, 0x0080 }, /* R2017 - SLIMTX5MIX Input 1 Volume */ 542 + { 0x000007E2, 0x0000 }, /* R2018 - SLIMTX5MIX Input 2 Source */ 543 + { 0x000007E3, 0x0080 }, /* R2019 - SLIMTX5MIX Input 2 Volume */ 544 + { 0x000007E4, 0x0000 }, /* R2020 - SLIMTX5MIX Input 3 Source */ 545 + { 0x000007E5, 0x0080 }, /* R2021 - SLIMTX5MIX Input 3 Volume */ 546 + { 0x000007E6, 0x0000 }, /* R2022 - SLIMTX5MIX Input 4 Source */ 547 + { 0x000007E7, 0x0080 }, /* R2023 - SLIMTX5MIX Input 4 Volume */ 548 + { 0x000007E8, 0x0000 }, /* R2024 - SLIMTX6MIX Input 1 Source */ 549 + { 0x000007E9, 0x0080 }, /* R2025 - SLIMTX6MIX Input 1 Volume */ 550 + { 0x000007EA, 0x0000 }, /* R2026 - SLIMTX6MIX Input 2 Source */ 551 + { 0x000007EB, 0x0080 }, /* R2027 - SLIMTX6MIX Input 2 Volume */ 552 + { 0x000007EC, 0x0000 }, /* R2028 - SLIMTX6MIX Input 3 Source */ 553 + { 0x000007ED, 0x0080 }, /* R2029 - SLIMTX6MIX Input 3 Volume */ 554 + { 0x000007EE, 0x0000 }, /* R2030 - SLIMTX6MIX Input 4 Source */ 555 + { 0x000007EF, 0x0080 }, /* R2031 - SLIMTX6MIX Input 4 Volume */ 556 + { 0x000007F0, 0x0000 }, /* R2032 - SLIMTX7MIX Input 1 Source */ 557 + { 0x000007F1, 0x0080 }, /* R2033 - SLIMTX7MIX Input 1 Volume */ 558 + { 0x000007F2, 0x0000 }, /* R2034 - SLIMTX7MIX Input 2 Source */ 559 + { 0x000007F3, 0x0080 }, /* R2035 - SLIMTX7MIX Input 2 Volume */ 560 + { 0x000007F4, 0x0000 }, /* R2036 - SLIMTX7MIX Input 3 Source */ 561 + { 0x000007F5, 0x0080 }, /* R2037 - SLIMTX7MIX Input 3 Volume */ 562 + { 0x000007F6, 0x0000 }, /* R2038 - SLIMTX7MIX Input 4 Source */ 563 + { 0x000007F7, 0x0080 }, /* R2039 - SLIMTX7MIX Input 4 Volume */ 564 + { 0x000007F8, 0x0000 }, /* R2040 - SLIMTX8MIX Input 1 Source */ 565 + { 0x000007F9, 0x0080 }, /* R2041 - SLIMTX8MIX Input 1 Volume */ 566 + { 0x000007FA, 0x0000 }, /* R2042 - SLIMTX8MIX Input 2 Source */ 567 + { 0x000007FB, 0x0080 }, /* R2043 - SLIMTX8MIX Input 2 Volume */ 568 + { 0x000007FC, 0x0000 }, /* R2044 - SLIMTX8MIX Input 3 Source */ 569 + { 0x000007FD, 0x0080 }, /* R2045 - SLIMTX8MIX Input 3 Volume */ 570 + { 0x000007FE, 0x0000 }, /* R2046 - SLIMTX8MIX Input 4 Source */ 571 + { 0x000007FF, 0x0080 }, /* R2047 - SLIMTX8MIX Input 4 Volume */ 572 + { 0x00000880, 0x0000 }, /* R2176 - EQ1MIX Input 1 Source */ 573 + { 0x00000881, 0x0080 }, /* R2177 - EQ1MIX Input 1 Volume */ 574 + { 0x00000882, 0x0000 }, /* R2178 - EQ1MIX Input 2 Source */ 575 + { 0x00000883, 0x0080 }, /* R2179 - EQ1MIX Input 2 Volume */ 576 + { 0x00000884, 0x0000 }, /* R2180 - EQ1MIX Input 3 Source */ 577 + { 0x00000885, 0x0080 }, /* R2181 - EQ1MIX Input 3 Volume */ 578 + { 0x00000886, 0x0000 }, /* R2182 - EQ1MIX Input 4 Source */ 579 + { 0x00000887, 0x0080 }, /* R2183 - EQ1MIX Input 4 Volume */ 580 + { 0x00000888, 0x0000 }, /* R2184 - EQ2MIX Input 1 Source */ 581 + { 0x00000889, 0x0080 }, /* R2185 - EQ2MIX Input 1 Volume */ 582 + { 0x0000088A, 0x0000 }, /* R2186 - EQ2MIX Input 2 Source */ 583 + { 0x0000088B, 0x0080 }, /* R2187 - EQ2MIX Input 2 Volume */ 584 + { 0x0000088C, 0x0000 }, /* R2188 - EQ2MIX Input 3 Source */ 585 + { 0x0000088D, 0x0080 }, /* R2189 - EQ2MIX Input 3 Volume */ 586 + { 0x0000088E, 0x0000 }, /* R2190 - EQ2MIX Input 4 Source */ 587 + { 0x0000088F, 0x0080 }, /* R2191 - EQ2MIX Input 4 Volume */ 588 + { 0x00000890, 0x0000 }, /* R2192 - EQ3MIX Input 1 Source */ 589 + { 0x00000891, 0x0080 }, /* R2193 - EQ3MIX Input 1 Volume */ 590 + { 0x00000892, 0x0000 }, /* R2194 - EQ3MIX Input 2 Source */ 591 + { 0x00000893, 0x0080 }, /* R2195 - EQ3MIX Input 2 Volume */ 592 + { 0x00000894, 0x0000 }, /* R2196 - EQ3MIX Input 3 Source */ 593 + { 0x00000895, 0x0080 }, /* R2197 - EQ3MIX Input 3 Volume */ 594 + { 0x00000896, 0x0000 }, /* R2198 - EQ3MIX Input 4 Source */ 595 + { 0x00000897, 0x0080 }, /* R2199 - EQ3MIX Input 4 Volume */ 596 + { 0x00000898, 0x0000 }, /* R2200 - EQ4MIX Input 1 Source */ 597 + { 0x00000899, 0x0080 }, /* R2201 - EQ4MIX Input 1 Volume */ 598 + { 0x0000089A, 0x0000 }, /* R2202 - EQ4MIX Input 2 Source */ 599 + { 0x0000089B, 0x0080 }, /* R2203 - EQ4MIX Input 2 Volume */ 600 + { 0x0000089C, 0x0000 }, /* R2204 - EQ4MIX Input 3 Source */ 601 + { 0x0000089D, 0x0080 }, /* R2205 - EQ4MIX Input 3 Volume */ 602 + { 0x0000089E, 0x0000 }, /* R2206 - EQ4MIX Input 4 Source */ 603 + { 0x0000089F, 0x0080 }, /* R2207 - EQ4MIX Input 4 Volume */ 604 + { 0x000008C0, 0x0000 }, /* R2240 - DRC1LMIX Input 1 Source */ 605 + { 0x000008C1, 0x0080 }, /* R2241 - DRC1LMIX Input 1 Volume */ 606 + { 0x000008C2, 0x0000 }, /* R2242 - DRC1LMIX Input 2 Source */ 607 + { 0x000008C3, 0x0080 }, /* R2243 - DRC1LMIX Input 2 Volume */ 608 + { 0x000008C4, 0x0000 }, /* R2244 - DRC1LMIX Input 3 Source */ 609 + { 0x000008C5, 0x0080 }, /* R2245 - DRC1LMIX Input 3 Volume */ 610 + { 0x000008C6, 0x0000 }, /* R2246 - DRC1LMIX Input 4 Source */ 611 + { 0x000008C7, 0x0080 }, /* R2247 - DRC1LMIX Input 4 Volume */ 612 + { 0x000008C8, 0x0000 }, /* R2248 - DRC1RMIX Input 1 Source */ 613 + { 0x000008C9, 0x0080 }, /* R2249 - DRC1RMIX Input 1 Volume */ 614 + { 0x000008CA, 0x0000 }, /* R2250 - DRC1RMIX Input 2 Source */ 615 + { 0x000008CB, 0x0080 }, /* R2251 - DRC1RMIX Input 2 Volume */ 616 + { 0x000008CC, 0x0000 }, /* R2252 - DRC1RMIX Input 3 Source */ 617 + { 0x000008CD, 0x0080 }, /* R2253 - DRC1RMIX Input 3 Volume */ 618 + { 0x000008CE, 0x0000 }, /* R2254 - DRC1RMIX Input 4 Source */ 619 + { 0x000008CF, 0x0080 }, /* R2255 - DRC1RMIX Input 4 Volume */ 620 + { 0x00000900, 0x0000 }, /* R2304 - HPLP1MIX Input 1 Source */ 621 + { 0x00000901, 0x0080 }, /* R2305 - HPLP1MIX Input 1 Volume */ 622 + { 0x00000902, 0x0000 }, /* R2306 - HPLP1MIX Input 2 Source */ 623 + { 0x00000903, 0x0080 }, /* R2307 - HPLP1MIX Input 2 Volume */ 624 + { 0x00000904, 0x0000 }, /* R2308 - HPLP1MIX Input 3 Source */ 625 + { 0x00000905, 0x0080 }, /* R2309 - HPLP1MIX Input 3 Volume */ 626 + { 0x00000906, 0x0000 }, /* R2310 - HPLP1MIX Input 4 Source */ 627 + { 0x00000907, 0x0080 }, /* R2311 - HPLP1MIX Input 4 Volume */ 628 + { 0x00000908, 0x0000 }, /* R2312 - HPLP2MIX Input 1 Source */ 629 + { 0x00000909, 0x0080 }, /* R2313 - HPLP2MIX Input 1 Volume */ 630 + { 0x0000090A, 0x0000 }, /* R2314 - HPLP2MIX Input 2 Source */ 631 + { 0x0000090B, 0x0080 }, /* R2315 - HPLP2MIX Input 2 Volume */ 632 + { 0x0000090C, 0x0000 }, /* R2316 - HPLP2MIX Input 3 Source */ 633 + { 0x0000090D, 0x0080 }, /* R2317 - HPLP2MIX Input 3 Volume */ 634 + { 0x0000090E, 0x0000 }, /* R2318 - HPLP2MIX Input 4 Source */ 635 + { 0x0000090F, 0x0080 }, /* R2319 - HPLP2MIX Input 4 Volume */ 636 + { 0x00000910, 0x0000 }, /* R2320 - HPLP3MIX Input 1 Source */ 637 + { 0x00000911, 0x0080 }, /* R2321 - HPLP3MIX Input 1 Volume */ 638 + { 0x00000912, 0x0000 }, /* R2322 - HPLP3MIX Input 2 Source */ 639 + { 0x00000913, 0x0080 }, /* R2323 - HPLP3MIX Input 2 Volume */ 640 + { 0x00000914, 0x0000 }, /* R2324 - HPLP3MIX Input 3 Source */ 641 + { 0x00000915, 0x0080 }, /* R2325 - HPLP3MIX Input 3 Volume */ 642 + { 0x00000916, 0x0000 }, /* R2326 - HPLP3MIX Input 4 Source */ 643 + { 0x00000917, 0x0080 }, /* R2327 - HPLP3MIX Input 4 Volume */ 644 + { 0x00000918, 0x0000 }, /* R2328 - HPLP4MIX Input 1 Source */ 645 + { 0x00000919, 0x0080 }, /* R2329 - HPLP4MIX Input 1 Volume */ 646 + { 0x0000091A, 0x0000 }, /* R2330 - HPLP4MIX Input 2 Source */ 647 + { 0x0000091B, 0x0080 }, /* R2331 - HPLP4MIX Input 2 Volume */ 648 + { 0x0000091C, 0x0000 }, /* R2332 - HPLP4MIX Input 3 Source */ 649 + { 0x0000091D, 0x0080 }, /* R2333 - HPLP4MIX Input 3 Volume */ 650 + { 0x0000091E, 0x0000 }, /* R2334 - HPLP4MIX Input 4 Source */ 651 + { 0x0000091F, 0x0080 }, /* R2335 - HPLP4MIX Input 4 Volume */ 652 + { 0x00000B00, 0x0000 }, /* R2816 - ISRC1DEC1MIX Input 1 Source */ 653 + { 0x00000B08, 0x0000 }, /* R2824 - ISRC1DEC2MIX Input 1 Source */ 654 + { 0x00000B20, 0x0000 }, /* R2848 - ISRC1INT1MIX Input 1 Source */ 655 + { 0x00000B28, 0x0000 }, /* R2856 - ISRC1INT2MIX Input 1 Source */ 656 + { 0x00000B40, 0x0000 }, /* R2880 - ISRC2DEC1MIX Input 1 Source */ 657 + { 0x00000B48, 0x0000 }, /* R2888 - ISRC2DEC2MIX Input 1 Source */ 658 + { 0x00000B60, 0x0000 }, /* R2912 - ISRC2INT1MIX Input 1 Source */ 659 + { 0x00000B68, 0x0000 }, /* R2920 - ISRC2INT2MIX Input 1 Source */ 660 + { 0x00000C00, 0xA101 }, /* R3072 - GPIO1 CTRL */ 661 + { 0x00000C01, 0xA101 }, /* R3073 - GPIO2 CTRL */ 662 + { 0x00000C02, 0xA101 }, /* R3074 - GPIO3 CTRL */ 663 + { 0x00000C03, 0xA101 }, /* R3075 - GPIO4 CTRL */ 664 + { 0x00000C04, 0xA101 }, /* R3076 - GPIO5 CTRL */ 665 + { 0x00000C0F, 0x0400 }, /* R3087 - IRQ CTRL 1 */ 666 + { 0x00000C10, 0x1000 }, /* R3088 - GPIO Debounce Config */ 667 + { 0x00000C20, 0x8002 }, /* R3104 - Misc Pad Ctrl 1 */ 668 + { 0x00000C21, 0x0001 }, /* R3105 - Misc Pad Ctrl 2 */ 669 + { 0x00000C22, 0x0000 }, /* R3106 - Misc Pad Ctrl 3 */ 670 + { 0x00000C23, 0x0000 }, /* R3107 - Misc Pad Ctrl 4 */ 671 + { 0x00000C24, 0x0000 }, /* R3108 - Misc Pad Ctrl 5 */ 672 + { 0x00000D08, 0xFFFF }, /* R3336 - Interrupt Status 1 Mask */ 673 + { 0x00000D0A, 0xFFFF }, /* R3338 - Interrupt Status 3 Mask */ 674 + { 0x00000D0B, 0xFFFF }, /* R3339 - Interrupt Status 4 Mask */ 675 + { 0x00000D0C, 0xFEFF }, /* R3340 - Interrupt Status 5 Mask */ 676 + { 0x00000D0F, 0x0000 }, /* R3343 - Interrupt Control */ 677 + { 0x00000D18, 0xFFFF }, /* R3352 - IRQ2 Status 1 Mask */ 678 + { 0x00000D1A, 0xFFFF }, /* R3354 - IRQ2 Status 3 Mask */ 679 + { 0x00000D1B, 0xFFFF }, /* R3355 - IRQ2 Status 4 Mask */ 680 + { 0x00000D1C, 0xFFFF }, /* R3356 - IRQ2 Status 5 Mask */ 681 + { 0x00000D1F, 0x0000 }, /* R3359 - IRQ2 Control */ 682 + { 0x00000D53, 0xFFFF }, /* R3411 - AOD IRQ Mask IRQ1 */ 683 + { 0x00000D54, 0xFFFF }, /* R3412 - AOD IRQ Mask IRQ2 */ 684 + { 0x00000D56, 0x0000 }, /* R3414 - Jack detect debounce */ 685 + { 0x00000E00, 0x0000 }, /* R3584 - FX_Ctrl1 */ 686 + { 0x00000E01, 0x0000 }, /* R3585 - FX_Ctrl2 */ 687 + { 0x00000E10, 0x6318 }, /* R3600 - EQ1_1 */ 688 + { 0x00000E11, 0x6300 }, /* R3601 - EQ1_2 */ 689 + { 0x00000E12, 0x0FC8 }, /* R3602 - EQ1_3 */ 690 + { 0x00000E13, 0x03FE }, /* R3603 - EQ1_4 */ 691 + { 0x00000E14, 0x00E0 }, /* R3604 - EQ1_5 */ 692 + { 0x00000E15, 0x1EC4 }, /* R3605 - EQ1_6 */ 693 + { 0x00000E16, 0xF136 }, /* R3606 - EQ1_7 */ 694 + { 0x00000E17, 0x0409 }, /* R3607 - EQ1_8 */ 695 + { 0x00000E18, 0x04CC }, /* R3608 - EQ1_9 */ 696 + { 0x00000E19, 0x1C9B }, /* R3609 - EQ1_10 */ 697 + { 0x00000E1A, 0xF337 }, /* R3610 - EQ1_11 */ 698 + { 0x00000E1B, 0x040B }, /* R3611 - EQ1_12 */ 699 + { 0x00000E1C, 0x0CBB }, /* R3612 - EQ1_13 */ 700 + { 0x00000E1D, 0x16F8 }, /* R3613 - EQ1_14 */ 701 + { 0x00000E1E, 0xF7D9 }, /* R3614 - EQ1_15 */ 702 + { 0x00000E1F, 0x040A }, /* R3615 - EQ1_16 */ 703 + { 0x00000E20, 0x1F14 }, /* R3616 - EQ1_17 */ 704 + { 0x00000E21, 0x058C }, /* R3617 - EQ1_18 */ 705 + { 0x00000E22, 0x0563 }, /* R3618 - EQ1_19 */ 706 + { 0x00000E23, 0x4000 }, /* R3619 - EQ1_20 */ 707 + { 0x00000E24, 0x0B75 }, /* R3620 - EQ1_21 */ 708 + { 0x00000E26, 0x6318 }, /* R3622 - EQ2_1 */ 709 + { 0x00000E27, 0x6300 }, /* R3623 - EQ2_2 */ 710 + { 0x00000E28, 0x0FC8 }, /* R3624 - EQ2_3 */ 711 + { 0x00000E29, 0x03FE }, /* R3625 - EQ2_4 */ 712 + { 0x00000E2A, 0x00E0 }, /* R3626 - EQ2_5 */ 713 + { 0x00000E2B, 0x1EC4 }, /* R3627 - EQ2_6 */ 714 + { 0x00000E2C, 0xF136 }, /* R3628 - EQ2_7 */ 715 + { 0x00000E2D, 0x0409 }, /* R3629 - EQ2_8 */ 716 + { 0x00000E2E, 0x04CC }, /* R3630 - EQ2_9 */ 717 + { 0x00000E2F, 0x1C9B }, /* R3631 - EQ2_10 */ 718 + { 0x00000E30, 0xF337 }, /* R3632 - EQ2_11 */ 719 + { 0x00000E31, 0x040B }, /* R3633 - EQ2_12 */ 720 + { 0x00000E32, 0x0CBB }, /* R3634 - EQ2_13 */ 721 + { 0x00000E33, 0x16F8 }, /* R3635 - EQ2_14 */ 722 + { 0x00000E34, 0xF7D9 }, /* R3636 - EQ2_15 */ 723 + { 0x00000E35, 0x040A }, /* R3637 - EQ2_16 */ 724 + { 0x00000E36, 0x1F14 }, /* R3638 - EQ2_17 */ 725 + { 0x00000E37, 0x058C }, /* R3639 - EQ2_18 */ 726 + { 0x00000E38, 0x0563 }, /* R3640 - EQ2_19 */ 727 + { 0x00000E39, 0x4000 }, /* R3641 - EQ2_20 */ 728 + { 0x00000E3A, 0x0B75 }, /* R3642 - EQ2_21 */ 729 + { 0x00000E3C, 0x6318 }, /* R3644 - EQ3_1 */ 730 + { 0x00000E3D, 0x6300 }, /* R3645 - EQ3_2 */ 731 + { 0x00000E3E, 0x0FC8 }, /* R3646 - EQ3_3 */ 732 + { 0x00000E3F, 0x03FE }, /* R3647 - EQ3_4 */ 733 + { 0x00000E40, 0x00E0 }, /* R3648 - EQ3_5 */ 734 + { 0x00000E41, 0x1EC4 }, /* R3649 - EQ3_6 */ 735 + { 0x00000E42, 0xF136 }, /* R3650 - EQ3_7 */ 736 + { 0x00000E43, 0x0409 }, /* R3651 - EQ3_8 */ 737 + { 0x00000E44, 0x04CC }, /* R3652 - EQ3_9 */ 738 + { 0x00000E45, 0x1C9B }, /* R3653 - EQ3_10 */ 739 + { 0x00000E46, 0xF337 }, /* R3654 - EQ3_11 */ 740 + { 0x00000E47, 0x040B }, /* R3655 - EQ3_12 */ 741 + { 0x00000E48, 0x0CBB }, /* R3656 - EQ3_13 */ 742 + { 0x00000E49, 0x16F8 }, /* R3657 - EQ3_14 */ 743 + { 0x00000E4A, 0xF7D9 }, /* R3658 - EQ3_15 */ 744 + { 0x00000E4B, 0x040A }, /* R3659 - EQ3_16 */ 745 + { 0x00000E4C, 0x1F14 }, /* R3660 - EQ3_17 */ 746 + { 0x00000E4D, 0x058C }, /* R3661 - EQ3_18 */ 747 + { 0x00000E4E, 0x0563 }, /* R3662 - EQ3_19 */ 748 + { 0x00000E4F, 0x4000 }, /* R3663 - EQ3_20 */ 749 + { 0x00000E50, 0x0B75 }, /* R3664 - EQ3_21 */ 750 + { 0x00000E52, 0x6318 }, /* R3666 - EQ4_1 */ 751 + { 0x00000E53, 0x6300 }, /* R3667 - EQ4_2 */ 752 + { 0x00000E54, 0x0FC8 }, /* R3668 - EQ4_3 */ 753 + { 0x00000E55, 0x03FE }, /* R3669 - EQ4_4 */ 754 + { 0x00000E56, 0x00E0 }, /* R3670 - EQ4_5 */ 755 + { 0x00000E57, 0x1EC4 }, /* R3671 - EQ4_6 */ 756 + { 0x00000E58, 0xF136 }, /* R3672 - EQ4_7 */ 757 + { 0x00000E59, 0x0409 }, /* R3673 - EQ4_8 */ 758 + { 0x00000E5A, 0x04CC }, /* R3674 - EQ4_9 */ 759 + { 0x00000E5B, 0x1C9B }, /* R3675 - EQ4_10 */ 760 + { 0x00000E5C, 0xF337 }, /* R3676 - EQ4_11 */ 761 + { 0x00000E5D, 0x040B }, /* R3677 - EQ4_12 */ 762 + { 0x00000E5E, 0x0CBB }, /* R3678 - EQ4_13 */ 763 + { 0x00000E5F, 0x16F8 }, /* R3679 - EQ4_14 */ 764 + { 0x00000E60, 0xF7D9 }, /* R3680 - EQ4_15 */ 765 + { 0x00000E61, 0x040A }, /* R3681 - EQ4_16 */ 766 + { 0x00000E62, 0x1F14 }, /* R3682 - EQ4_17 */ 767 + { 0x00000E63, 0x058C }, /* R3683 - EQ4_18 */ 768 + { 0x00000E64, 0x0563 }, /* R3684 - EQ4_19 */ 769 + { 0x00000E65, 0x4000 }, /* R3685 - EQ4_20 */ 770 + { 0x00000E66, 0x0B75 }, /* R3686 - EQ4_21 */ 771 + { 0x00000E80, 0x0018 }, /* R3712 - DRC1 ctrl1 */ 772 + { 0x00000E81, 0x0933 }, /* R3713 - DRC1 ctrl2 */ 773 + { 0x00000E82, 0x0018 }, /* R3714 - DRC1 ctrl3 */ 774 + { 0x00000E83, 0x0000 }, /* R3715 - DRC1 ctrl4 */ 775 + { 0x00000E84, 0x0000 }, /* R3716 - DRC1 ctrl5 */ 776 + { 0x00000EC0, 0x0000 }, /* R3776 - HPLPF1_1 */ 777 + { 0x00000EC1, 0x0000 }, /* R3777 - HPLPF1_2 */ 778 + { 0x00000EC4, 0x0000 }, /* R3780 - HPLPF2_1 */ 779 + { 0x00000EC5, 0x0000 }, /* R3781 - HPLPF2_2 */ 780 + { 0x00000EC8, 0x0000 }, /* R3784 - HPLPF3_1 */ 781 + { 0x00000EC9, 0x0000 }, /* R3785 - HPLPF3_2 */ 782 + { 0x00000ECC, 0x0000 }, /* R3788 - HPLPF4_1 */ 783 + { 0x00000ECD, 0x0000 }, /* R3789 - HPLPF4_2 */ 784 + { 0x00000EF0, 0x0000 }, /* R3824 - ISRC 1 CTRL 1 */ 785 + { 0x00000EF1, 0x0000 }, /* R3825 - ISRC 1 CTRL 2 */ 786 + { 0x00000EF2, 0x0000 }, /* R3826 - ISRC 1 CTRL 3 */ 787 + { 0x00000EF3, 0x0000 }, /* R3827 - ISRC 2 CTRL 1 */ 788 + { 0x00000EF4, 0x0000 }, /* R3828 - ISRC 2 CTRL 2 */ 789 + { 0x00000EF5, 0x0000 }, /* R3829 - ISRC 2 CTRL 3 */ 790 + { 0x00001100, 0x0010 }, /* R4352 - DSP1 Control 1 */ 791 + { 0x00001101, 0x0000 }, /* R4353 - DSP1 Clocking 1 */ 792 + }; 793 + 794 + static bool wm8997_readable_register(struct device *dev, unsigned int reg) 795 + { 796 + switch (reg) { 797 + case ARIZONA_SOFTWARE_RESET: 798 + case ARIZONA_DEVICE_REVISION: 799 + case ARIZONA_CTRL_IF_I2C1_CFG_1: 800 + case ARIZONA_WRITE_SEQUENCER_CTRL_0: 801 + case ARIZONA_WRITE_SEQUENCER_CTRL_1: 802 + case ARIZONA_WRITE_SEQUENCER_CTRL_2: 803 + case ARIZONA_TONE_GENERATOR_1: 804 + case ARIZONA_TONE_GENERATOR_2: 805 + case ARIZONA_TONE_GENERATOR_3: 806 + case ARIZONA_TONE_GENERATOR_4: 807 + case ARIZONA_TONE_GENERATOR_5: 808 + case ARIZONA_PWM_DRIVE_1: 809 + case ARIZONA_PWM_DRIVE_2: 810 + case ARIZONA_PWM_DRIVE_3: 811 + case ARIZONA_WAKE_CONTROL: 812 + case ARIZONA_SEQUENCE_CONTROL: 813 + case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_1: 814 + case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_2: 815 + case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_3: 816 + case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_4: 817 + case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_1: 818 + case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_2: 819 + case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_3: 820 + case ARIZONA_ALWAYS_ON_TRIGGERS_SEQUENCE_SELECT_4: 821 + case ARIZONA_COMFORT_NOISE_GENERATOR: 822 + case ARIZONA_HAPTICS_CONTROL_1: 823 + case ARIZONA_HAPTICS_CONTROL_2: 824 + case ARIZONA_HAPTICS_PHASE_1_INTENSITY: 825 + case ARIZONA_HAPTICS_PHASE_1_DURATION: 826 + case ARIZONA_HAPTICS_PHASE_2_INTENSITY: 827 + case ARIZONA_HAPTICS_PHASE_2_DURATION: 828 + case ARIZONA_HAPTICS_PHASE_3_INTENSITY: 829 + case ARIZONA_HAPTICS_PHASE_3_DURATION: 830 + case ARIZONA_HAPTICS_STATUS: 831 + case ARIZONA_CLOCK_32K_1: 832 + case ARIZONA_SYSTEM_CLOCK_1: 833 + case ARIZONA_SAMPLE_RATE_1: 834 + case ARIZONA_SAMPLE_RATE_2: 835 + case ARIZONA_SAMPLE_RATE_3: 836 + case ARIZONA_SAMPLE_RATE_1_STATUS: 837 + case ARIZONA_SAMPLE_RATE_2_STATUS: 838 + case ARIZONA_SAMPLE_RATE_3_STATUS: 839 + case ARIZONA_ASYNC_CLOCK_1: 840 + case ARIZONA_ASYNC_SAMPLE_RATE_1: 841 + case ARIZONA_ASYNC_SAMPLE_RATE_1_STATUS: 842 + case ARIZONA_OUTPUT_SYSTEM_CLOCK: 843 + case ARIZONA_OUTPUT_ASYNC_CLOCK: 844 + case ARIZONA_RATE_ESTIMATOR_1: 845 + case ARIZONA_RATE_ESTIMATOR_2: 846 + case ARIZONA_RATE_ESTIMATOR_3: 847 + case ARIZONA_RATE_ESTIMATOR_4: 848 + case ARIZONA_RATE_ESTIMATOR_5: 849 + case ARIZONA_FLL1_CONTROL_1: 850 + case ARIZONA_FLL1_CONTROL_2: 851 + case ARIZONA_FLL1_CONTROL_3: 852 + case ARIZONA_FLL1_CONTROL_4: 853 + case ARIZONA_FLL1_CONTROL_5: 854 + case ARIZONA_FLL1_CONTROL_6: 855 + case ARIZONA_FLL1_LOOP_FILTER_TEST_1: 856 + case ARIZONA_FLL1_NCO_TEST_0: 857 + case ARIZONA_FLL1_SYNCHRONISER_1: 858 + case ARIZONA_FLL1_SYNCHRONISER_2: 859 + case ARIZONA_FLL1_SYNCHRONISER_3: 860 + case ARIZONA_FLL1_SYNCHRONISER_4: 861 + case ARIZONA_FLL1_SYNCHRONISER_5: 862 + case ARIZONA_FLL1_SYNCHRONISER_6: 863 + case ARIZONA_FLL1_SPREAD_SPECTRUM: 864 + case ARIZONA_FLL1_GPIO_CLOCK: 865 + case ARIZONA_FLL2_CONTROL_1: 866 + case ARIZONA_FLL2_CONTROL_2: 867 + case ARIZONA_FLL2_CONTROL_3: 868 + case ARIZONA_FLL2_CONTROL_4: 869 + case ARIZONA_FLL2_CONTROL_5: 870 + case ARIZONA_FLL2_CONTROL_6: 871 + case ARIZONA_FLL2_LOOP_FILTER_TEST_1: 872 + case ARIZONA_FLL2_NCO_TEST_0: 873 + case ARIZONA_FLL2_SYNCHRONISER_1: 874 + case ARIZONA_FLL2_SYNCHRONISER_2: 875 + case ARIZONA_FLL2_SYNCHRONISER_3: 876 + case ARIZONA_FLL2_SYNCHRONISER_4: 877 + case ARIZONA_FLL2_SYNCHRONISER_5: 878 + case ARIZONA_FLL2_SYNCHRONISER_6: 879 + case ARIZONA_FLL2_SPREAD_SPECTRUM: 880 + case ARIZONA_FLL2_GPIO_CLOCK: 881 + case ARIZONA_MIC_CHARGE_PUMP_1: 882 + case ARIZONA_LDO1_CONTROL_1: 883 + case ARIZONA_LDO2_CONTROL_1: 884 + case ARIZONA_MIC_BIAS_CTRL_1: 885 + case ARIZONA_MIC_BIAS_CTRL_2: 886 + case ARIZONA_MIC_BIAS_CTRL_3: 887 + case ARIZONA_ACCESSORY_DETECT_MODE_1: 888 + case ARIZONA_HEADPHONE_DETECT_1: 889 + case ARIZONA_HEADPHONE_DETECT_2: 890 + case ARIZONA_MIC_DETECT_1: 891 + case ARIZONA_MIC_DETECT_2: 892 + case ARIZONA_MIC_DETECT_3: 893 + case ARIZONA_MIC_NOISE_MIX_CONTROL_1: 894 + case ARIZONA_ISOLATION_CONTROL: 895 + case ARIZONA_JACK_DETECT_ANALOGUE: 896 + case ARIZONA_INPUT_ENABLES: 897 + case ARIZONA_INPUT_ENABLES_STATUS: 898 + case ARIZONA_INPUT_RATE: 899 + case ARIZONA_INPUT_VOLUME_RAMP: 900 + case ARIZONA_IN1L_CONTROL: 901 + case ARIZONA_ADC_DIGITAL_VOLUME_1L: 902 + case ARIZONA_DMIC1L_CONTROL: 903 + case ARIZONA_IN1R_CONTROL: 904 + case ARIZONA_ADC_DIGITAL_VOLUME_1R: 905 + case ARIZONA_DMIC1R_CONTROL: 906 + case ARIZONA_IN2L_CONTROL: 907 + case ARIZONA_ADC_DIGITAL_VOLUME_2L: 908 + case ARIZONA_DMIC2L_CONTROL: 909 + case ARIZONA_IN2R_CONTROL: 910 + case ARIZONA_ADC_DIGITAL_VOLUME_2R: 911 + case ARIZONA_DMIC2R_CONTROL: 912 + case ARIZONA_OUTPUT_ENABLES_1: 913 + case ARIZONA_OUTPUT_STATUS_1: 914 + case ARIZONA_RAW_OUTPUT_STATUS_1: 915 + case ARIZONA_OUTPUT_RATE_1: 916 + case ARIZONA_OUTPUT_VOLUME_RAMP: 917 + case ARIZONA_OUTPUT_PATH_CONFIG_1L: 918 + case ARIZONA_DAC_DIGITAL_VOLUME_1L: 919 + case ARIZONA_DAC_VOLUME_LIMIT_1L: 920 + case ARIZONA_NOISE_GATE_SELECT_1L: 921 + case ARIZONA_OUTPUT_PATH_CONFIG_1R: 922 + case ARIZONA_DAC_DIGITAL_VOLUME_1R: 923 + case ARIZONA_DAC_VOLUME_LIMIT_1R: 924 + case ARIZONA_NOISE_GATE_SELECT_1R: 925 + case ARIZONA_OUTPUT_PATH_CONFIG_3L: 926 + case ARIZONA_DAC_DIGITAL_VOLUME_3L: 927 + case ARIZONA_DAC_VOLUME_LIMIT_3L: 928 + case ARIZONA_NOISE_GATE_SELECT_3L: 929 + case ARIZONA_OUTPUT_PATH_CONFIG_4L: 930 + case ARIZONA_DAC_DIGITAL_VOLUME_4L: 931 + case ARIZONA_OUT_VOLUME_4L: 932 + case ARIZONA_NOISE_GATE_SELECT_4L: 933 + case ARIZONA_OUTPUT_PATH_CONFIG_5L: 934 + case ARIZONA_DAC_DIGITAL_VOLUME_5L: 935 + case ARIZONA_DAC_VOLUME_LIMIT_5L: 936 + case ARIZONA_NOISE_GATE_SELECT_5L: 937 + case ARIZONA_DAC_DIGITAL_VOLUME_5R: 938 + case ARIZONA_DAC_VOLUME_LIMIT_5R: 939 + case ARIZONA_NOISE_GATE_SELECT_5R: 940 + case ARIZONA_DAC_AEC_CONTROL_1: 941 + case ARIZONA_NOISE_GATE_CONTROL: 942 + case ARIZONA_PDM_SPK1_CTRL_1: 943 + case ARIZONA_PDM_SPK1_CTRL_2: 944 + case ARIZONA_AIF1_BCLK_CTRL: 945 + case ARIZONA_AIF1_TX_PIN_CTRL: 946 + case ARIZONA_AIF1_RX_PIN_CTRL: 947 + case ARIZONA_AIF1_RATE_CTRL: 948 + case ARIZONA_AIF1_FORMAT: 949 + case ARIZONA_AIF1_TX_BCLK_RATE: 950 + case ARIZONA_AIF1_RX_BCLK_RATE: 951 + case ARIZONA_AIF1_FRAME_CTRL_1: 952 + case ARIZONA_AIF1_FRAME_CTRL_2: 953 + case ARIZONA_AIF1_FRAME_CTRL_3: 954 + case ARIZONA_AIF1_FRAME_CTRL_4: 955 + case ARIZONA_AIF1_FRAME_CTRL_5: 956 + case ARIZONA_AIF1_FRAME_CTRL_6: 957 + case ARIZONA_AIF1_FRAME_CTRL_7: 958 + case ARIZONA_AIF1_FRAME_CTRL_8: 959 + case ARIZONA_AIF1_FRAME_CTRL_9: 960 + case ARIZONA_AIF1_FRAME_CTRL_10: 961 + case ARIZONA_AIF1_FRAME_CTRL_11: 962 + case ARIZONA_AIF1_FRAME_CTRL_12: 963 + case ARIZONA_AIF1_FRAME_CTRL_13: 964 + case ARIZONA_AIF1_FRAME_CTRL_14: 965 + case ARIZONA_AIF1_FRAME_CTRL_15: 966 + case ARIZONA_AIF1_FRAME_CTRL_16: 967 + case ARIZONA_AIF1_FRAME_CTRL_17: 968 + case ARIZONA_AIF1_FRAME_CTRL_18: 969 + case ARIZONA_AIF1_TX_ENABLES: 970 + case ARIZONA_AIF1_RX_ENABLES: 971 + case ARIZONA_AIF2_BCLK_CTRL: 972 + case ARIZONA_AIF2_TX_PIN_CTRL: 973 + case ARIZONA_AIF2_RX_PIN_CTRL: 974 + case ARIZONA_AIF2_RATE_CTRL: 975 + case ARIZONA_AIF2_FORMAT: 976 + case ARIZONA_AIF2_TX_BCLK_RATE: 977 + case ARIZONA_AIF2_RX_BCLK_RATE: 978 + case ARIZONA_AIF2_FRAME_CTRL_1: 979 + case ARIZONA_AIF2_FRAME_CTRL_2: 980 + case ARIZONA_AIF2_FRAME_CTRL_3: 981 + case ARIZONA_AIF2_FRAME_CTRL_4: 982 + case ARIZONA_AIF2_FRAME_CTRL_11: 983 + case ARIZONA_AIF2_FRAME_CTRL_12: 984 + case ARIZONA_AIF2_TX_ENABLES: 985 + case ARIZONA_AIF2_RX_ENABLES: 986 + case ARIZONA_SLIMBUS_FRAMER_REF_GEAR: 987 + case ARIZONA_SLIMBUS_RATES_1: 988 + case ARIZONA_SLIMBUS_RATES_2: 989 + case ARIZONA_SLIMBUS_RATES_3: 990 + case ARIZONA_SLIMBUS_RATES_4: 991 + case ARIZONA_SLIMBUS_RATES_5: 992 + case ARIZONA_SLIMBUS_RATES_6: 993 + case ARIZONA_SLIMBUS_RATES_7: 994 + case ARIZONA_SLIMBUS_RATES_8: 995 + case ARIZONA_SLIMBUS_RX_CHANNEL_ENABLE: 996 + case ARIZONA_SLIMBUS_TX_CHANNEL_ENABLE: 997 + case ARIZONA_SLIMBUS_RX_PORT_STATUS: 998 + case ARIZONA_SLIMBUS_TX_PORT_STATUS: 999 + case ARIZONA_PWM1MIX_INPUT_1_SOURCE: 1000 + case ARIZONA_PWM1MIX_INPUT_1_VOLUME: 1001 + case ARIZONA_PWM1MIX_INPUT_2_SOURCE: 1002 + case ARIZONA_PWM1MIX_INPUT_2_VOLUME: 1003 + case ARIZONA_PWM1MIX_INPUT_3_SOURCE: 1004 + case ARIZONA_PWM1MIX_INPUT_3_VOLUME: 1005 + case ARIZONA_PWM1MIX_INPUT_4_SOURCE: 1006 + case ARIZONA_PWM1MIX_INPUT_4_VOLUME: 1007 + case ARIZONA_PWM2MIX_INPUT_1_SOURCE: 1008 + case ARIZONA_PWM2MIX_INPUT_1_VOLUME: 1009 + case ARIZONA_PWM2MIX_INPUT_2_SOURCE: 1010 + case ARIZONA_PWM2MIX_INPUT_2_VOLUME: 1011 + case ARIZONA_PWM2MIX_INPUT_3_SOURCE: 1012 + case ARIZONA_PWM2MIX_INPUT_3_VOLUME: 1013 + case ARIZONA_PWM2MIX_INPUT_4_SOURCE: 1014 + case ARIZONA_PWM2MIX_INPUT_4_VOLUME: 1015 + case ARIZONA_MICMIX_INPUT_1_SOURCE: 1016 + case ARIZONA_MICMIX_INPUT_1_VOLUME: 1017 + case ARIZONA_MICMIX_INPUT_2_SOURCE: 1018 + case ARIZONA_MICMIX_INPUT_2_VOLUME: 1019 + case ARIZONA_MICMIX_INPUT_3_SOURCE: 1020 + case ARIZONA_MICMIX_INPUT_3_VOLUME: 1021 + case ARIZONA_MICMIX_INPUT_4_SOURCE: 1022 + case ARIZONA_MICMIX_INPUT_4_VOLUME: 1023 + case ARIZONA_NOISEMIX_INPUT_1_SOURCE: 1024 + case ARIZONA_NOISEMIX_INPUT_1_VOLUME: 1025 + case ARIZONA_NOISEMIX_INPUT_2_SOURCE: 1026 + case ARIZONA_NOISEMIX_INPUT_2_VOLUME: 1027 + case ARIZONA_NOISEMIX_INPUT_3_SOURCE: 1028 + case ARIZONA_NOISEMIX_INPUT_3_VOLUME: 1029 + case ARIZONA_NOISEMIX_INPUT_4_SOURCE: 1030 + case ARIZONA_NOISEMIX_INPUT_4_VOLUME: 1031 + case ARIZONA_OUT1LMIX_INPUT_1_SOURCE: 1032 + case ARIZONA_OUT1LMIX_INPUT_1_VOLUME: 1033 + case ARIZONA_OUT1LMIX_INPUT_2_SOURCE: 1034 + case ARIZONA_OUT1LMIX_INPUT_2_VOLUME: 1035 + case ARIZONA_OUT1LMIX_INPUT_3_SOURCE: 1036 + case ARIZONA_OUT1LMIX_INPUT_3_VOLUME: 1037 + case ARIZONA_OUT1LMIX_INPUT_4_SOURCE: 1038 + case ARIZONA_OUT1LMIX_INPUT_4_VOLUME: 1039 + case ARIZONA_OUT1RMIX_INPUT_1_SOURCE: 1040 + case ARIZONA_OUT1RMIX_INPUT_1_VOLUME: 1041 + case ARIZONA_OUT1RMIX_INPUT_2_SOURCE: 1042 + case ARIZONA_OUT1RMIX_INPUT_2_VOLUME: 1043 + case ARIZONA_OUT1RMIX_INPUT_3_SOURCE: 1044 + case ARIZONA_OUT1RMIX_INPUT_3_VOLUME: 1045 + case ARIZONA_OUT1RMIX_INPUT_4_SOURCE: 1046 + case ARIZONA_OUT1RMIX_INPUT_4_VOLUME: 1047 + case ARIZONA_OUT3LMIX_INPUT_1_SOURCE: 1048 + case ARIZONA_OUT3LMIX_INPUT_1_VOLUME: 1049 + case ARIZONA_OUT3LMIX_INPUT_2_SOURCE: 1050 + case ARIZONA_OUT3LMIX_INPUT_2_VOLUME: 1051 + case ARIZONA_OUT3LMIX_INPUT_3_SOURCE: 1052 + case ARIZONA_OUT3LMIX_INPUT_3_VOLUME: 1053 + case ARIZONA_OUT3LMIX_INPUT_4_SOURCE: 1054 + case ARIZONA_OUT3LMIX_INPUT_4_VOLUME: 1055 + case ARIZONA_OUT4LMIX_INPUT_1_SOURCE: 1056 + case ARIZONA_OUT4LMIX_INPUT_1_VOLUME: 1057 + case ARIZONA_OUT4LMIX_INPUT_2_SOURCE: 1058 + case ARIZONA_OUT4LMIX_INPUT_2_VOLUME: 1059 + case ARIZONA_OUT4LMIX_INPUT_3_SOURCE: 1060 + case ARIZONA_OUT4LMIX_INPUT_3_VOLUME: 1061 + case ARIZONA_OUT4LMIX_INPUT_4_SOURCE: 1062 + case ARIZONA_OUT4LMIX_INPUT_4_VOLUME: 1063 + case ARIZONA_OUT5LMIX_INPUT_1_SOURCE: 1064 + case ARIZONA_OUT5LMIX_INPUT_1_VOLUME: 1065 + case ARIZONA_OUT5LMIX_INPUT_2_SOURCE: 1066 + case ARIZONA_OUT5LMIX_INPUT_2_VOLUME: 1067 + case ARIZONA_OUT5LMIX_INPUT_3_SOURCE: 1068 + case ARIZONA_OUT5LMIX_INPUT_3_VOLUME: 1069 + case ARIZONA_OUT5LMIX_INPUT_4_SOURCE: 1070 + case ARIZONA_OUT5LMIX_INPUT_4_VOLUME: 1071 + case ARIZONA_OUT5RMIX_INPUT_1_SOURCE: 1072 + case ARIZONA_OUT5RMIX_INPUT_1_VOLUME: 1073 + case ARIZONA_OUT5RMIX_INPUT_2_SOURCE: 1074 + case ARIZONA_OUT5RMIX_INPUT_2_VOLUME: 1075 + case ARIZONA_OUT5RMIX_INPUT_3_SOURCE: 1076 + case ARIZONA_OUT5RMIX_INPUT_3_VOLUME: 1077 + case ARIZONA_OUT5RMIX_INPUT_4_SOURCE: 1078 + case ARIZONA_OUT5RMIX_INPUT_4_VOLUME: 1079 + case ARIZONA_AIF1TX1MIX_INPUT_1_SOURCE: 1080 + case ARIZONA_AIF1TX1MIX_INPUT_1_VOLUME: 1081 + case ARIZONA_AIF1TX1MIX_INPUT_2_SOURCE: 1082 + case ARIZONA_AIF1TX1MIX_INPUT_2_VOLUME: 1083 + case ARIZONA_AIF1TX1MIX_INPUT_3_SOURCE: 1084 + case ARIZONA_AIF1TX1MIX_INPUT_3_VOLUME: 1085 + case ARIZONA_AIF1TX1MIX_INPUT_4_SOURCE: 1086 + case ARIZONA_AIF1TX1MIX_INPUT_4_VOLUME: 1087 + case ARIZONA_AIF1TX2MIX_INPUT_1_SOURCE: 1088 + case ARIZONA_AIF1TX2MIX_INPUT_1_VOLUME: 1089 + case ARIZONA_AIF1TX2MIX_INPUT_2_SOURCE: 1090 + case ARIZONA_AIF1TX2MIX_INPUT_2_VOLUME: 1091 + case ARIZONA_AIF1TX2MIX_INPUT_3_SOURCE: 1092 + case ARIZONA_AIF1TX2MIX_INPUT_3_VOLUME: 1093 + case ARIZONA_AIF1TX2MIX_INPUT_4_SOURCE: 1094 + case ARIZONA_AIF1TX2MIX_INPUT_4_VOLUME: 1095 + case ARIZONA_AIF1TX3MIX_INPUT_1_SOURCE: 1096 + case ARIZONA_AIF1TX3MIX_INPUT_1_VOLUME: 1097 + case ARIZONA_AIF1TX3MIX_INPUT_2_SOURCE: 1098 + case ARIZONA_AIF1TX3MIX_INPUT_2_VOLUME: 1099 + case ARIZONA_AIF1TX3MIX_INPUT_3_SOURCE: 1100 + case ARIZONA_AIF1TX3MIX_INPUT_3_VOLUME: 1101 + case ARIZONA_AIF1TX3MIX_INPUT_4_SOURCE: 1102 + case ARIZONA_AIF1TX3MIX_INPUT_4_VOLUME: 1103 + case ARIZONA_AIF1TX4MIX_INPUT_1_SOURCE: 1104 + case ARIZONA_AIF1TX4MIX_INPUT_1_VOLUME: 1105 + case ARIZONA_AIF1TX4MIX_INPUT_2_SOURCE: 1106 + case ARIZONA_AIF1TX4MIX_INPUT_2_VOLUME: 1107 + case ARIZONA_AIF1TX4MIX_INPUT_3_SOURCE: 1108 + case ARIZONA_AIF1TX4MIX_INPUT_3_VOLUME: 1109 + case ARIZONA_AIF1TX4MIX_INPUT_4_SOURCE: 1110 + case ARIZONA_AIF1TX4MIX_INPUT_4_VOLUME: 1111 + case ARIZONA_AIF1TX5MIX_INPUT_1_SOURCE: 1112 + case ARIZONA_AIF1TX5MIX_INPUT_1_VOLUME: 1113 + case ARIZONA_AIF1TX5MIX_INPUT_2_SOURCE: 1114 + case ARIZONA_AIF1TX5MIX_INPUT_2_VOLUME: 1115 + case ARIZONA_AIF1TX5MIX_INPUT_3_SOURCE: 1116 + case ARIZONA_AIF1TX5MIX_INPUT_3_VOLUME: 1117 + case ARIZONA_AIF1TX5MIX_INPUT_4_SOURCE: 1118 + case ARIZONA_AIF1TX5MIX_INPUT_4_VOLUME: 1119 + case ARIZONA_AIF1TX6MIX_INPUT_1_SOURCE: 1120 + case ARIZONA_AIF1TX6MIX_INPUT_1_VOLUME: 1121 + case ARIZONA_AIF1TX6MIX_INPUT_2_SOURCE: 1122 + case ARIZONA_AIF1TX6MIX_INPUT_2_VOLUME: 1123 + case ARIZONA_AIF1TX6MIX_INPUT_3_SOURCE: 1124 + case ARIZONA_AIF1TX6MIX_INPUT_3_VOLUME: 1125 + case ARIZONA_AIF1TX6MIX_INPUT_4_SOURCE: 1126 + case ARIZONA_AIF1TX6MIX_INPUT_4_VOLUME: 1127 + case ARIZONA_AIF1TX7MIX_INPUT_1_SOURCE: 1128 + case ARIZONA_AIF1TX7MIX_INPUT_1_VOLUME: 1129 + case ARIZONA_AIF1TX7MIX_INPUT_2_SOURCE: 1130 + case ARIZONA_AIF1TX7MIX_INPUT_2_VOLUME: 1131 + case ARIZONA_AIF1TX7MIX_INPUT_3_SOURCE: 1132 + case ARIZONA_AIF1TX7MIX_INPUT_3_VOLUME: 1133 + case ARIZONA_AIF1TX7MIX_INPUT_4_SOURCE: 1134 + case ARIZONA_AIF1TX7MIX_INPUT_4_VOLUME: 1135 + case ARIZONA_AIF1TX8MIX_INPUT_1_SOURCE: 1136 + case ARIZONA_AIF1TX8MIX_INPUT_1_VOLUME: 1137 + case ARIZONA_AIF1TX8MIX_INPUT_2_SOURCE: 1138 + case ARIZONA_AIF1TX8MIX_INPUT_2_VOLUME: 1139 + case ARIZONA_AIF1TX8MIX_INPUT_3_SOURCE: 1140 + case ARIZONA_AIF1TX8MIX_INPUT_3_VOLUME: 1141 + case ARIZONA_AIF1TX8MIX_INPUT_4_SOURCE: 1142 + case ARIZONA_AIF1TX8MIX_INPUT_4_VOLUME: 1143 + case ARIZONA_AIF2TX1MIX_INPUT_1_SOURCE: 1144 + case ARIZONA_AIF2TX1MIX_INPUT_1_VOLUME: 1145 + case ARIZONA_AIF2TX1MIX_INPUT_2_SOURCE: 1146 + case ARIZONA_AIF2TX1MIX_INPUT_2_VOLUME: 1147 + case ARIZONA_AIF2TX1MIX_INPUT_3_SOURCE: 1148 + case ARIZONA_AIF2TX1MIX_INPUT_3_VOLUME: 1149 + case ARIZONA_AIF2TX1MIX_INPUT_4_SOURCE: 1150 + case ARIZONA_AIF2TX1MIX_INPUT_4_VOLUME: 1151 + case ARIZONA_AIF2TX2MIX_INPUT_1_SOURCE: 1152 + case ARIZONA_AIF2TX2MIX_INPUT_1_VOLUME: 1153 + case ARIZONA_AIF2TX2MIX_INPUT_2_SOURCE: 1154 + case ARIZONA_AIF2TX2MIX_INPUT_2_VOLUME: 1155 + case ARIZONA_AIF2TX2MIX_INPUT_3_SOURCE: 1156 + case ARIZONA_AIF2TX2MIX_INPUT_3_VOLUME: 1157 + case ARIZONA_AIF2TX2MIX_INPUT_4_SOURCE: 1158 + case ARIZONA_AIF2TX2MIX_INPUT_4_VOLUME: 1159 + case ARIZONA_SLIMTX1MIX_INPUT_1_SOURCE: 1160 + case ARIZONA_SLIMTX1MIX_INPUT_1_VOLUME: 1161 + case ARIZONA_SLIMTX1MIX_INPUT_2_SOURCE: 1162 + case ARIZONA_SLIMTX1MIX_INPUT_2_VOLUME: 1163 + case ARIZONA_SLIMTX1MIX_INPUT_3_SOURCE: 1164 + case ARIZONA_SLIMTX1MIX_INPUT_3_VOLUME: 1165 + case ARIZONA_SLIMTX1MIX_INPUT_4_SOURCE: 1166 + case ARIZONA_SLIMTX1MIX_INPUT_4_VOLUME: 1167 + case ARIZONA_SLIMTX2MIX_INPUT_1_SOURCE: 1168 + case ARIZONA_SLIMTX2MIX_INPUT_1_VOLUME: 1169 + case ARIZONA_SLIMTX2MIX_INPUT_2_SOURCE: 1170 + case ARIZONA_SLIMTX2MIX_INPUT_2_VOLUME: 1171 + case ARIZONA_SLIMTX2MIX_INPUT_3_SOURCE: 1172 + case ARIZONA_SLIMTX2MIX_INPUT_3_VOLUME: 1173 + case ARIZONA_SLIMTX2MIX_INPUT_4_SOURCE: 1174 + case ARIZONA_SLIMTX2MIX_INPUT_4_VOLUME: 1175 + case ARIZONA_SLIMTX3MIX_INPUT_1_SOURCE: 1176 + case ARIZONA_SLIMTX3MIX_INPUT_1_VOLUME: 1177 + case ARIZONA_SLIMTX3MIX_INPUT_2_SOURCE: 1178 + case ARIZONA_SLIMTX3MIX_INPUT_2_VOLUME: 1179 + case ARIZONA_SLIMTX3MIX_INPUT_3_SOURCE: 1180 + case ARIZONA_SLIMTX3MIX_INPUT_3_VOLUME: 1181 + case ARIZONA_SLIMTX3MIX_INPUT_4_SOURCE: 1182 + case ARIZONA_SLIMTX3MIX_INPUT_4_VOLUME: 1183 + case ARIZONA_SLIMTX4MIX_INPUT_1_SOURCE: 1184 + case ARIZONA_SLIMTX4MIX_INPUT_1_VOLUME: 1185 + case ARIZONA_SLIMTX4MIX_INPUT_2_SOURCE: 1186 + case ARIZONA_SLIMTX4MIX_INPUT_2_VOLUME: 1187 + case ARIZONA_SLIMTX4MIX_INPUT_3_SOURCE: 1188 + case ARIZONA_SLIMTX4MIX_INPUT_3_VOLUME: 1189 + case ARIZONA_SLIMTX4MIX_INPUT_4_SOURCE: 1190 + case ARIZONA_SLIMTX4MIX_INPUT_4_VOLUME: 1191 + case ARIZONA_SLIMTX5MIX_INPUT_1_SOURCE: 1192 + case ARIZONA_SLIMTX5MIX_INPUT_1_VOLUME: 1193 + case ARIZONA_SLIMTX5MIX_INPUT_2_SOURCE: 1194 + case ARIZONA_SLIMTX5MIX_INPUT_2_VOLUME: 1195 + case ARIZONA_SLIMTX5MIX_INPUT_3_SOURCE: 1196 + case ARIZONA_SLIMTX5MIX_INPUT_3_VOLUME: 1197 + case ARIZONA_SLIMTX5MIX_INPUT_4_SOURCE: 1198 + case ARIZONA_SLIMTX5MIX_INPUT_4_VOLUME: 1199 + case ARIZONA_SLIMTX6MIX_INPUT_1_SOURCE: 1200 + case ARIZONA_SLIMTX6MIX_INPUT_1_VOLUME: 1201 + case ARIZONA_SLIMTX6MIX_INPUT_2_SOURCE: 1202 + case ARIZONA_SLIMTX6MIX_INPUT_2_VOLUME: 1203 + case ARIZONA_SLIMTX6MIX_INPUT_3_SOURCE: 1204 + case ARIZONA_SLIMTX6MIX_INPUT_3_VOLUME: 1205 + case ARIZONA_SLIMTX6MIX_INPUT_4_SOURCE: 1206 + case ARIZONA_SLIMTX6MIX_INPUT_4_VOLUME: 1207 + case ARIZONA_SLIMTX7MIX_INPUT_1_SOURCE: 1208 + case ARIZONA_SLIMTX7MIX_INPUT_1_VOLUME: 1209 + case ARIZONA_SLIMTX7MIX_INPUT_2_SOURCE: 1210 + case ARIZONA_SLIMTX7MIX_INPUT_2_VOLUME: 1211 + case ARIZONA_SLIMTX7MIX_INPUT_3_SOURCE: 1212 + case ARIZONA_SLIMTX7MIX_INPUT_3_VOLUME: 1213 + case ARIZONA_SLIMTX7MIX_INPUT_4_SOURCE: 1214 + case ARIZONA_SLIMTX7MIX_INPUT_4_VOLUME: 1215 + case ARIZONA_SLIMTX8MIX_INPUT_1_SOURCE: 1216 + case ARIZONA_SLIMTX8MIX_INPUT_1_VOLUME: 1217 + case ARIZONA_SLIMTX8MIX_INPUT_2_SOURCE: 1218 + case ARIZONA_SLIMTX8MIX_INPUT_2_VOLUME: 1219 + case ARIZONA_SLIMTX8MIX_INPUT_3_SOURCE: 1220 + case ARIZONA_SLIMTX8MIX_INPUT_3_VOLUME: 1221 + case ARIZONA_SLIMTX8MIX_INPUT_4_SOURCE: 1222 + case ARIZONA_SLIMTX8MIX_INPUT_4_VOLUME: 1223 + case ARIZONA_EQ1MIX_INPUT_1_SOURCE: 1224 + case ARIZONA_EQ1MIX_INPUT_1_VOLUME: 1225 + case ARIZONA_EQ1MIX_INPUT_2_SOURCE: 1226 + case ARIZONA_EQ1MIX_INPUT_2_VOLUME: 1227 + case ARIZONA_EQ1MIX_INPUT_3_SOURCE: 1228 + case ARIZONA_EQ1MIX_INPUT_3_VOLUME: 1229 + case ARIZONA_EQ1MIX_INPUT_4_SOURCE: 1230 + case ARIZONA_EQ1MIX_INPUT_4_VOLUME: 1231 + case ARIZONA_EQ2MIX_INPUT_1_SOURCE: 1232 + case ARIZONA_EQ2MIX_INPUT_1_VOLUME: 1233 + case ARIZONA_EQ2MIX_INPUT_2_SOURCE: 1234 + case ARIZONA_EQ2MIX_INPUT_2_VOLUME: 1235 + case ARIZONA_EQ2MIX_INPUT_3_SOURCE: 1236 + case ARIZONA_EQ2MIX_INPUT_3_VOLUME: 1237 + case ARIZONA_EQ2MIX_INPUT_4_SOURCE: 1238 + case ARIZONA_EQ2MIX_INPUT_4_VOLUME: 1239 + case ARIZONA_EQ3MIX_INPUT_1_SOURCE: 1240 + case ARIZONA_EQ3MIX_INPUT_1_VOLUME: 1241 + case ARIZONA_EQ3MIX_INPUT_2_SOURCE: 1242 + case ARIZONA_EQ3MIX_INPUT_2_VOLUME: 1243 + case ARIZONA_EQ3MIX_INPUT_3_SOURCE: 1244 + case ARIZONA_EQ3MIX_INPUT_3_VOLUME: 1245 + case ARIZONA_EQ3MIX_INPUT_4_SOURCE: 1246 + case ARIZONA_EQ3MIX_INPUT_4_VOLUME: 1247 + case ARIZONA_EQ4MIX_INPUT_1_SOURCE: 1248 + case ARIZONA_EQ4MIX_INPUT_1_VOLUME: 1249 + case ARIZONA_EQ4MIX_INPUT_2_SOURCE: 1250 + case ARIZONA_EQ4MIX_INPUT_2_VOLUME: 1251 + case ARIZONA_EQ4MIX_INPUT_3_SOURCE: 1252 + case ARIZONA_EQ4MIX_INPUT_3_VOLUME: 1253 + case ARIZONA_EQ4MIX_INPUT_4_SOURCE: 1254 + case ARIZONA_EQ4MIX_INPUT_4_VOLUME: 1255 + case ARIZONA_DRC1LMIX_INPUT_1_SOURCE: 1256 + case ARIZONA_DRC1LMIX_INPUT_1_VOLUME: 1257 + case ARIZONA_DRC1LMIX_INPUT_2_SOURCE: 1258 + case ARIZONA_DRC1LMIX_INPUT_2_VOLUME: 1259 + case ARIZONA_DRC1LMIX_INPUT_3_SOURCE: 1260 + case ARIZONA_DRC1LMIX_INPUT_3_VOLUME: 1261 + case ARIZONA_DRC1LMIX_INPUT_4_SOURCE: 1262 + case ARIZONA_DRC1LMIX_INPUT_4_VOLUME: 1263 + case ARIZONA_DRC1RMIX_INPUT_1_SOURCE: 1264 + case ARIZONA_DRC1RMIX_INPUT_1_VOLUME: 1265 + case ARIZONA_DRC1RMIX_INPUT_2_SOURCE: 1266 + case ARIZONA_DRC1RMIX_INPUT_2_VOLUME: 1267 + case ARIZONA_DRC1RMIX_INPUT_3_SOURCE: 1268 + case ARIZONA_DRC1RMIX_INPUT_3_VOLUME: 1269 + case ARIZONA_DRC1RMIX_INPUT_4_SOURCE: 1270 + case ARIZONA_DRC1RMIX_INPUT_4_VOLUME: 1271 + case ARIZONA_HPLP1MIX_INPUT_1_SOURCE: 1272 + case ARIZONA_HPLP1MIX_INPUT_1_VOLUME: 1273 + case ARIZONA_HPLP1MIX_INPUT_2_SOURCE: 1274 + case ARIZONA_HPLP1MIX_INPUT_2_VOLUME: 1275 + case ARIZONA_HPLP1MIX_INPUT_3_SOURCE: 1276 + case ARIZONA_HPLP1MIX_INPUT_3_VOLUME: 1277 + case ARIZONA_HPLP1MIX_INPUT_4_SOURCE: 1278 + case ARIZONA_HPLP1MIX_INPUT_4_VOLUME: 1279 + case ARIZONA_HPLP2MIX_INPUT_1_SOURCE: 1280 + case ARIZONA_HPLP2MIX_INPUT_1_VOLUME: 1281 + case ARIZONA_HPLP2MIX_INPUT_2_SOURCE: 1282 + case ARIZONA_HPLP2MIX_INPUT_2_VOLUME: 1283 + case ARIZONA_HPLP2MIX_INPUT_3_SOURCE: 1284 + case ARIZONA_HPLP2MIX_INPUT_3_VOLUME: 1285 + case ARIZONA_HPLP2MIX_INPUT_4_SOURCE: 1286 + case ARIZONA_HPLP2MIX_INPUT_4_VOLUME: 1287 + case ARIZONA_HPLP3MIX_INPUT_1_SOURCE: 1288 + case ARIZONA_HPLP3MIX_INPUT_1_VOLUME: 1289 + case ARIZONA_HPLP3MIX_INPUT_2_SOURCE: 1290 + case ARIZONA_HPLP3MIX_INPUT_2_VOLUME: 1291 + case ARIZONA_HPLP3MIX_INPUT_3_SOURCE: 1292 + case ARIZONA_HPLP3MIX_INPUT_3_VOLUME: 1293 + case ARIZONA_HPLP3MIX_INPUT_4_SOURCE: 1294 + case ARIZONA_HPLP3MIX_INPUT_4_VOLUME: 1295 + case ARIZONA_HPLP4MIX_INPUT_1_SOURCE: 1296 + case ARIZONA_HPLP4MIX_INPUT_1_VOLUME: 1297 + case ARIZONA_HPLP4MIX_INPUT_2_SOURCE: 1298 + case ARIZONA_HPLP4MIX_INPUT_2_VOLUME: 1299 + case ARIZONA_HPLP4MIX_INPUT_3_SOURCE: 1300 + case ARIZONA_HPLP4MIX_INPUT_3_VOLUME: 1301 + case ARIZONA_HPLP4MIX_INPUT_4_SOURCE: 1302 + case ARIZONA_HPLP4MIX_INPUT_4_VOLUME: 1303 + case ARIZONA_ISRC1DEC1MIX_INPUT_1_SOURCE: 1304 + case ARIZONA_ISRC1DEC2MIX_INPUT_1_SOURCE: 1305 + case ARIZONA_ISRC1INT1MIX_INPUT_1_SOURCE: 1306 + case ARIZONA_ISRC1INT2MIX_INPUT_1_SOURCE: 1307 + case ARIZONA_ISRC2DEC1MIX_INPUT_1_SOURCE: 1308 + case ARIZONA_ISRC2DEC2MIX_INPUT_1_SOURCE: 1309 + case ARIZONA_ISRC2INT1MIX_INPUT_1_SOURCE: 1310 + case ARIZONA_ISRC2INT2MIX_INPUT_1_SOURCE: 1311 + case ARIZONA_GPIO1_CTRL: 1312 + case ARIZONA_GPIO2_CTRL: 1313 + case ARIZONA_GPIO3_CTRL: 1314 + case ARIZONA_GPIO4_CTRL: 1315 + case ARIZONA_GPIO5_CTRL: 1316 + case ARIZONA_IRQ_CTRL_1: 1317 + case ARIZONA_GPIO_DEBOUNCE_CONFIG: 1318 + case ARIZONA_MISC_PAD_CTRL_1: 1319 + case ARIZONA_MISC_PAD_CTRL_2: 1320 + case ARIZONA_MISC_PAD_CTRL_3: 1321 + case ARIZONA_MISC_PAD_CTRL_4: 1322 + case ARIZONA_MISC_PAD_CTRL_5: 1323 + case ARIZONA_INTERRUPT_STATUS_1: 1324 + case ARIZONA_INTERRUPT_STATUS_2: 1325 + case ARIZONA_INTERRUPT_STATUS_3: 1326 + case ARIZONA_INTERRUPT_STATUS_4: 1327 + case ARIZONA_INTERRUPT_STATUS_5: 1328 + case ARIZONA_INTERRUPT_STATUS_1_MASK: 1329 + case ARIZONA_INTERRUPT_STATUS_3_MASK: 1330 + case ARIZONA_INTERRUPT_STATUS_4_MASK: 1331 + case ARIZONA_INTERRUPT_STATUS_5_MASK: 1332 + case ARIZONA_INTERRUPT_CONTROL: 1333 + case ARIZONA_IRQ2_STATUS_1: 1334 + case ARIZONA_IRQ2_STATUS_3: 1335 + case ARIZONA_IRQ2_STATUS_4: 1336 + case ARIZONA_IRQ2_STATUS_5: 1337 + case ARIZONA_IRQ2_STATUS_1_MASK: 1338 + case ARIZONA_IRQ2_STATUS_3_MASK: 1339 + case ARIZONA_IRQ2_STATUS_4_MASK: 1340 + case ARIZONA_IRQ2_STATUS_5_MASK: 1341 + case ARIZONA_IRQ2_CONTROL: 1342 + case ARIZONA_INTERRUPT_RAW_STATUS_3: 1343 + case ARIZONA_INTERRUPT_RAW_STATUS_4: 1344 + case ARIZONA_INTERRUPT_RAW_STATUS_5: 1345 + case ARIZONA_INTERRUPT_RAW_STATUS_6: 1346 + case ARIZONA_INTERRUPT_RAW_STATUS_7: 1347 + case ARIZONA_INTERRUPT_RAW_STATUS_8: 1348 + case ARIZONA_IRQ_PIN_STATUS: 1349 + case ARIZONA_AOD_WKUP_AND_TRIG: 1350 + case ARIZONA_AOD_IRQ1: 1351 + case ARIZONA_AOD_IRQ2: 1352 + case ARIZONA_AOD_IRQ_MASK_IRQ1: 1353 + case ARIZONA_AOD_IRQ_MASK_IRQ2: 1354 + case ARIZONA_AOD_IRQ_RAW_STATUS: 1355 + case ARIZONA_JACK_DETECT_DEBOUNCE: 1356 + case ARIZONA_FX_CTRL1: 1357 + case ARIZONA_FX_CTRL2: 1358 + case ARIZONA_EQ1_1: 1359 + case ARIZONA_EQ1_2: 1360 + case ARIZONA_EQ1_3: 1361 + case ARIZONA_EQ1_4: 1362 + case ARIZONA_EQ1_5: 1363 + case ARIZONA_EQ1_6: 1364 + case ARIZONA_EQ1_7: 1365 + case ARIZONA_EQ1_8: 1366 + case ARIZONA_EQ1_9: 1367 + case ARIZONA_EQ1_10: 1368 + case ARIZONA_EQ1_11: 1369 + case ARIZONA_EQ1_12: 1370 + case ARIZONA_EQ1_13: 1371 + case ARIZONA_EQ1_14: 1372 + case ARIZONA_EQ1_15: 1373 + case ARIZONA_EQ1_16: 1374 + case ARIZONA_EQ1_17: 1375 + case ARIZONA_EQ1_18: 1376 + case ARIZONA_EQ1_19: 1377 + case ARIZONA_EQ1_20: 1378 + case ARIZONA_EQ1_21: 1379 + case ARIZONA_EQ2_1: 1380 + case ARIZONA_EQ2_2: 1381 + case ARIZONA_EQ2_3: 1382 + case ARIZONA_EQ2_4: 1383 + case ARIZONA_EQ2_5: 1384 + case ARIZONA_EQ2_6: 1385 + case ARIZONA_EQ2_7: 1386 + case ARIZONA_EQ2_8: 1387 + case ARIZONA_EQ2_9: 1388 + case ARIZONA_EQ2_10: 1389 + case ARIZONA_EQ2_11: 1390 + case ARIZONA_EQ2_12: 1391 + case ARIZONA_EQ2_13: 1392 + case ARIZONA_EQ2_14: 1393 + case ARIZONA_EQ2_15: 1394 + case ARIZONA_EQ2_16: 1395 + case ARIZONA_EQ2_17: 1396 + case ARIZONA_EQ2_18: 1397 + case ARIZONA_EQ2_19: 1398 + case ARIZONA_EQ2_20: 1399 + case ARIZONA_EQ2_21: 1400 + case ARIZONA_EQ3_1: 1401 + case ARIZONA_EQ3_2: 1402 + case ARIZONA_EQ3_3: 1403 + case ARIZONA_EQ3_4: 1404 + case ARIZONA_EQ3_5: 1405 + case ARIZONA_EQ3_6: 1406 + case ARIZONA_EQ3_7: 1407 + case ARIZONA_EQ3_8: 1408 + case ARIZONA_EQ3_9: 1409 + case ARIZONA_EQ3_10: 1410 + case ARIZONA_EQ3_11: 1411 + case ARIZONA_EQ3_12: 1412 + case ARIZONA_EQ3_13: 1413 + case ARIZONA_EQ3_14: 1414 + case ARIZONA_EQ3_15: 1415 + case ARIZONA_EQ3_16: 1416 + case ARIZONA_EQ3_17: 1417 + case ARIZONA_EQ3_18: 1418 + case ARIZONA_EQ3_19: 1419 + case ARIZONA_EQ3_20: 1420 + case ARIZONA_EQ3_21: 1421 + case ARIZONA_EQ4_1: 1422 + case ARIZONA_EQ4_2: 1423 + case ARIZONA_EQ4_3: 1424 + case ARIZONA_EQ4_4: 1425 + case ARIZONA_EQ4_5: 1426 + case ARIZONA_EQ4_6: 1427 + case ARIZONA_EQ4_7: 1428 + case ARIZONA_EQ4_8: 1429 + case ARIZONA_EQ4_9: 1430 + case ARIZONA_EQ4_10: 1431 + case ARIZONA_EQ4_11: 1432 + case ARIZONA_EQ4_12: 1433 + case ARIZONA_EQ4_13: 1434 + case ARIZONA_EQ4_14: 1435 + case ARIZONA_EQ4_15: 1436 + case ARIZONA_EQ4_16: 1437 + case ARIZONA_EQ4_17: 1438 + case ARIZONA_EQ4_18: 1439 + case ARIZONA_EQ4_19: 1440 + case ARIZONA_EQ4_20: 1441 + case ARIZONA_EQ4_21: 1442 + case ARIZONA_DRC1_CTRL1: 1443 + case ARIZONA_DRC1_CTRL2: 1444 + case ARIZONA_DRC1_CTRL3: 1445 + case ARIZONA_DRC1_CTRL4: 1446 + case ARIZONA_DRC1_CTRL5: 1447 + case ARIZONA_HPLPF1_1: 1448 + case ARIZONA_HPLPF1_2: 1449 + case ARIZONA_HPLPF2_1: 1450 + case ARIZONA_HPLPF2_2: 1451 + case ARIZONA_HPLPF3_1: 1452 + case ARIZONA_HPLPF3_2: 1453 + case ARIZONA_HPLPF4_1: 1454 + case ARIZONA_HPLPF4_2: 1455 + case ARIZONA_ISRC_1_CTRL_1: 1456 + case ARIZONA_ISRC_1_CTRL_2: 1457 + case ARIZONA_ISRC_1_CTRL_3: 1458 + case ARIZONA_ISRC_2_CTRL_1: 1459 + case ARIZONA_ISRC_2_CTRL_2: 1460 + case ARIZONA_ISRC_2_CTRL_3: 1461 + return true; 1462 + default: 1463 + return false; 1464 + } 1465 + } 1466 + 1467 + static bool wm8997_volatile_register(struct device *dev, unsigned int reg) 1468 + { 1469 + switch (reg) { 1470 + case ARIZONA_SOFTWARE_RESET: 1471 + case ARIZONA_DEVICE_REVISION: 1472 + case ARIZONA_HAPTICS_STATUS: 1473 + case ARIZONA_SAMPLE_RATE_1_STATUS: 1474 + case ARIZONA_SAMPLE_RATE_2_STATUS: 1475 + case ARIZONA_SAMPLE_RATE_3_STATUS: 1476 + case ARIZONA_ASYNC_SAMPLE_RATE_1_STATUS: 1477 + case ARIZONA_MIC_DETECT_3: 1478 + case ARIZONA_HEADPHONE_DETECT_2: 1479 + case ARIZONA_INPUT_ENABLES_STATUS: 1480 + case ARIZONA_OUTPUT_STATUS_1: 1481 + case ARIZONA_RAW_OUTPUT_STATUS_1: 1482 + case ARIZONA_SLIMBUS_RX_PORT_STATUS: 1483 + case ARIZONA_SLIMBUS_TX_PORT_STATUS: 1484 + case ARIZONA_INTERRUPT_STATUS_1: 1485 + case ARIZONA_INTERRUPT_STATUS_2: 1486 + case ARIZONA_INTERRUPT_STATUS_3: 1487 + case ARIZONA_INTERRUPT_STATUS_4: 1488 + case ARIZONA_INTERRUPT_STATUS_5: 1489 + case ARIZONA_IRQ2_STATUS_1: 1490 + case ARIZONA_IRQ2_STATUS_3: 1491 + case ARIZONA_IRQ2_STATUS_4: 1492 + case ARIZONA_IRQ2_STATUS_5: 1493 + case ARIZONA_INTERRUPT_RAW_STATUS_3: 1494 + case ARIZONA_INTERRUPT_RAW_STATUS_4: 1495 + case ARIZONA_INTERRUPT_RAW_STATUS_5: 1496 + case ARIZONA_INTERRUPT_RAW_STATUS_6: 1497 + case ARIZONA_INTERRUPT_RAW_STATUS_7: 1498 + case ARIZONA_INTERRUPT_RAW_STATUS_8: 1499 + case ARIZONA_IRQ_PIN_STATUS: 1500 + case ARIZONA_AOD_WKUP_AND_TRIG: 1501 + case ARIZONA_AOD_IRQ1: 1502 + case ARIZONA_AOD_IRQ2: 1503 + case ARIZONA_AOD_IRQ_RAW_STATUS: 1504 + case ARIZONA_FX_CTRL2: 1505 + return true; 1506 + default: 1507 + return false; 1508 + } 1509 + } 1510 + 1511 + #define WM8997_MAX_REGISTER 0x31ff 1512 + 1513 + const struct regmap_config wm8997_i2c_regmap = { 1514 + .reg_bits = 32, 1515 + .val_bits = 16, 1516 + 1517 + .max_register = WM8997_MAX_REGISTER, 1518 + .readable_reg = wm8997_readable_register, 1519 + .volatile_reg = wm8997_volatile_register, 1520 + 1521 + .cache_type = REGCACHE_RBTREE, 1522 + .reg_defaults = wm8997_reg_default, 1523 + .num_reg_defaults = ARRAY_SIZE(wm8997_reg_default), 1524 + }; 1525 + EXPORT_SYMBOL_GPL(wm8997_i2c_regmap);
+2
include/linux/mfd/arizona/core.h
··· 23 23 enum arizona_type { 24 24 WM5102 = 1, 25 25 WM5110 = 2, 26 + WM8997 = 3, 26 27 }; 27 28 28 29 #define ARIZONA_IRQ_GP1 0 ··· 122 121 123 122 int wm5102_patch(struct arizona *arizona); 124 123 int wm5110_patch(struct arizona *arizona); 124 + int wm8997_patch(struct arizona *arizona); 125 125 126 126 #endif