1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * cs42l43 register definitions
4 *
5 * Copyright (c) 2022-2023 Cirrus Logic, Inc. and
6 * Cirrus Logic International Semiconductor Ltd.
7 */
8
9#ifndef CS42L43_CORE_REGS_H
10#define CS42L43_CORE_REGS_H
11
12/* Registers */
13#define CS42L43_GEN_INT_STAT_1 0x000000C0
14#define CS42L43_GEN_INT_MASK_1 0x000000C1
15#define CS42L43_DEVID 0x00003000
16#define CS42L43_REVID 0x00003004
17#define CS42L43_RELID 0x0000300C
18#define CS42L43_SFT_RESET 0x00003020
19#define CS42L43_DRV_CTRL1 0x00006004
20#define CS42L43_DRV_CTRL3 0x0000600C
21#define CS42L43_DRV_CTRL4 0x00006010
22#define CS42L43_DRV_CTRL_5 0x00006014
23#define CS42L43_GPIO_CTRL1 0x00006034
24#define CS42L43_GPIO_CTRL2 0x00006038
25#define CS42L43_GPIO_STS 0x0000603C
26#define CS42L43_GPIO_FN_SEL 0x00006040
27#define CS42L43_MCLK_SRC_SEL 0x00007004
28#define CS42L43_CCM_BLK_CLK_CONTROL 0x00007010
29#define CS42L43_SAMPLE_RATE1 0x00007014
30#define CS42L43_SAMPLE_RATE2 0x00007018
31#define CS42L43_SAMPLE_RATE3 0x0000701C
32#define CS42L43_SAMPLE_RATE4 0x00007020
33#define CS42L43_PLL_CONTROL 0x00007034
34#define CS42L43_FS_SELECT1 0x00007038
35#define CS42L43_FS_SELECT2 0x0000703C
36#define CS42L43_FS_SELECT3 0x00007040
37#define CS42L43_FS_SELECT4 0x00007044
38#define CS42L43_PDM_CONTROL 0x0000704C
39#define CS42L43_ASP_CLK_CONFIG1 0x00007058
40#define CS42L43_ASP_CLK_CONFIG2 0x0000705C
41#define CS42L43_OSC_DIV_SEL 0x00007068
42#define CS42L43_ADC_B_CTRL1 0x00008000
43#define CS42L43_ADC_B_CTRL2 0x00008004
44#define CS42L43_DECIM_HPF_WNF_CTRL1 0x0000803C
45#define CS42L43_DECIM_HPF_WNF_CTRL2 0x00008040
46#define CS42L43_DECIM_HPF_WNF_CTRL3 0x00008044
47#define CS42L43_DECIM_HPF_WNF_CTRL4 0x00008048
48#define CS42L43_DMIC_PDM_CTRL 0x0000804C
49#define CS42L43_DECIM_VOL_CTRL_CH1_CH2 0x00008050
50#define CS42L43_DECIM_VOL_CTRL_CH3_CH4 0x00008054
51#define CS42L43_DECIM_VOL_CTRL_UPDATE 0x00008058
52#define CS42L43_INTP_VOLUME_CTRL1 0x00009008
53#define CS42L43_INTP_VOLUME_CTRL2 0x0000900C
54#define CS42L43_AMP1_2_VOL_RAMP 0x00009010
55#define CS42L43_ASP_CTRL 0x0000A000
56#define CS42L43_ASP_FSYNC_CTRL1 0x0000A004
57#define CS42L43_ASP_FSYNC_CTRL2 0x0000A008
58#define CS42L43_ASP_FSYNC_CTRL3 0x0000A00C
59#define CS42L43_ASP_FSYNC_CTRL4 0x0000A010
60#define CS42L43_ASP_DATA_CTRL 0x0000A018
61#define CS42L43_ASP_RX_EN 0x0000A020
62#define CS42L43_ASP_TX_EN 0x0000A024
63#define CS42L43_ASP_RX_CH1_CTRL 0x0000A028
64#define CS42L43_ASP_RX_CH2_CTRL 0x0000A02C
65#define CS42L43_ASP_RX_CH3_CTRL 0x0000A030
66#define CS42L43_ASP_RX_CH4_CTRL 0x0000A034
67#define CS42L43_ASP_RX_CH5_CTRL 0x0000A038
68#define CS42L43_ASP_RX_CH6_CTRL 0x0000A03C
69#define CS42L43_ASP_TX_CH1_CTRL 0x0000A068
70#define CS42L43_ASP_TX_CH2_CTRL 0x0000A06C
71#define CS42L43_ASP_TX_CH3_CTRL 0x0000A070
72#define CS42L43_ASP_TX_CH4_CTRL 0x0000A074
73#define CS42L43_ASP_TX_CH5_CTRL 0x0000A078
74#define CS42L43_ASP_TX_CH6_CTRL 0x0000A07C
75#define CS42L43_OTP_REVISION_ID 0x0000B02C
76#define CS42L43_ASPTX1_INPUT 0x0000C200
77#define CS42L43_ASPTX2_INPUT 0x0000C210
78#define CS42L43_ASPTX3_INPUT 0x0000C220
79#define CS42L43_ASPTX4_INPUT 0x0000C230
80#define CS42L43_ASPTX5_INPUT 0x0000C240
81#define CS42L43_ASPTX6_INPUT 0x0000C250
82#define CS42L43_SWIRE_DP1_CH1_INPUT 0x0000C280
83#define CS42L43_SWIRE_DP1_CH2_INPUT 0x0000C290
84#define CS42L43_SWIRE_DP1_CH3_INPUT 0x0000C2A0
85#define CS42L43_SWIRE_DP1_CH4_INPUT 0x0000C2B0
86#define CS42L43_SWIRE_DP2_CH1_INPUT 0x0000C2C0
87#define CS42L43_SWIRE_DP2_CH2_INPUT 0x0000C2D0
88#define CS42L43_SWIRE_DP3_CH1_INPUT 0x0000C2E0
89#define CS42L43_SWIRE_DP3_CH2_INPUT 0x0000C2F0
90#define CS42L43_SWIRE_DP4_CH1_INPUT 0x0000C300
91#define CS42L43_SWIRE_DP4_CH2_INPUT 0x0000C310
92#define CS42L43_ASRC_INT1_INPUT1 0x0000C400
93#define CS42L43_ASRC_INT2_INPUT1 0x0000C410
94#define CS42L43_ASRC_INT3_INPUT1 0x0000C420
95#define CS42L43_ASRC_INT4_INPUT1 0x0000C430
96#define CS42L43_ASRC_DEC1_INPUT1 0x0000C440
97#define CS42L43_ASRC_DEC2_INPUT1 0x0000C450
98#define CS42L43_ASRC_DEC3_INPUT1 0x0000C460
99#define CS42L43_ASRC_DEC4_INPUT1 0x0000C470
100#define CS42L43_ISRC1INT1_INPUT1 0x0000C500
101#define CS42L43_ISRC1INT2_INPUT1 0x0000C510
102#define CS42L43_ISRC1DEC1_INPUT1 0x0000C520
103#define CS42L43_ISRC1DEC2_INPUT1 0x0000C530
104#define CS42L43_ISRC2INT1_INPUT1 0x0000C540
105#define CS42L43_ISRC2INT2_INPUT1 0x0000C550
106#define CS42L43_ISRC2DEC1_INPUT1 0x0000C560
107#define CS42L43_ISRC2DEC2_INPUT1 0x0000C570
108#define CS42L43_EQ1MIX_INPUT1 0x0000C580
109#define CS42L43_EQ1MIX_INPUT2 0x0000C584
110#define CS42L43_EQ1MIX_INPUT3 0x0000C588
111#define CS42L43_EQ1MIX_INPUT4 0x0000C58C
112#define CS42L43_EQ2MIX_INPUT1 0x0000C590
113#define CS42L43_EQ2MIX_INPUT2 0x0000C594
114#define CS42L43_EQ2MIX_INPUT3 0x0000C598
115#define CS42L43_EQ2MIX_INPUT4 0x0000C59C
116#define CS42L43_SPDIF1_INPUT1 0x0000C600
117#define CS42L43_SPDIF2_INPUT1 0x0000C610
118#define CS42L43_AMP1MIX_INPUT1 0x0000C620
119#define CS42L43_AMP1MIX_INPUT2 0x0000C624
120#define CS42L43_AMP1MIX_INPUT3 0x0000C628
121#define CS42L43_AMP1MIX_INPUT4 0x0000C62C
122#define CS42L43_AMP2MIX_INPUT1 0x0000C630
123#define CS42L43_AMP2MIX_INPUT2 0x0000C634
124#define CS42L43_AMP2MIX_INPUT3 0x0000C638
125#define CS42L43_AMP2MIX_INPUT4 0x0000C63C
126#define CS42L43_AMP3MIX_INPUT1 0x0000C640
127#define CS42L43_AMP3MIX_INPUT2 0x0000C644
128#define CS42L43_AMP3MIX_INPUT3 0x0000C648
129#define CS42L43_AMP3MIX_INPUT4 0x0000C64C
130#define CS42L43_AMP4MIX_INPUT1 0x0000C650
131#define CS42L43_AMP4MIX_INPUT2 0x0000C654
132#define CS42L43_AMP4MIX_INPUT3 0x0000C658
133#define CS42L43_AMP4MIX_INPUT4 0x0000C65C
134#define CS42L43_ASRC_INT_ENABLES 0x0000E000
135#define CS42L43_ASRC_DEC_ENABLES 0x0000E004
136#define CS42L43_PDNCNTL 0x00010000
137#define CS42L43_RINGSENSE_DEB_CTRL 0x0001001C
138#define CS42L43_TIPSENSE_DEB_CTRL 0x00010020
139#define CS42L43_TIP_RING_SENSE_INTERRUPT_STATUS 0x00010028
140#define CS42L43_HS2 0x00010040
141#define CS42L43_HS_STAT 0x00010048
142#define CS42L43_MCU_SW_INTERRUPT 0x00010094
143#define CS42L43_STEREO_MIC_CTRL 0x000100A4
144#define CS42L43_STEREO_MIC_CLAMP_CTRL 0x000100C4
145#define CS42L43_BLOCK_EN2 0x00010104
146#define CS42L43_BLOCK_EN3 0x00010108
147#define CS42L43_BLOCK_EN4 0x0001010C
148#define CS42L43_BLOCK_EN5 0x00010110
149#define CS42L43_BLOCK_EN6 0x00010114
150#define CS42L43_BLOCK_EN7 0x00010118
151#define CS42L43_BLOCK_EN8 0x0001011C
152#define CS42L43_BLOCK_EN9 0x00010120
153#define CS42L43_BLOCK_EN10 0x00010124
154#define CS42L43_BLOCK_EN11 0x00010128
155#define CS42L43_TONE_CH1_CTRL 0x00010134
156#define CS42L43_TONE_CH2_CTRL 0x00010138
157#define CS42L43_MIC_DETECT_CONTROL_1 0x00011074
158#define CS42L43_DETECT_STATUS_1 0x0001107C
159#define CS42L43_HS_BIAS_SENSE_AND_CLAMP_AUTOCONTROL 0x00011090
160#define CS42L43_MIC_DETECT_CONTROL_ANDROID 0x000110B0
161#define CS42L43_ISRC1_CTRL 0x00012004
162#define CS42L43_ISRC2_CTRL 0x00013004
163#define CS42L43_CTRL_REG 0x00014000
164#define CS42L43_FDIV_FRAC 0x00014004
165#define CS42L43_CAL_RATIO 0x00014008
166#define CS42L43_SPI_CLK_CONFIG1 0x00016004
167#define CS42L43_SPI_CONFIG1 0x00016010
168#define CS42L43_SPI_CONFIG2 0x00016014
169#define CS42L43_SPI_CONFIG3 0x00016018
170#define CS42L43_SPI_CONFIG4 0x00016024
171#define CS42L43_SPI_STATUS1 0x00016100
172#define CS42L43_SPI_STATUS2 0x00016104
173#define CS42L43_TRAN_CONFIG1 0x00016200
174#define CS42L43_TRAN_CONFIG2 0x00016204
175#define CS42L43_TRAN_CONFIG3 0x00016208
176#define CS42L43_TRAN_CONFIG4 0x0001620C
177#define CS42L43_TRAN_CONFIG5 0x00016220
178#define CS42L43_TRAN_CONFIG6 0x00016224
179#define CS42L43_TRAN_CONFIG7 0x00016228
180#define CS42L43_TRAN_CONFIG8 0x0001622C
181#define CS42L43_TRAN_STATUS1 0x00016300
182#define CS42L43_TRAN_STATUS2 0x00016304
183#define CS42L43_TRAN_STATUS3 0x00016308
184#define CS42L43_TX_DATA 0x00016400
185#define CS42L43_RX_DATA 0x00016600
186#define CS42L43_DACCNFG1 0x00017000
187#define CS42L43_DACCNFG2 0x00017004
188#define CS42L43_HPPATHVOL 0x0001700C
189#define CS42L43_PGAVOL 0x00017014
190#define CS42L43_LOADDETRESULTS 0x00017018
191#define CS42L43_LOADDETENA 0x00017024
192#define CS42L43_CTRL 0x00017028
193#define CS42L43_COEFF_DATA_IN0 0x00018000
194#define CS42L43_COEFF_RD_WR0 0x00018008
195#define CS42L43_INIT_DONE0 0x00018010
196#define CS42L43_START_EQZ0 0x00018014
197#define CS42L43_MUTE_EQ_IN0 0x0001801C
198#define CS42L43_DECIM_INT 0x0001B000
199#define CS42L43_EQ_INT 0x0001B004
200#define CS42L43_ASP_INT 0x0001B008
201#define CS42L43_PLL_INT 0x0001B00C
202#define CS42L43_SOFT_INT 0x0001B010
203#define CS42L43_SWIRE_INT 0x0001B014
204#define CS42L43_MSM_INT 0x0001B018
205#define CS42L43_ACC_DET_INT 0x0001B01C
206#define CS42L43_I2C_TGT_INT 0x0001B020
207#define CS42L43_SPI_MSTR_INT 0x0001B024
208#define CS42L43_SW_TO_SPI_BRIDGE_INT 0x0001B028
209#define CS42L43_OTP_INT 0x0001B02C
210#define CS42L43_CLASS_D_AMP_INT 0x0001B030
211#define CS42L43_GPIO_INT 0x0001B034
212#define CS42L43_ASRC_INT 0x0001B038
213#define CS42L43_HPOUT_INT 0x0001B03C
214#define CS42L43_DECIM_MASK 0x0001B0A0
215#define CS42L43_EQ_MIX_MASK 0x0001B0A4
216#define CS42L43_ASP_MASK 0x0001B0A8
217#define CS42L43_PLL_MASK 0x0001B0AC
218#define CS42L43_SOFT_MASK 0x0001B0B0
219#define CS42L43_SWIRE_MASK 0x0001B0B4
220#define CS42L43_MSM_MASK 0x0001B0B8
221#define CS42L43_ACC_DET_MASK 0x0001B0BC
222#define CS42L43_I2C_TGT_MASK 0x0001B0C0
223#define CS42L43_SPI_MSTR_MASK 0x0001B0C4
224#define CS42L43_SW_TO_SPI_BRIDGE_MASK 0x0001B0C8
225#define CS42L43_OTP_MASK 0x0001B0CC
226#define CS42L43_CLASS_D_AMP_MASK 0x0001B0D0
227#define CS42L43_GPIO_INT_MASK 0x0001B0D4
228#define CS42L43_ASRC_MASK 0x0001B0D8
229#define CS42L43_HPOUT_MASK 0x0001B0DC
230#define CS42L43_DECIM_INT_SHADOW 0x0001B300
231#define CS42L43_EQ_MIX_INT_SHADOW 0x0001B304
232#define CS42L43_ASP_INT_SHADOW 0x0001B308
233#define CS42L43_PLL_INT_SHADOW 0x0001B30C
234#define CS42L43_SOFT_INT_SHADOW 0x0001B310
235#define CS42L43_SWIRE_INT_SHADOW 0x0001B314
236#define CS42L43_MSM_INT_SHADOW 0x0001B318
237#define CS42L43_ACC_DET_INT_SHADOW 0x0001B31C
238#define CS42L43_I2C_TGT_INT_SHADOW 0x0001B320
239#define CS42L43_SPI_MSTR_INT_SHADOW 0x0001B324
240#define CS42L43_SW_TO_SPI_BRIDGE_SHADOW 0x0001B328
241#define CS42L43_OTP_INT_SHADOW 0x0001B32C
242#define CS42L43_CLASS_D_AMP_INT_SHADOW 0x0001B330
243#define CS42L43_GPIO_SHADOW 0x0001B334
244#define CS42L43_ASRC_SHADOW 0x0001B338
245#define CS42L43_HP_OUT_SHADOW 0x0001B33C
246#define CS42L43_BOOT_CONTROL 0x00101000
247#define CS42L43_BLOCK_EN 0x00101008
248#define CS42L43_SHUTTER_CONTROL 0x0010100C
249#define CS42L43_MCU_SW_REV 0x00114000
250#define CS42L43_PATCH_START_ADDR 0x00114004
251#define CS42L43_NEED_CONFIGS 0x0011400C
252#define CS42L43_BOOT_STATUS 0x0011401C
253#define CS42L43_FW_SH_BOOT_CFG_NEED_CONFIGS 0x0011F8F8
254#define CS42L43_FW_MISSION_CTRL_NEED_CONFIGS 0x0011FE00
255#define CS42L43_FW_MISSION_CTRL_HAVE_CONFIGS 0x0011FE04
256#define CS42L43_FW_MISSION_CTRL_MM_CTRL_SELECTION 0x0011FE0C
257#define CS42L43_FW_MISSION_CTRL_MM_MCU_CFG_REG 0x0011FE10
258#define CS42L43_MCU_RAM_MAX 0x0011FFFF
259
260/* CS42L43_DEVID */
261#define CS42L43_DEVID_VAL 0x00042A43
262
263/* CS42L43_GEN_INT_STAT_1 */
264#define CS42L43_INT_STAT_GEN1_MASK 0x00000001
265#define CS42L43_INT_STAT_GEN1_SHIFT 0
266
267/* CS42L43_SFT_RESET */
268#define CS42L43_SFT_RESET_MASK 0xFF000000
269#define CS42L43_SFT_RESET_SHIFT 24
270
271#define CS42L43_SFT_RESET_VAL 0x5A000000
272
273/* CS42L43_DRV_CTRL1 */
274#define CS42L43_ASP_DOUT_DRV_MASK 0x00038000
275#define CS42L43_ASP_DOUT_DRV_SHIFT 15
276#define CS42L43_ASP_FSYNC_DRV_MASK 0x00000E00
277#define CS42L43_ASP_FSYNC_DRV_SHIFT 9
278#define CS42L43_ASP_BCLK_DRV_MASK 0x000001C0
279#define CS42L43_ASP_BCLK_DRV_SHIFT 6
280
281/* CS42L43_DRV_CTRL3 */
282#define CS42L43_I2C_ADDR_DRV_MASK 0x30000000
283#define CS42L43_I2C_ADDR_DRV_SHIFT 28
284#define CS42L43_I2C_SDA_DRV_MASK 0x0C000000
285#define CS42L43_I2C_SDA_DRV_SHIFT 26
286#define CS42L43_PDMOUT2_CLK_DRV_MASK 0x00E00000
287#define CS42L43_PDMOUT2_CLK_DRV_SHIFT 21
288#define CS42L43_PDMOUT2_DATA_DRV_MASK 0x001C0000
289#define CS42L43_PDMOUT2_DATA_DRV_SHIFT 18
290#define CS42L43_PDMOUT1_CLK_DRV_MASK 0x00038000
291#define CS42L43_PDMOUT1_CLK_DRV_SHIFT 15
292#define CS42L43_PDMOUT1_DATA_DRV_MASK 0x00007000
293#define CS42L43_PDMOUT1_DATA_DRV_SHIFT 12
294#define CS42L43_SPI_MISO_DRV_MASK 0x00000038
295#define CS42L43_SPI_MISO_DRV_SHIFT 3
296
297/* CS42L43_DRV_CTRL4 */
298#define CS42L43_GPIO3_DRV_MASK 0x00000E00
299#define CS42L43_GPIO3_DRV_SHIFT 9
300#define CS42L43_GPIO2_DRV_MASK 0x000001C0
301#define CS42L43_GPIO2_DRV_SHIFT 6
302#define CS42L43_GPIO1_DRV_MASK 0x00000038
303#define CS42L43_GPIO1_DRV_SHIFT 3
304
305/* CS42L43_DRV_CTRL_5 */
306#define CS42L43_I2C_SCL_DRV_MASK 0x18000000
307#define CS42L43_I2C_SCL_DRV_SHIFT 27
308#define CS42L43_SPI_SCK_DRV_MASK 0x07000000
309#define CS42L43_SPI_SCK_DRV_SHIFT 24
310#define CS42L43_SPI_MOSI_DRV_MASK 0x00E00000
311#define CS42L43_SPI_MOSI_DRV_SHIFT 21
312#define CS42L43_SPI_SSB_DRV_MASK 0x001C0000
313#define CS42L43_SPI_SSB_DRV_SHIFT 18
314#define CS42L43_ASP_DIN_DRV_MASK 0x000001C0
315#define CS42L43_ASP_DIN_DRV_SHIFT 6
316
317/* CS42L43_GPIO_CTRL1 */
318#define CS42L43_GPIO3_POL_MASK 0x00040000
319#define CS42L43_GPIO3_POL_SHIFT 18
320#define CS42L43_GPIO2_POL_MASK 0x00020000
321#define CS42L43_GPIO2_POL_SHIFT 17
322#define CS42L43_GPIO1_POL_MASK 0x00010000
323#define CS42L43_GPIO1_POL_SHIFT 16
324#define CS42L43_GPIO3_LVL_MASK 0x00000400
325#define CS42L43_GPIO3_LVL_SHIFT 10
326#define CS42L43_GPIO2_LVL_MASK 0x00000200
327#define CS42L43_GPIO2_LVL_SHIFT 9
328#define CS42L43_GPIO1_LVL_MASK 0x00000100
329#define CS42L43_GPIO1_LVL_SHIFT 8
330#define CS42L43_GPIO3_DIR_MASK 0x00000004
331#define CS42L43_GPIO3_DIR_SHIFT 2
332#define CS42L43_GPIO2_DIR_MASK 0x00000002
333#define CS42L43_GPIO2_DIR_SHIFT 1
334#define CS42L43_GPIO1_DIR_MASK 0x00000001
335#define CS42L43_GPIO1_DIR_SHIFT 0
336
337/* CS42L43_GPIO_CTRL2 */
338#define CS42L43_GPIO3_DEGLITCH_BYP_MASK 0x00000004
339#define CS42L43_GPIO3_DEGLITCH_BYP_SHIFT 2
340#define CS42L43_GPIO2_DEGLITCH_BYP_MASK 0x00000002
341#define CS42L43_GPIO2_DEGLITCH_BYP_SHIFT 1
342#define CS42L43_GPIO1_DEGLITCH_BYP_MASK 0x00000001
343#define CS42L43_GPIO1_DEGLITCH_BYP_SHIFT 0
344
345/* CS42L43_GPIO_STS */
346#define CS42L43_GPIO3_STS_MASK 0x00000004
347#define CS42L43_GPIO3_STS_SHIFT 2
348#define CS42L43_GPIO2_STS_MASK 0x00000002
349#define CS42L43_GPIO2_STS_SHIFT 1
350#define CS42L43_GPIO1_STS_MASK 0x00000001
351#define CS42L43_GPIO1_STS_SHIFT 0
352
353/* CS42L43_GPIO_FN_SEL */
354#define CS42L43_GPIO3_FN_SEL_MASK 0x00000004
355#define CS42L43_GPIO3_FN_SEL_SHIFT 2
356#define CS42L43_GPIO1_FN_SEL_MASK 0x00000001
357#define CS42L43_GPIO1_FN_SEL_SHIFT 0
358
359/* CS42L43_MCLK_SRC_SEL */
360#define CS42L43_OSC_PLL_MCLK_SEL_MASK 0x00000001
361#define CS42L43_OSC_PLL_MCLK_SEL_SHIFT 0
362
363/* CS42L43_SAMPLE_RATE1..CS42L43_SAMPLE_RATE4 */
364#define CS42L43_SAMPLE_RATE_MASK 0x0000001F
365#define CS42L43_SAMPLE_RATE_SHIFT 0
366
367/* CS42L43_PLL_CONTROL */
368#define CS42L43_PLL_REFCLK_EN_MASK 0x00000008
369#define CS42L43_PLL_REFCLK_EN_SHIFT 3
370#define CS42L43_PLL_REFCLK_DIV_MASK 0x00000006
371#define CS42L43_PLL_REFCLK_DIV_SHIFT 1
372#define CS42L43_PLL_REFCLK_SRC_MASK 0x00000001
373#define CS42L43_PLL_REFCLK_SRC_SHIFT 0
374
375/* CS42L43_FS_SELECT1 */
376#define CS42L43_ASP_RATE_MASK 0x00000003
377#define CS42L43_ASP_RATE_SHIFT 0
378
379/* CS42L43_FS_SELECT2 */
380#define CS42L43_ASRC_DEC_OUT_RATE_MASK 0x000000C0
381#define CS42L43_ASRC_DEC_OUT_RATE_SHIFT 6
382#define CS42L43_ASRC_INT_OUT_RATE_MASK 0x00000030
383#define CS42L43_ASRC_INT_OUT_RATE_SHIFT 4
384#define CS42L43_ASRC_DEC_IN_RATE_MASK 0x0000000C
385#define CS42L43_ASRC_DEC_IN_RATE_SHIFT 2
386#define CS42L43_ASRC_INT_IN_RATE_MASK 0x00000003
387#define CS42L43_ASRC_INT_IN_RATE_SHIFT 0
388
389/* CS42L43_FS_SELECT3 */
390#define CS42L43_HPOUT_RATE_MASK 0x0000C000
391#define CS42L43_HPOUT_RATE_SHIFT 14
392#define CS42L43_EQZ_RATE_MASK 0x00003000
393#define CS42L43_EQZ_RATE_SHIFT 12
394#define CS42L43_DIAGGEN_RATE_MASK 0x00000C00
395#define CS42L43_DIAGGEN_RATE_SHIFT 10
396#define CS42L43_DECIM_CH4_RATE_MASK 0x00000300
397#define CS42L43_DECIM_CH4_RATE_SHIFT 8
398#define CS42L43_DECIM_CH3_RATE_MASK 0x000000C0
399#define CS42L43_DECIM_CH3_RATE_SHIFT 6
400#define CS42L43_DECIM_CH2_RATE_MASK 0x00000030
401#define CS42L43_DECIM_CH2_RATE_SHIFT 4
402#define CS42L43_DECIM_CH1_RATE_MASK 0x0000000C
403#define CS42L43_DECIM_CH1_RATE_SHIFT 2
404#define CS42L43_AMP1_2_RATE_MASK 0x00000003
405#define CS42L43_AMP1_2_RATE_SHIFT 0
406
407/* CS42L43_FS_SELECT4 */
408#define CS42L43_SW_DP7_RATE_MASK 0x00C00000
409#define CS42L43_SW_DP7_RATE_SHIFT 22
410#define CS42L43_SW_DP6_RATE_MASK 0x00300000
411#define CS42L43_SW_DP6_RATE_SHIFT 20
412#define CS42L43_SPDIF_RATE_MASK 0x000C0000
413#define CS42L43_SPDIF_RATE_SHIFT 18
414#define CS42L43_SW_DP5_RATE_MASK 0x00030000
415#define CS42L43_SW_DP5_RATE_SHIFT 16
416#define CS42L43_SW_DP4_RATE_MASK 0x0000C000
417#define CS42L43_SW_DP4_RATE_SHIFT 14
418#define CS42L43_SW_DP3_RATE_MASK 0x00003000
419#define CS42L43_SW_DP3_RATE_SHIFT 12
420#define CS42L43_SW_DP2_RATE_MASK 0x00000C00
421#define CS42L43_SW_DP2_RATE_SHIFT 10
422#define CS42L43_SW_DP1_RATE_MASK 0x00000300
423#define CS42L43_SW_DP1_RATE_SHIFT 8
424#define CS42L43_ISRC2_LOW_RATE_MASK 0x000000C0
425#define CS42L43_ISRC2_LOW_RATE_SHIFT 6
426#define CS42L43_ISRC2_HIGH_RATE_MASK 0x00000030
427#define CS42L43_ISRC2_HIGH_RATE_SHIFT 4
428#define CS42L43_ISRC1_LOW_RATE_MASK 0x0000000C
429#define CS42L43_ISRC1_LOW_RATE_SHIFT 2
430#define CS42L43_ISRC1_HIGH_RATE_MASK 0x00000003
431#define CS42L43_ISRC1_HIGH_RATE_SHIFT 0
432
433/* CS42L43_PDM_CONTROL */
434#define CS42L43_PDM2_CLK_DIV_MASK 0x0000000C
435#define CS42L43_PDM2_CLK_DIV_SHIFT 2
436#define CS42L43_PDM1_CLK_DIV_MASK 0x00000003
437#define CS42L43_PDM1_CLK_DIV_SHIFT 0
438
439/* CS42L43_ASP_CLK_CONFIG1 */
440#define CS42L43_ASP_BCLK_N_MASK 0x03FF0000
441#define CS42L43_ASP_BCLK_N_SHIFT 16
442#define CS42L43_ASP_BCLK_M_MASK 0x000003FF
443#define CS42L43_ASP_BCLK_M_SHIFT 0
444
445/* CS42L43_ASP_CLK_CONFIG2 */
446#define CS42L43_ASP_MASTER_MODE_MASK 0x00000002
447#define CS42L43_ASP_MASTER_MODE_SHIFT 1
448#define CS42L43_ASP_BCLK_INV_MASK 0x00000001
449#define CS42L43_ASP_BCLK_INV_SHIFT 0
450
451/* CS42L43_OSC_DIV_SEL */
452#define CS42L43_OSC_DIV2_EN_MASK 0x00000001
453#define CS42L43_OSC_DIV2_EN_SHIFT 0
454
455/* CS42L43_ADC_B_CTRL1..CS42L43_ADC_B_CTRL1 */
456#define CS42L43_PGA_WIDESWING_MODE_EN_MASK 0x00000080
457#define CS42L43_PGA_WIDESWING_MODE_EN_SHIFT 7
458#define CS42L43_ADC_AIN_SEL_MASK 0x00000010
459#define CS42L43_ADC_AIN_SEL_SHIFT 4
460#define CS42L43_ADC_PGA_GAIN_MASK 0x0000000F
461#define CS42L43_ADC_PGA_GAIN_SHIFT 0
462
463/* CS42L43_DECIM_HPF_WNF_CTRL1..CS42L43_DECIM_HPF_WNF_CTRL4 */
464#define CS42L43_DECIM_WNF_CF_MASK 0x00000070
465#define CS42L43_DECIM_WNF_CF_SHIFT 4
466#define CS42L43_DECIM_WNF_EN_MASK 0x00000008
467#define CS42L43_DECIM_WNF_EN_SHIFT 3
468#define CS42L43_DECIM_HPF_CF_MASK 0x00000006
469#define CS42L43_DECIM_HPF_CF_SHIFT 1
470#define CS42L43_DECIM_HPF_EN_MASK 0x00000001
471#define CS42L43_DECIM_HPF_EN_SHIFT 0
472
473/* CS42L43_DMIC_PDM_CTRL */
474#define CS42L43_PDM2R_INV_MASK 0x00000020
475#define CS42L43_PDM2R_INV_SHIFT 5
476#define CS42L43_PDM2L_INV_MASK 0x00000010
477#define CS42L43_PDM2L_INV_SHIFT 4
478#define CS42L43_PDM1R_INV_MASK 0x00000008
479#define CS42L43_PDM1R_INV_SHIFT 3
480#define CS42L43_PDM1L_INV_MASK 0x00000004
481#define CS42L43_PDM1L_INV_SHIFT 2
482
483/* CS42L43_DECIM_VOL_CTRL_CH1_CH2 */
484#define CS42L43_DECIM2_MUTE_MASK 0x80000000
485#define CS42L43_DECIM2_MUTE_SHIFT 31
486#define CS42L43_DECIM2_VOL_MASK 0x3FC00000
487#define CS42L43_DECIM2_VOL_SHIFT 22
488#define CS42L43_DECIM2_VD_RAMP_MASK 0x00380000
489#define CS42L43_DECIM2_VD_RAMP_SHIFT 19
490#define CS42L43_DECIM2_VI_RAMP_MASK 0x00070000
491#define CS42L43_DECIM2_VI_RAMP_SHIFT 16
492#define CS42L43_DECIM1_MUTE_MASK 0x00008000
493#define CS42L43_DECIM1_MUTE_SHIFT 15
494#define CS42L43_DECIM1_VOL_MASK 0x00003FC0
495#define CS42L43_DECIM1_VOL_SHIFT 6
496#define CS42L43_DECIM1_VD_RAMP_MASK 0x00000038
497#define CS42L43_DECIM1_VD_RAMP_SHIFT 3
498#define CS42L43_DECIM1_VI_RAMP_MASK 0x00000007
499#define CS42L43_DECIM1_VI_RAMP_SHIFT 0
500
501/* CS42L43_DECIM_VOL_CTRL_CH3_CH4 */
502#define CS42L43_DECIM4_MUTE_MASK 0x80000000
503#define CS42L43_DECIM4_MUTE_SHIFT 31
504#define CS42L43_DECIM4_VOL_MASK 0x3FC00000
505#define CS42L43_DECIM4_VOL_SHIFT 22
506#define CS42L43_DECIM4_VD_RAMP_MASK 0x00380000
507#define CS42L43_DECIM4_VD_RAMP_SHIFT 19
508#define CS42L43_DECIM4_VI_RAMP_MASK 0x00070000
509#define CS42L43_DECIM4_VI_RAMP_SHIFT 16
510#define CS42L43_DECIM3_MUTE_MASK 0x00008000
511#define CS42L43_DECIM3_MUTE_SHIFT 15
512#define CS42L43_DECIM3_VOL_MASK 0x00003FC0
513#define CS42L43_DECIM3_VOL_SHIFT 6
514#define CS42L43_DECIM3_VD_RAMP_MASK 0x00000038
515#define CS42L43_DECIM3_VD_RAMP_SHIFT 3
516#define CS42L43_DECIM3_VI_RAMP_MASK 0x00000007
517#define CS42L43_DECIM3_VI_RAMP_SHIFT 0
518
519/* CS42L43_DECIM_VOL_CTRL_UPDATE */
520#define CS42L43_DECIM4_VOL_UPDATE_MASK 0x00000008
521#define CS42L43_DECIM4_VOL_UPDATE_SHIFT 3
522#define CS42L43_DECIM3_VOL_UPDATE_MASK 0x00000004
523#define CS42L43_DECIM3_VOL_UPDATE_SHIFT 2
524#define CS42L43_DECIM2_VOL_UPDATE_MASK 0x00000002
525#define CS42L43_DECIM2_VOL_UPDATE_SHIFT 1
526#define CS42L43_DECIM1_VOL_UPDATE_MASK 0x00000001
527#define CS42L43_DECIM1_VOL_UPDATE_SHIFT 0
528
529/* CS42L43_INTP_VOLUME_CTRL1..CS42L43_INTP_VOLUME_CTRL2 */
530#define CS42L43_AMP1_2_VU_MASK 0x00000200
531#define CS42L43_AMP1_2_VU_SHIFT 9
532#define CS42L43_AMP_MUTE_MASK 0x00000100
533#define CS42L43_AMP_MUTE_SHIFT 8
534#define CS42L43_AMP_VOL_MASK 0x000000FF
535#define CS42L43_AMP_VOL_SHIFT 0
536
537/* CS42L43_AMP1_2_VOL_RAMP */
538#define CS42L43_AMP1_2_VD_RAMP_MASK 0x00000070
539#define CS42L43_AMP1_2_VD_RAMP_SHIFT 4
540#define CS42L43_AMP1_2_VI_RAMP_MASK 0x00000007
541#define CS42L43_AMP1_2_VI_RAMP_SHIFT 0
542
543/* CS42L43_ASP_CTRL */
544#define CS42L43_ASP_FSYNC_MODE_MASK 0x00000004
545#define CS42L43_ASP_FSYNC_MODE_SHIFT 2
546#define CS42L43_ASP_BCLK_EN_MASK 0x00000002
547#define CS42L43_ASP_BCLK_EN_SHIFT 1
548#define CS42L43_ASP_FSYNC_EN_MASK 0x00000001
549#define CS42L43_ASP_FSYNC_EN_SHIFT 0
550
551/* CS42L43_ASP_FSYNC_CTRL1 */
552#define CS42L43_ASP_FSYNC_M_MASK 0x0007FFFF
553#define CS42L43_ASP_FSYNC_M_SHIFT 0
554
555/* CS42L43_ASP_FSYNC_CTRL3 */
556#define CS42L43_ASP_FSYNC_IN_INV_MASK 0x00000002
557#define CS42L43_ASP_FSYNC_IN_INV_SHIFT 1
558#define CS42L43_ASP_FSYNC_OUT_INV_MASK 0x00000001
559#define CS42L43_ASP_FSYNC_OUT_INV_SHIFT 0
560
561/* CS42L43_ASP_FSYNC_CTRL4 */
562#define CS42L43_ASP_NUM_BCLKS_PER_FSYNC_MASK 0x00001FFE
563#define CS42L43_ASP_NUM_BCLKS_PER_FSYNC_SHIFT 1
564
565/* CS42L43_ASP_DATA_CTRL */
566#define CS42L43_ASP_FSYNC_FRAME_START_PHASE_MASK 0x00000008
567#define CS42L43_ASP_FSYNC_FRAME_START_PHASE_SHIFT 3
568#define CS42L43_ASP_FSYNC_FRAME_START_DLY_MASK 0x00000007
569#define CS42L43_ASP_FSYNC_FRAME_START_DLY_SHIFT 0
570
571/* CS42L43_ASP_RX_EN */
572#define CS42L43_ASP_RX_CH6_EN_MASK 0x00000020
573#define CS42L43_ASP_RX_CH6_EN_SHIFT 5
574#define CS42L43_ASP_RX_CH5_EN_MASK 0x00000010
575#define CS42L43_ASP_RX_CH5_EN_SHIFT 4
576#define CS42L43_ASP_RX_CH4_EN_MASK 0x00000008
577#define CS42L43_ASP_RX_CH4_EN_SHIFT 3
578#define CS42L43_ASP_RX_CH3_EN_MASK 0x00000004
579#define CS42L43_ASP_RX_CH3_EN_SHIFT 2
580#define CS42L43_ASP_RX_CH2_EN_MASK 0x00000002
581#define CS42L43_ASP_RX_CH2_EN_SHIFT 1
582#define CS42L43_ASP_RX_CH1_EN_MASK 0x00000001
583#define CS42L43_ASP_RX_CH1_EN_SHIFT 0
584
585/* CS42L43_ASP_TX_EN */
586#define CS42L43_ASP_TX_CH6_EN_MASK 0x00000020
587#define CS42L43_ASP_TX_CH6_EN_SHIFT 5
588#define CS42L43_ASP_TX_CH5_EN_MASK 0x00000010
589#define CS42L43_ASP_TX_CH5_EN_SHIFT 4
590#define CS42L43_ASP_TX_CH4_EN_MASK 0x00000008
591#define CS42L43_ASP_TX_CH4_EN_SHIFT 3
592#define CS42L43_ASP_TX_CH3_EN_MASK 0x00000004
593#define CS42L43_ASP_TX_CH3_EN_SHIFT 2
594#define CS42L43_ASP_TX_CH2_EN_MASK 0x00000002
595#define CS42L43_ASP_TX_CH2_EN_SHIFT 1
596#define CS42L43_ASP_TX_CH1_EN_MASK 0x00000001
597#define CS42L43_ASP_TX_CH1_EN_SHIFT 0
598
599/* CS42L43_ASP_RX_CH1_CTRL..CS42L43_ASP_TX_CH6_CTRL */
600#define CS42L43_ASP_CH_WIDTH_MASK 0x001F0000
601#define CS42L43_ASP_CH_WIDTH_SHIFT 16
602#define CS42L43_ASP_CH_SLOT_MASK 0x00001FFE
603#define CS42L43_ASP_CH_SLOT_SHIFT 1
604#define CS42L43_ASP_CH_SLOT_PHASE_MASK 0x00000001
605#define CS42L43_ASP_CH_SLOT_PHASE_SHIFT 0
606
607/* CS42L43_ASPTX1_INPUT..CS42L43_AMP4MIX_INPUT4 */
608#define CS42L43_MIXER_VOL_MASK 0x00FE0000
609#define CS42L43_MIXER_VOL_SHIFT 17
610#define CS42L43_MIXER_SRC_MASK 0x000001FF
611#define CS42L43_MIXER_SRC_SHIFT 0
612
613/* CS42L43_ASRC_INT_ENABLES */
614#define CS42L43_ASRC_INT4_EN_MASK 0x00000008
615#define CS42L43_ASRC_INT4_EN_SHIFT 3
616#define CS42L43_ASRC_INT3_EN_MASK 0x00000004
617#define CS42L43_ASRC_INT3_EN_SHIFT 2
618#define CS42L43_ASRC_INT2_EN_MASK 0x00000002
619#define CS42L43_ASRC_INT2_EN_SHIFT 1
620#define CS42L43_ASRC_INT1_EN_MASK 0x00000001
621#define CS42L43_ASRC_INT1_EN_SHIFT 0
622
623/* CS42L43_ASRC_DEC_ENABLES */
624#define CS42L43_ASRC_DEC4_EN_MASK 0x00000008
625#define CS42L43_ASRC_DEC4_EN_SHIFT 3
626#define CS42L43_ASRC_DEC3_EN_MASK 0x00000004
627#define CS42L43_ASRC_DEC3_EN_SHIFT 2
628#define CS42L43_ASRC_DEC2_EN_MASK 0x00000002
629#define CS42L43_ASRC_DEC2_EN_SHIFT 1
630#define CS42L43_ASRC_DEC1_EN_MASK 0x00000001
631#define CS42L43_ASRC_DEC1_EN_SHIFT 0
632
633/* CS42L43_PDNCNTL */
634#define CS42L43_RING_SENSE_EN_MASK 0x00000002
635#define CS42L43_RING_SENSE_EN_SHIFT 1
636
637/* CS42L43_RINGSENSE_DEB_CTRL */
638#define CS42L43_RINGSENSE_INV_MASK 0x00000080
639#define CS42L43_RINGSENSE_INV_SHIFT 7
640#define CS42L43_RINGSENSE_PULLUP_PDNB_MASK 0x00000040
641#define CS42L43_RINGSENSE_PULLUP_PDNB_SHIFT 6
642#define CS42L43_RINGSENSE_FALLING_DB_TIME_MASK 0x00000038
643#define CS42L43_RINGSENSE_FALLING_DB_TIME_SHIFT 3
644#define CS42L43_RINGSENSE_RISING_DB_TIME_MASK 0x00000007
645#define CS42L43_RINGSENSE_RISING_DB_TIME_SHIFT 0
646
647/* CS42L43_TIPSENSE_DEB_CTRL */
648#define CS42L43_TIPSENSE_INV_MASK 0x00000080
649#define CS42L43_TIPSENSE_INV_SHIFT 7
650#define CS42L43_TIPSENSE_FALLING_DB_TIME_MASK 0x00000038
651#define CS42L43_TIPSENSE_FALLING_DB_TIME_SHIFT 3
652#define CS42L43_TIPSENSE_RISING_DB_TIME_MASK 0x00000007
653#define CS42L43_TIPSENSE_RISING_DB_TIME_SHIFT 0
654
655/* CS42L43_TIP_RING_SENSE_INTERRUPT_STATUS */
656#define CS42L43_TIPSENSE_UNPLUG_DB_STS_MASK 0x00000008
657#define CS42L43_TIPSENSE_UNPLUG_DB_STS_SHIFT 3
658#define CS42L43_TIPSENSE_PLUG_DB_STS_MASK 0x00000004
659#define CS42L43_TIPSENSE_PLUG_DB_STS_SHIFT 2
660#define CS42L43_RINGSENSE_UNPLUG_DB_STS_MASK 0x00000002
661#define CS42L43_RINGSENSE_UNPLUG_DB_STS_SHIFT 1
662#define CS42L43_RINGSENSE_PLUG_DB_STS_MASK 0x00000001
663#define CS42L43_RINGSENSE_PLUG_DB_STS_SHIFT 0
664
665/* CS42L43_HS2 */
666#define CS42L43_HS_CLAMP_DISABLE_MASK 0x10000000
667#define CS42L43_HS_CLAMP_DISABLE_SHIFT 28
668#define CS42L43_HSBIAS_RAMP_MASK 0x0C000000
669#define CS42L43_HSBIAS_RAMP_SHIFT 26
670#define CS42L43_HSDET_MODE_MASK 0x00018000
671#define CS42L43_HSDET_MODE_SHIFT 15
672#define CS42L43_HSDET_MANUAL_MODE_MASK 0x00006000
673#define CS42L43_HSDET_MANUAL_MODE_SHIFT 13
674#define CS42L43_AUTO_HSDET_TIME_MASK 0x00000700
675#define CS42L43_AUTO_HSDET_TIME_SHIFT 8
676#define CS42L43_AMP3_4_GNDREF_HS3_SEL_MASK 0x00000080
677#define CS42L43_AMP3_4_GNDREF_HS3_SEL_SHIFT 7
678#define CS42L43_AMP3_4_GNDREF_HS4_SEL_MASK 0x00000040
679#define CS42L43_AMP3_4_GNDREF_HS4_SEL_SHIFT 6
680#define CS42L43_HSBIAS_GNDREF_HS3_SEL_MASK 0x00000020
681#define CS42L43_HSBIAS_GNDREF_HS3_SEL_SHIFT 5
682#define CS42L43_HSBIAS_GNDREF_HS4_SEL_MASK 0x00000010
683#define CS42L43_HSBIAS_GNDREF_HS4_SEL_SHIFT 4
684#define CS42L43_HSBIAS_OUT_HS3_SEL_MASK 0x00000008
685#define CS42L43_HSBIAS_OUT_HS3_SEL_SHIFT 3
686#define CS42L43_HSBIAS_OUT_HS4_SEL_MASK 0x00000004
687#define CS42L43_HSBIAS_OUT_HS4_SEL_SHIFT 2
688#define CS42L43_HSGND_HS3_SEL_MASK 0x00000002
689#define CS42L43_HSGND_HS3_SEL_SHIFT 1
690#define CS42L43_HSGND_HS4_SEL_MASK 0x00000001
691#define CS42L43_HSGND_HS4_SEL_SHIFT 0
692
693/* CS42L43_HS_STAT */
694#define CS42L43_HSDET_TYPE_STS_MASK 0x00000007
695#define CS42L43_HSDET_TYPE_STS_SHIFT 0
696
697/* CS42L43_MCU_SW_INTERRUPT */
698#define CS42L43_CONTROL_IND_MASK 0x00000004
699#define CS42L43_CONTROL_IND_SHIFT 2
700#define CS42L43_CONFIGS_IND_MASK 0x00000002
701#define CS42L43_CONFIGS_IND_SHIFT 1
702#define CS42L43_PATCH_IND_MASK 0x00000001
703#define CS42L43_PATCH_IND_SHIFT 0
704
705/* CS42L43_STEREO_MIC_CTRL */
706#define CS42L43_HS2_BIAS_SENSE_EN_MASK 0x00000020
707#define CS42L43_HS2_BIAS_SENSE_EN_SHIFT 5
708#define CS42L43_HS1_BIAS_SENSE_EN_MASK 0x00000010
709#define CS42L43_HS1_BIAS_SENSE_EN_SHIFT 4
710#define CS42L43_HS2_BIAS_EN_MASK 0x00000008
711#define CS42L43_HS2_BIAS_EN_SHIFT 3
712#define CS42L43_HS1_BIAS_EN_MASK 0x00000004
713#define CS42L43_HS1_BIAS_EN_SHIFT 2
714#define CS42L43_JACK_STEREO_CONFIG_MASK 0x00000003
715#define CS42L43_JACK_STEREO_CONFIG_SHIFT 0
716
717/* CS42L43_STEREO_MIC_CLAMP_CTRL */
718#define CS42L43_SMIC_HPAMP_CLAMP_DIS_FRC_VAL_MASK 0x00000002
719#define CS42L43_SMIC_HPAMP_CLAMP_DIS_FRC_VAL_SHIFT 1
720#define CS42L43_SMIC_HPAMP_CLAMP_DIS_FRC_MASK 0x00000001
721#define CS42L43_SMIC_HPAMP_CLAMP_DIS_FRC_SHIFT 0
722
723/* CS42L43_BLOCK_EN2 */
724#define CS42L43_SPI_MSTR_EN_MASK 0x00000001
725#define CS42L43_SPI_MSTR_EN_SHIFT 0
726
727/* CS42L43_BLOCK_EN3 */
728#define CS42L43_PDM2_DIN_R_EN_MASK 0x00000020
729#define CS42L43_PDM2_DIN_R_EN_SHIFT 5
730#define CS42L43_PDM2_DIN_L_EN_MASK 0x00000010
731#define CS42L43_PDM2_DIN_L_EN_SHIFT 4
732#define CS42L43_PDM1_DIN_R_EN_MASK 0x00000008
733#define CS42L43_PDM1_DIN_R_EN_SHIFT 3
734#define CS42L43_PDM1_DIN_L_EN_MASK 0x00000004
735#define CS42L43_PDM1_DIN_L_EN_SHIFT 2
736#define CS42L43_ADC2_EN_MASK 0x00000002
737#define CS42L43_ADC2_EN_SHIFT 1
738#define CS42L43_ADC1_EN_MASK 0x00000001
739#define CS42L43_ADC1_EN_SHIFT 0
740
741/* CS42L43_BLOCK_EN4 */
742#define CS42L43_ASRC_DEC_BANK_EN_MASK 0x00000002
743#define CS42L43_ASRC_DEC_BANK_EN_SHIFT 1
744#define CS42L43_ASRC_INT_BANK_EN_MASK 0x00000001
745#define CS42L43_ASRC_INT_BANK_EN_SHIFT 0
746
747/* CS42L43_BLOCK_EN5 */
748#define CS42L43_ISRC2_BANK_EN_MASK 0x00000002
749#define CS42L43_ISRC2_BANK_EN_SHIFT 1
750#define CS42L43_ISRC1_BANK_EN_MASK 0x00000001
751#define CS42L43_ISRC1_BANK_EN_SHIFT 0
752
753/* CS42L43_BLOCK_EN6 */
754#define CS42L43_MIXER_EN_MASK 0x00000001
755#define CS42L43_MIXER_EN_SHIFT 0
756
757/* CS42L43_BLOCK_EN7 */
758#define CS42L43_EQ_EN_MASK 0x00000001
759#define CS42L43_EQ_EN_SHIFT 0
760
761/* CS42L43_BLOCK_EN8 */
762#define CS42L43_HP_EN_MASK 0x00000001
763#define CS42L43_HP_EN_SHIFT 0
764
765/* CS42L43_BLOCK_EN9 */
766#define CS42L43_TONE_EN_MASK 0x00000001
767#define CS42L43_TONE_EN_SHIFT 0
768
769/* CS42L43_BLOCK_EN10 */
770#define CS42L43_AMP2_EN_MASK 0x00000002
771#define CS42L43_AMP2_EN_SHIFT 1
772#define CS42L43_AMP1_EN_MASK 0x00000001
773#define CS42L43_AMP1_EN_SHIFT 0
774
775/* CS42L43_BLOCK_EN11 */
776#define CS42L43_SPDIF_EN_MASK 0x00000001
777#define CS42L43_SPDIF_EN_SHIFT 0
778
779/* CS42L43_TONE_CH1_CTRL..CS42L43_TONE_CH2_CTRL */
780#define CS42L43_TONE_FREQ_MASK 0x00000070
781#define CS42L43_TONE_FREQ_SHIFT 4
782#define CS42L43_TONE_SEL_MASK 0x0000000F
783#define CS42L43_TONE_SEL_SHIFT 0
784
785/* CS42L43_MIC_DETECT_CONTROL_1 */
786#define CS42L43_BUTTON_DETECT_MODE_MASK 0x00000018
787#define CS42L43_BUTTON_DETECT_MODE_SHIFT 3
788#define CS42L43_HSBIAS_MODE_MASK 0x00000006
789#define CS42L43_HSBIAS_MODE_SHIFT 1
790#define CS42L43_MIC_LVL_DET_DISABLE_MASK 0x00000001
791#define CS42L43_MIC_LVL_DET_DISABLE_SHIFT 0
792
793/* CS42L43_DETECT_STATUS_1 */
794#define CS42L43_HSDET_DC_STS_MASK 0x01FF0000
795#define CS42L43_HSDET_DC_STS_SHIFT 16
796#define CS42L43_JACKDET_STS_MASK 0x00000080
797#define CS42L43_JACKDET_STS_SHIFT 7
798#define CS42L43_HSBIAS_CLAMP_STS_MASK 0x00000040
799#define CS42L43_HSBIAS_CLAMP_STS_SHIFT 6
800
801/* CS42L43_HS_BIAS_SENSE_AND_CLAMP_AUTOCONTROL */
802#define CS42L43_JACKDET_MODE_MASK 0xC0000000
803#define CS42L43_JACKDET_MODE_SHIFT 30
804#define CS42L43_JACKDET_INV_MASK 0x20000000
805#define CS42L43_JACKDET_INV_SHIFT 29
806#define CS42L43_JACKDET_DB_TIME_MASK 0x03000000
807#define CS42L43_JACKDET_DB_TIME_SHIFT 24
808#define CS42L43_S0_AUTO_ADCMUTE_DISABLE_MASK 0x00800000
809#define CS42L43_S0_AUTO_ADCMUTE_DISABLE_SHIFT 23
810#define CS42L43_HSBIAS_SENSE_EN_MASK 0x00000080
811#define CS42L43_HSBIAS_SENSE_EN_SHIFT 7
812#define CS42L43_AUTO_HSBIAS_CLAMP_EN_MASK 0x00000040
813#define CS42L43_AUTO_HSBIAS_CLAMP_EN_SHIFT 6
814#define CS42L43_JACKDET_SENSE_EN_MASK 0x00000020
815#define CS42L43_JACKDET_SENSE_EN_SHIFT 5
816#define CS42L43_HSBIAS_SENSE_TRIP_MASK 0x00000007
817#define CS42L43_HSBIAS_SENSE_TRIP_SHIFT 0
818
819/* CS42L43_MIC_DETECT_CONTROL_ANDROID */
820#define CS42L43_HSDET_LVL_COMBWIDTH_MASK 0xC0000000
821#define CS42L43_HSDET_LVL_COMBWIDTH_SHIFT 30
822#define CS42L43_HSDET_LVL2_THRESH_MASK 0x01FF0000
823#define CS42L43_HSDET_LVL2_THRESH_SHIFT 16
824#define CS42L43_HSDET_LVL1_THRESH_MASK 0x000001FF
825#define CS42L43_HSDET_LVL1_THRESH_SHIFT 0
826
827/* CS42L43_ISRC1_CTRL..CS42L43_ISRC2_CTRL */
828#define CS42L43_ISRC_INT2_EN_MASK 0x00000200
829#define CS42L43_ISRC_INT2_EN_SHIFT 9
830#define CS42L43_ISRC_INT1_EN_MASK 0x00000100
831#define CS42L43_ISRC_INT1_EN_SHIFT 8
832#define CS42L43_ISRC_DEC2_EN_MASK 0x00000002
833#define CS42L43_ISRC_DEC2_EN_SHIFT 1
834#define CS42L43_ISRC_DEC1_EN_MASK 0x00000001
835#define CS42L43_ISRC_DEC1_EN_SHIFT 0
836
837/* CS42L43_CTRL_REG */
838#define CS42L43_PLL_MODE_BYPASS_500_MASK 0x00000004
839#define CS42L43_PLL_MODE_BYPASS_500_SHIFT 2
840#define CS42L43_PLL_MODE_BYPASS_1029_MASK 0x00000002
841#define CS42L43_PLL_MODE_BYPASS_1029_SHIFT 1
842#define CS42L43_PLL_EN_MASK 0x00000001
843#define CS42L43_PLL_EN_SHIFT 0
844
845/* CS42L43_FDIV_FRAC */
846#define CS42L43_PLL_DIV_INT_MASK 0xFF000000
847#define CS42L43_PLL_DIV_INT_SHIFT 24
848#define CS42L43_PLL_DIV_FRAC_BYTE2_MASK 0x00FF0000
849#define CS42L43_PLL_DIV_FRAC_BYTE2_SHIFT 16
850#define CS42L43_PLL_DIV_FRAC_BYTE1_MASK 0x0000FF00
851#define CS42L43_PLL_DIV_FRAC_BYTE1_SHIFT 8
852#define CS42L43_PLL_DIV_FRAC_BYTE0_MASK 0x000000FF
853#define CS42L43_PLL_DIV_FRAC_BYTE0_SHIFT 0
854
855/* CS42L43_CAL_RATIO */
856#define CS42L43_PLL_CAL_RATIO_MASK 0x000000FF
857#define CS42L43_PLL_CAL_RATIO_SHIFT 0
858
859/* CS42L43_SPI_CLK_CONFIG1 */
860#define CS42L43_SCLK_DIV_MASK 0x0000000F
861#define CS42L43_SCLK_DIV_SHIFT 0
862
863/* CS42L43_SPI_CONFIG1 */
864#define CS42L43_SPI_SS_IDLE_DUR_MASK 0x0F000000
865#define CS42L43_SPI_SS_IDLE_DUR_SHIFT 24
866#define CS42L43_SPI_SS_DELAY_DUR_MASK 0x000F0000
867#define CS42L43_SPI_SS_DELAY_DUR_SHIFT 16
868#define CS42L43_SPI_THREE_WIRE_MASK 0x00000100
869#define CS42L43_SPI_THREE_WIRE_SHIFT 8
870#define CS42L43_SPI_DPHA_MASK 0x00000040
871#define CS42L43_SPI_DPHA_SHIFT 6
872#define CS42L43_SPI_CPHA_MASK 0x00000020
873#define CS42L43_SPI_CPHA_SHIFT 5
874#define CS42L43_SPI_CPOL_MASK 0x00000010
875#define CS42L43_SPI_CPOL_SHIFT 4
876#define CS42L43_SPI_SS_SEL_MASK 0x00000007
877#define CS42L43_SPI_SS_SEL_SHIFT 0
878
879/* CS42L43_SPI_CONFIG2 */
880#define CS42L43_SPI_SS_FRC_MASK 0x00000001
881#define CS42L43_SPI_SS_FRC_SHIFT 0
882
883/* CS42L43_SPI_CONFIG3 */
884#define CS42L43_SPI_WDT_ENA_MASK 0x00000001
885#define CS42L43_SPI_WDT_ENA_SHIFT 0
886
887/* CS42L43_SPI_CONFIG4 */
888#define CS42L43_SPI_STALL_ENA_MASK 0x00010000
889#define CS42L43_SPI_STALL_ENA_SHIFT 16
890
891/* CS42L43_SPI_STATUS1 */
892#define CS42L43_SPI_ABORT_STS_MASK 0x00000002
893#define CS42L43_SPI_ABORT_STS_SHIFT 1
894#define CS42L43_SPI_DONE_STS_MASK 0x00000001
895#define CS42L43_SPI_DONE_STS_SHIFT 0
896
897/* CS42L43_SPI_STATUS2 */
898#define CS42L43_SPI_RX_DONE_STS_MASK 0x00000010
899#define CS42L43_SPI_RX_DONE_STS_SHIFT 4
900#define CS42L43_SPI_TX_DONE_STS_MASK 0x00000001
901#define CS42L43_SPI_TX_DONE_STS_SHIFT 0
902
903/* CS42L43_TRAN_CONFIG1 */
904#define CS42L43_SPI_START_MASK 0x00000001
905#define CS42L43_SPI_START_SHIFT 0
906
907/* CS42L43_TRAN_CONFIG2 */
908#define CS42L43_SPI_ABORT_MASK 0x00000001
909#define CS42L43_SPI_ABORT_SHIFT 0
910
911/* CS42L43_TRAN_CONFIG3 */
912#define CS42L43_SPI_WORD_SIZE_MASK 0x00070000
913#define CS42L43_SPI_WORD_SIZE_SHIFT 16
914#define CS42L43_SPI_CMD_MASK 0x00000003
915#define CS42L43_SPI_CMD_SHIFT 0
916
917/* CS42L43_TRAN_CONFIG4 */
918#define CS42L43_SPI_TX_LENGTH_MASK 0x0000FFFF
919#define CS42L43_SPI_TX_LENGTH_SHIFT 0
920
921/* CS42L43_TRAN_CONFIG5 */
922#define CS42L43_SPI_RX_LENGTH_MASK 0x0000FFFF
923#define CS42L43_SPI_RX_LENGTH_SHIFT 0
924
925/* CS42L43_TRAN_CONFIG6 */
926#define CS42L43_SPI_TX_BLOCK_LENGTH_MASK 0x0000000F
927#define CS42L43_SPI_TX_BLOCK_LENGTH_SHIFT 0
928
929/* CS42L43_TRAN_CONFIG7 */
930#define CS42L43_SPI_RX_BLOCK_LENGTH_MASK 0x0000000F
931#define CS42L43_SPI_RX_BLOCK_LENGTH_SHIFT 0
932
933/* CS42L43_TRAN_CONFIG8 */
934#define CS42L43_SPI_RX_DONE_MASK 0x00000010
935#define CS42L43_SPI_RX_DONE_SHIFT 4
936#define CS42L43_SPI_TX_DONE_MASK 0x00000001
937#define CS42L43_SPI_TX_DONE_SHIFT 0
938
939/* CS42L43_TRAN_STATUS1 */
940#define CS42L43_SPI_BUSY_STS_MASK 0x00000100
941#define CS42L43_SPI_BUSY_STS_SHIFT 8
942#define CS42L43_SPI_RX_REQUEST_MASK 0x00000010
943#define CS42L43_SPI_RX_REQUEST_SHIFT 4
944#define CS42L43_SPI_TX_REQUEST_MASK 0x00000001
945#define CS42L43_SPI_TX_REQUEST_SHIFT 0
946
947/* CS42L43_TRAN_STATUS2 */
948#define CS42L43_SPI_TX_BYTE_COUNT_MASK 0x0000FFFF
949#define CS42L43_SPI_TX_BYTE_COUNT_SHIFT 0
950
951/* CS42L43_TRAN_STATUS3 */
952#define CS42L43_SPI_RX_BYTE_COUNT_MASK 0x0000FFFF
953#define CS42L43_SPI_RX_BYTE_COUNT_SHIFT 0
954
955/* CS42L43_TX_DATA */
956#define CS42L43_SPI_TX_DATA_MASK 0xFFFFFFFF
957#define CS42L43_SPI_TX_DATA_SHIFT 0
958
959/* CS42L43_RX_DATA */
960#define CS42L43_SPI_RX_DATA_MASK 0xFFFFFFFF
961#define CS42L43_SPI_RX_DATA_SHIFT 0
962
963/* CS42L43_DACCNFG1 */
964#define CS42L43_HP_MSTR_VOL_CTRL_EN_MASK 0x00000008
965#define CS42L43_HP_MSTR_VOL_CTRL_EN_SHIFT 3
966#define CS42L43_AMP4_INV_MASK 0x00000002
967#define CS42L43_AMP4_INV_SHIFT 1
968#define CS42L43_AMP3_INV_MASK 0x00000001
969#define CS42L43_AMP3_INV_SHIFT 0
970
971/* CS42L43_DACCNFG2 */
972#define CS42L43_HP_AUTO_CLAMP_DISABLE_MASK 0x00000002
973#define CS42L43_HP_AUTO_CLAMP_DISABLE_SHIFT 1
974#define CS42L43_HP_HPF_EN_MASK 0x00000001
975#define CS42L43_HP_HPF_EN_SHIFT 0
976
977/* CS42L43_HPPATHVOL */
978#define CS42L43_AMP4_PATH_VOL_MASK 0x01FF0000
979#define CS42L43_AMP4_PATH_VOL_SHIFT 16
980#define CS42L43_AMP3_PATH_VOL_MASK 0x000001FF
981#define CS42L43_AMP3_PATH_VOL_SHIFT 0
982
983/* CS42L43_PGAVOL */
984#define CS42L43_HP_PATH_VOL_RAMP_MASK 0x0003C000
985#define CS42L43_HP_PATH_VOL_RAMP_SHIFT 14
986#define CS42L43_HP_PATH_VOL_ZC_MASK 0x00002000
987#define CS42L43_HP_PATH_VOL_ZC_SHIFT 13
988#define CS42L43_HP_PATH_VOL_SFT_MASK 0x00001000
989#define CS42L43_HP_PATH_VOL_SFT_SHIFT 12
990#define CS42L43_HP_DIG_VOL_RAMP_MASK 0x00000F00
991#define CS42L43_HP_DIG_VOL_RAMP_SHIFT 8
992#define CS42L43_HP_ANA_VOL_RAMP_MASK 0x0000000F
993#define CS42L43_HP_ANA_VOL_RAMP_SHIFT 0
994
995/* CS42L43_LOADDETRESULTS */
996#define CS42L43_AMP3_RES_DET_MASK 0x00000003
997#define CS42L43_AMP3_RES_DET_SHIFT 0
998
999/* CS42L43_LOADDETENA */
1000#define CS42L43_HPLOAD_DET_EN_MASK 0x00000001
1001#define CS42L43_HPLOAD_DET_EN_SHIFT 0
1002
1003/* CS42L43_CTRL */
1004#define CS42L43_ADPTPWR_MODE_MASK 0x00000007
1005#define CS42L43_ADPTPWR_MODE_SHIFT 0
1006
1007/* CS42L43_COEFF_RD_WR0 */
1008#define CS42L43_WRITE_MODE_MASK 0x00000002
1009#define CS42L43_WRITE_MODE_SHIFT 1
1010
1011/* CS42L43_INIT_DONE0 */
1012#define CS42L43_INITIALIZE_DONE_MASK 0x00000001
1013#define CS42L43_INITIALIZE_DONE_SHIFT 0
1014
1015/* CS42L43_START_EQZ0 */
1016#define CS42L43_START_FILTER_MASK 0x00000001
1017#define CS42L43_START_FILTER_SHIFT 0
1018
1019/* CS42L43_MUTE_EQ_IN0 */
1020#define CS42L43_MUTE_EQ_CH2_MASK 0x00000002
1021#define CS42L43_MUTE_EQ_CH2_SHIFT 1
1022#define CS42L43_MUTE_EQ_CH1_MASK 0x00000001
1023#define CS42L43_MUTE_EQ_CH1_SHIFT 0
1024
1025/* CS42L43_PLL_INT */
1026#define CS42L43_PLL_LOST_LOCK_INT_MASK 0x00000002
1027#define CS42L43_PLL_LOST_LOCK_INT_SHIFT 1
1028#define CS42L43_PLL_READY_INT_MASK 0x00000001
1029#define CS42L43_PLL_READY_INT_SHIFT 0
1030
1031/* CS42L43_SOFT_INT */
1032#define CS42L43_CONTROL_APPLIED_INT_MASK 0x00000010
1033#define CS42L43_CONTROL_APPLIED_INT_SHIFT 4
1034#define CS42L43_CONTROL_WARN_INT_MASK 0x00000008
1035#define CS42L43_CONTROL_WARN_INT_SHIFT 3
1036#define CS42L43_PATCH_WARN_INT_MASK 0x00000002
1037#define CS42L43_PATCH_WARN_INT_SHIFT 1
1038#define CS42L43_PATCH_APPLIED_INT_MASK 0x00000001
1039#define CS42L43_PATCH_APPLIED_INT_SHIFT 0
1040
1041/* CS42L43_MSM_INT */
1042#define CS42L43_HP_STARTUP_DONE_INT_MASK 0x00000800
1043#define CS42L43_HP_STARTUP_DONE_INT_SHIFT 11
1044#define CS42L43_HP_SHUTDOWN_DONE_INT_MASK 0x00000400
1045#define CS42L43_HP_SHUTDOWN_DONE_INT_SHIFT 10
1046#define CS42L43_HSDET_DONE_INT_MASK 0x00000200
1047#define CS42L43_HSDET_DONE_INT_SHIFT 9
1048#define CS42L43_TIPSENSE_UNPLUG_DB_INT_MASK 0x00000080
1049#define CS42L43_TIPSENSE_UNPLUG_DB_INT_SHIFT 7
1050#define CS42L43_TIPSENSE_PLUG_DB_INT_MASK 0x00000040
1051#define CS42L43_TIPSENSE_PLUG_DB_INT_SHIFT 6
1052#define CS42L43_RINGSENSE_UNPLUG_DB_INT_MASK 0x00000020
1053#define CS42L43_RINGSENSE_UNPLUG_DB_INT_SHIFT 5
1054#define CS42L43_RINGSENSE_PLUG_DB_INT_MASK 0x00000010
1055#define CS42L43_RINGSENSE_PLUG_DB_INT_SHIFT 4
1056#define CS42L43_TIPSENSE_UNPLUG_PDET_INT_MASK 0x00000008
1057#define CS42L43_TIPSENSE_UNPLUG_PDET_INT_SHIFT 3
1058#define CS42L43_TIPSENSE_PLUG_PDET_INT_MASK 0x00000004
1059#define CS42L43_TIPSENSE_PLUG_PDET_INT_SHIFT 2
1060#define CS42L43_RINGSENSE_UNPLUG_PDET_INT_MASK 0x00000002
1061#define CS42L43_RINGSENSE_UNPLUG_PDET_INT_SHIFT 1
1062#define CS42L43_RINGSENSE_PLUG_PDET_INT_MASK 0x00000001
1063#define CS42L43_RINGSENSE_PLUG_PDET_INT_SHIFT 0
1064
1065/* CS42L43_ACC_DET_INT */
1066#define CS42L43_HS2_BIAS_SENSE_INT_MASK 0x00000800
1067#define CS42L43_HS2_BIAS_SENSE_INT_SHIFT 11
1068#define CS42L43_HS1_BIAS_SENSE_INT_MASK 0x00000400
1069#define CS42L43_HS1_BIAS_SENSE_INT_SHIFT 10
1070#define CS42L43_DC_DETECT1_FALSE_INT_MASK 0x00000080
1071#define CS42L43_DC_DETECT1_FALSE_INT_SHIFT 7
1072#define CS42L43_DC_DETECT1_TRUE_INT_MASK 0x00000040
1073#define CS42L43_DC_DETECT1_TRUE_INT_SHIFT 6
1074#define CS42L43_HSBIAS_CLAMPED_INT_MASK 0x00000008
1075#define CS42L43_HSBIAS_CLAMPED_INT_SHIFT 3
1076#define CS42L43_HS3_4_BIAS_SENSE_INT_MASK 0x00000001
1077#define CS42L43_HS3_4_BIAS_SENSE_INT_SHIFT 0
1078
1079/* CS42L43_SPI_MSTR_INT */
1080#define CS42L43_IRQ_SPI_STALLING_INT_MASK 0x00000004
1081#define CS42L43_IRQ_SPI_STALLING_INT_SHIFT 2
1082#define CS42L43_IRQ_SPI_STS_INT_MASK 0x00000002
1083#define CS42L43_IRQ_SPI_STS_INT_SHIFT 1
1084#define CS42L43_IRQ_SPI_BLOCK_INT_MASK 0x00000001
1085#define CS42L43_IRQ_SPI_BLOCK_INT_SHIFT 0
1086
1087/* CS42L43_SW_TO_SPI_BRIDGE_INT */
1088#define CS42L43_SW2SPI_BUF_OVF_UDF_INT_MASK 0x00000001
1089#define CS42L43_SW2SPI_BUF_OVF_UDF_INT_SHIFT 0
1090
1091/* CS42L43_CLASS_D_AMP_INT */
1092#define CS42L43_AMP2_CLK_STOP_FAULT_INT_MASK 0x00002000
1093#define CS42L43_AMP2_CLK_STOP_FAULT_INT_SHIFT 13
1094#define CS42L43_AMP1_CLK_STOP_FAULT_INT_MASK 0x00001000
1095#define CS42L43_AMP1_CLK_STOP_FAULT_INT_SHIFT 12
1096#define CS42L43_AMP2_VDDSPK_FAULT_INT_MASK 0x00000800
1097#define CS42L43_AMP2_VDDSPK_FAULT_INT_SHIFT 11
1098#define CS42L43_AMP1_VDDSPK_FAULT_INT_MASK 0x00000400
1099#define CS42L43_AMP1_VDDSPK_FAULT_INT_SHIFT 10
1100#define CS42L43_AMP2_SHUTDOWN_DONE_INT_MASK 0x00000200
1101#define CS42L43_AMP2_SHUTDOWN_DONE_INT_SHIFT 9
1102#define CS42L43_AMP1_SHUTDOWN_DONE_INT_MASK 0x00000100
1103#define CS42L43_AMP1_SHUTDOWN_DONE_INT_SHIFT 8
1104#define CS42L43_AMP2_STARTUP_DONE_INT_MASK 0x00000080
1105#define CS42L43_AMP2_STARTUP_DONE_INT_SHIFT 7
1106#define CS42L43_AMP1_STARTUP_DONE_INT_MASK 0x00000040
1107#define CS42L43_AMP1_STARTUP_DONE_INT_SHIFT 6
1108#define CS42L43_AMP2_THERM_SHDN_INT_MASK 0x00000020
1109#define CS42L43_AMP2_THERM_SHDN_INT_SHIFT 5
1110#define CS42L43_AMP1_THERM_SHDN_INT_MASK 0x00000010
1111#define CS42L43_AMP1_THERM_SHDN_INT_SHIFT 4
1112#define CS42L43_AMP2_THERM_WARN_INT_MASK 0x00000008
1113#define CS42L43_AMP2_THERM_WARN_INT_SHIFT 3
1114#define CS42L43_AMP1_THERM_WARN_INT_MASK 0x00000004
1115#define CS42L43_AMP1_THERM_WARN_INT_SHIFT 2
1116#define CS42L43_AMP2_SCDET_INT_MASK 0x00000002
1117#define CS42L43_AMP2_SCDET_INT_SHIFT 1
1118#define CS42L43_AMP1_SCDET_INT_MASK 0x00000001
1119#define CS42L43_AMP1_SCDET_INT_SHIFT 0
1120
1121/* CS42L43_GPIO_INT */
1122#define CS42L43_GPIO3_FALL_INT_MASK 0x00000020
1123#define CS42L43_GPIO3_FALL_INT_SHIFT 5
1124#define CS42L43_GPIO3_RISE_INT_MASK 0x00000010
1125#define CS42L43_GPIO3_RISE_INT_SHIFT 4
1126#define CS42L43_GPIO2_FALL_INT_MASK 0x00000008
1127#define CS42L43_GPIO2_FALL_INT_SHIFT 3
1128#define CS42L43_GPIO2_RISE_INT_MASK 0x00000004
1129#define CS42L43_GPIO2_RISE_INT_SHIFT 2
1130#define CS42L43_GPIO1_FALL_INT_MASK 0x00000002
1131#define CS42L43_GPIO1_FALL_INT_SHIFT 1
1132#define CS42L43_GPIO1_RISE_INT_MASK 0x00000001
1133#define CS42L43_GPIO1_RISE_INT_SHIFT 0
1134
1135/* CS42L43_HPOUT_INT */
1136#define CS42L43_HP_ILIMIT_INT_MASK 0x00000002
1137#define CS42L43_HP_ILIMIT_INT_SHIFT 1
1138#define CS42L43_HP_LOADDET_DONE_INT_MASK 0x00000001
1139#define CS42L43_HP_LOADDET_DONE_INT_SHIFT 0
1140
1141/* CS42L43_BOOT_CONTROL */
1142#define CS42L43_LOCK_HW_STS_MASK 0x00000002
1143#define CS42L43_LOCK_HW_STS_SHIFT 1
1144
1145/* CS42L43_BLOCK_EN */
1146#define CS42L43_MCU_EN_MASK 0x00000001
1147#define CS42L43_MCU_EN_SHIFT 0
1148
1149/* CS42L43_SHUTTER_CONTROL */
1150#define CS42L43_STATUS_SPK_SHUTTER_MUTE_MASK 0x00008000
1151#define CS42L43_STATUS_SPK_SHUTTER_MUTE_SHIFT 15
1152#define CS42L43_SPK_SHUTTER_CFG_MASK 0x00000F00
1153#define CS42L43_SPK_SHUTTER_CFG_SHIFT 8
1154#define CS42L43_STATUS_MIC_SHUTTER_MUTE_MASK 0x00000080
1155#define CS42L43_STATUS_MIC_SHUTTER_MUTE_SHIFT 7
1156#define CS42L43_MIC_SHUTTER_CFG_MASK 0x0000000F
1157#define CS42L43_MIC_SHUTTER_CFG_SHIFT 0
1158
1159/* CS42L43_MCU_SW_REV */
1160#define CS42L43_BIOS_SUBMINOR_REV_MASK 0xFF000000
1161#define CS42L43_BIOS_SUBMINOR_REV_SHIFT 24
1162#define CS42L43_BIOS_MINOR_REV_MASK 0x00F00000
1163#define CS42L43_BIOS_MINOR_REV_SHIFT 20
1164#define CS42L43_BIOS_MAJOR_REV_MASK 0x000F0000
1165#define CS42L43_BIOS_MAJOR_REV_SHIFT 16
1166#define CS42L43_FW_SUBMINOR_REV_MASK 0x0000FF00
1167#define CS42L43_FW_SUBMINOR_REV_SHIFT 8
1168#define CS42L43_FW_MINOR_REV_MASK 0x000000F0
1169#define CS42L43_FW_MINOR_REV_SHIFT 4
1170#define CS42L43_FW_MAJOR_REV_MASK 0x0000000F
1171#define CS42L43_FW_MAJOR_REV_SHIFT 0
1172
1173/* CS42L43_NEED_CONFIGS */
1174#define CS42L43_FW_PATCH_NEED_CFG_MASK 0x80000000
1175#define CS42L43_FW_PATCH_NEED_CFG_SHIFT 31
1176
1177/* CS42L43_FW_MISSION_CTRL_MM_CTRL_SELECTION */
1178#define CS42L43_FW_MM_CTRL_MCU_SEL_MASK 0x00000001
1179#define CS42L43_FW_MM_CTRL_MCU_SEL_SHIFT 0
1180
1181/* CS42L43_FW_MISSION_CTRL_MM_MCU_CFG_REG */
1182#define CS42L43_FW_MISSION_CTRL_MM_MCU_CFG_DISABLE_VAL 0xF05AA50F
1183
1184#endif /* CS42L43_CORE_REGS_H */
1185

source code of linux/include/linux/mfd/cs42l43-regs.h