xref: /linux/sound/soc/mediatek/mt8365/mt8365-reg.h (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
138c7c9ddSAlexandre Mergnat /* SPDX-License-Identifier: GPL-2.0
238c7c9ddSAlexandre Mergnat  *
338c7c9ddSAlexandre Mergnat  * MediaTek 8365 audio driver reg definition
438c7c9ddSAlexandre Mergnat  *
538c7c9ddSAlexandre Mergnat  * Copyright (c) 2024 MediaTek Inc.
638c7c9ddSAlexandre Mergnat  * Authors: Jia Zeng <jia.zeng@mediatek.com>
738c7c9ddSAlexandre Mergnat  *          Alexandre Mergnat <amergnat@baylibre.com>
838c7c9ddSAlexandre Mergnat  */
938c7c9ddSAlexandre Mergnat 
1038c7c9ddSAlexandre Mergnat #ifndef _MT8365_REG_H_
1138c7c9ddSAlexandre Mergnat #define _MT8365_REG_H_
1238c7c9ddSAlexandre Mergnat 
136b31d6a4SArnd Bergmann #include <linux/bitfield.h>
146b31d6a4SArnd Bergmann 
1538c7c9ddSAlexandre Mergnat #define AUDIO_TOP_CON0			(0x0000)
1638c7c9ddSAlexandre Mergnat #define AUDIO_TOP_CON1			(0x0004)
1738c7c9ddSAlexandre Mergnat #define AUDIO_TOP_CON2			(0x0008)
1838c7c9ddSAlexandre Mergnat #define AUDIO_TOP_CON3			(0x000c)
1938c7c9ddSAlexandre Mergnat 
2038c7c9ddSAlexandre Mergnat #define AFE_DAC_CON0			(0x0010)
2138c7c9ddSAlexandre Mergnat #define AFE_DAC_CON1			(0x0014)
2238c7c9ddSAlexandre Mergnat #define AFE_I2S_CON			(0x0018)
2338c7c9ddSAlexandre Mergnat #define AFE_CONN0			(0x0020)
2438c7c9ddSAlexandre Mergnat #define AFE_CONN1			(0x0024)
2538c7c9ddSAlexandre Mergnat #define AFE_CONN2			(0x0028)
2638c7c9ddSAlexandre Mergnat #define AFE_CONN3			(0x002c)
2738c7c9ddSAlexandre Mergnat #define AFE_CONN4			(0x0030)
2838c7c9ddSAlexandre Mergnat #define AFE_I2S_CON1			(0x0034)
2938c7c9ddSAlexandre Mergnat #define AFE_I2S_CON2			(0x0038)
3038c7c9ddSAlexandre Mergnat #define AFE_MRGIF_CON			(0x003c)
3138c7c9ddSAlexandre Mergnat #define AFE_DL1_BASE			(0x0040)
3238c7c9ddSAlexandre Mergnat #define AFE_DL1_CUR			(0x0044)
3338c7c9ddSAlexandre Mergnat #define AFE_DL1_END			(0x0048)
3438c7c9ddSAlexandre Mergnat #define AFE_I2S_CON3			(0x004c)
3538c7c9ddSAlexandre Mergnat #define AFE_DL2_BASE			(0x0050)
3638c7c9ddSAlexandre Mergnat #define AFE_DL2_CUR			(0x0054)
3738c7c9ddSAlexandre Mergnat #define AFE_DL2_END			(0x0058)
3838c7c9ddSAlexandre Mergnat #define AFE_CONN5			(0x005c)
3938c7c9ddSAlexandre Mergnat #define AFE_AWB_BASE			(0x0070)
4038c7c9ddSAlexandre Mergnat #define AFE_AWB_END			(0x0078)
4138c7c9ddSAlexandre Mergnat #define AFE_AWB_CUR			(0x007c)
4238c7c9ddSAlexandre Mergnat #define AFE_VUL_BASE			(0x0080)
4338c7c9ddSAlexandre Mergnat #define AFE_VUL_END			(0x0088)
4438c7c9ddSAlexandre Mergnat #define AFE_VUL_CUR			(0x008c)
4538c7c9ddSAlexandre Mergnat #define AFE_CONN6			(0x00bc)
4638c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MSB			(0x00cc)
4738c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON0			(0x00d0)
4838c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON1			(0x00d4)
4938c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON2			(0x00d8)
5038c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON3			(0x00dc)
5138c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON4			(0x00e0)
5238c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON5			(0x00e4)
5338c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON6			(0x00e8)
5438c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON7			(0x00ec)
5538c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON8			(0x00f0)
5638c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON9			(0x00f4)
5738c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON10			(0x00f8)
5838c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON11			(0x00fc)
5938c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SRC2_CON0		(0x0108)
6038c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SRC2_CON1		(0x010c)
6138c7c9ddSAlexandre Mergnat #define AFE_ADDA_UL_SRC_CON0		(0x0114)
6238c7c9ddSAlexandre Mergnat #define AFE_ADDA_UL_SRC_CON1		(0x0118)
6338c7c9ddSAlexandre Mergnat #define AFE_ADDA_TOP_CON0		(0x0120)
6438c7c9ddSAlexandre Mergnat #define AFE_ADDA_UL_DL_CON0		(0x0124)
6538c7c9ddSAlexandre Mergnat #define AFE_ADDA_SRC_DEBUG		(0x012c)
6638c7c9ddSAlexandre Mergnat #define AFE_ADDA_SRC_DEBUG_MON0		(0x0130)
6738c7c9ddSAlexandre Mergnat #define AFE_ADDA_SRC_DEBUG_MON1		(0x0134)
6838c7c9ddSAlexandre Mergnat #define AFE_ADDA_UL_SRC_MON0		(0x0148)
6938c7c9ddSAlexandre Mergnat #define AFE_ADDA_UL_SRC_MON1		(0x014c)
7038c7c9ddSAlexandre Mergnat #define AFE_SRAM_BOUND			(0x0170)
7138c7c9ddSAlexandre Mergnat #define AFE_SECURE_CON			(0x0174)
7238c7c9ddSAlexandre Mergnat #define AFE_SECURE_CONN0		(0x0178)
7338c7c9ddSAlexandre Mergnat #define AFE_SIDETONE_DEBUG		(0x01d0)
7438c7c9ddSAlexandre Mergnat #define AFE_SIDETONE_MON		(0x01d4)
7538c7c9ddSAlexandre Mergnat #define AFE_SIDETONE_CON0		(0x01e0)
7638c7c9ddSAlexandre Mergnat #define AFE_SIDETONE_COEFF		(0x01e4)
7738c7c9ddSAlexandre Mergnat #define AFE_SIDETONE_CON1		(0x01e8)
7838c7c9ddSAlexandre Mergnat #define AFE_SIDETONE_GAIN		(0x01ec)
7938c7c9ddSAlexandre Mergnat #define AFE_SGEN_CON0			(0x01f0)
8038c7c9ddSAlexandre Mergnat #define AFE_SINEGEN_CON_TDM		(0x01f8)
8138c7c9ddSAlexandre Mergnat #define AFE_SINEGEN_CON_TDM_IN		(0x01fc)
8238c7c9ddSAlexandre Mergnat #define AFE_TOP_CON0			(0x0200)
8338c7c9ddSAlexandre Mergnat #define AFE_BUS_CFG			(0x0240)
8438c7c9ddSAlexandre Mergnat #define AFE_BUS_MON0			(0x0244)
8538c7c9ddSAlexandre Mergnat #define AFE_ADDA_PREDIS_CON0		(0x0260)
8638c7c9ddSAlexandre Mergnat #define AFE_ADDA_PREDIS_CON1		(0x0264)
8738c7c9ddSAlexandre Mergnat #define AFE_CONN_MON0			(0x0280)
8838c7c9ddSAlexandre Mergnat #define AFE_CONN_MON1			(0x0284)
8938c7c9ddSAlexandre Mergnat #define AFE_CONN_MON2			(0x0288)
9038c7c9ddSAlexandre Mergnat #define AFE_CONN_MON3			(0x028c)
9138c7c9ddSAlexandre Mergnat #define AFE_ADDA_IIR_COEF_02_01		(0x0290)
9238c7c9ddSAlexandre Mergnat #define AFE_ADDA_IIR_COEF_04_03		(0x0294)
9338c7c9ddSAlexandre Mergnat #define AFE_ADDA_IIR_COEF_06_05		(0x0298)
9438c7c9ddSAlexandre Mergnat #define AFE_ADDA_IIR_COEF_08_07		(0x029c)
9538c7c9ddSAlexandre Mergnat #define AFE_ADDA_IIR_COEF_10_09		(0x02a0)
9638c7c9ddSAlexandre Mergnat #define AFE_VUL_D2_BASE			(0x0350)
9738c7c9ddSAlexandre Mergnat #define AFE_VUL_D2_END			(0x0358)
9838c7c9ddSAlexandre Mergnat #define AFE_VUL_D2_CUR			(0x035c)
9938c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_CON0		(0x0370)
10038c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_BASE		(0x0374)
10138c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_CUR		(0x0378)
10238c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_END		(0x037c)
10338c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_CON0		(0x0380)
10438c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_BASE		(0x0384)
10538c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_CUR		(0x0388)
10638c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_END		(0x038c)
10738c7c9ddSAlexandre Mergnat #define AFE_HDMI_CONN0			(0x0390)
10838c7c9ddSAlexandre Mergnat #define AFE_HDMI_CONN1			(0x0398)
10938c7c9ddSAlexandre Mergnat #define AFE_CONN_TDMIN_CON		(0x039c)
11038c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CON			(0x03a0)
11138c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_STATUS		(0x03a4)
11238c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CLR			(0x03a8)
11338c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT1		(0x03ac)
11438c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT2		(0x03b0)
11538c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_EN			(0x03b4)
11638c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_MON2		(0x03b8)
11738c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT5		(0x03bc)
11838c7c9ddSAlexandre Mergnat #define AFE_IRQ1_MCU_CNT_MON		(0x03c0)
11938c7c9ddSAlexandre Mergnat #define AFE_IRQ2_MCU_CNT_MON		(0x03c4)
12038c7c9ddSAlexandre Mergnat #define AFE_IRQ1_MCU_EN_CNT_MON		(0x03c8)
12138c7c9ddSAlexandre Mergnat #define AFE_IRQ5_MCU_CNT_MON		(0x03cc)
12238c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MINLEN		(0x03d0)
12338c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MAXLEN		(0x03d4)
12438c7c9ddSAlexandre Mergnat #define AFE_MEMIF_PBUF_SIZE		(0x03d8)
12538c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT7		(0x03dc)
12638c7c9ddSAlexandre Mergnat #define AFE_IRQ7_MCU_CNT_MON		(0x03e0)
12738c7c9ddSAlexandre Mergnat #define AFE_MEMIF_PBUF2_SIZE		(0x03ec)
12838c7c9ddSAlexandre Mergnat #define AFE_APLL_TUNER_CFG		(0x03f0)
12938c7c9ddSAlexandre Mergnat #define AFE_APLL_TUNER_CFG1		(0x03f4)
13038c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CON2		(0x03f8)
13138c7c9ddSAlexandre Mergnat #define IRQ13_MCU_CNT			(0x0408)
13238c7c9ddSAlexandre Mergnat #define IRQ13_MCU_CNT_MON		(0x040c)
13338c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON0			(0x0410)
13438c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON1			(0x0414)
13538c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON2			(0x0418)
13638c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON3			(0x041c)
13738c7c9ddSAlexandre Mergnat #define AFE_GAIN2_CON0			(0x0428)
13838c7c9ddSAlexandre Mergnat #define AFE_GAIN2_CON1			(0x042c)
13938c7c9ddSAlexandre Mergnat #define AFE_GAIN2_CON2			(0x0430)
14038c7c9ddSAlexandre Mergnat #define AFE_GAIN2_CON3			(0x0434)
14138c7c9ddSAlexandre Mergnat #define AFE_GAIN2_CUR			(0x043c)
14238c7c9ddSAlexandre Mergnat #define AFE_CONN11			(0x0448)
14338c7c9ddSAlexandre Mergnat #define AFE_CONN12			(0x044c)
14438c7c9ddSAlexandre Mergnat #define AFE_CONN13			(0x0450)
14538c7c9ddSAlexandre Mergnat #define AFE_CONN14			(0x0454)
14638c7c9ddSAlexandre Mergnat #define AFE_CONN15			(0x0458)
14738c7c9ddSAlexandre Mergnat #define AFE_CONN16			(0x045c)
14838c7c9ddSAlexandre Mergnat #define AFE_CONN7			(0x0460)
14938c7c9ddSAlexandre Mergnat #define AFE_CONN8			(0x0464)
15038c7c9ddSAlexandre Mergnat #define AFE_CONN9			(0x0468)
15138c7c9ddSAlexandre Mergnat #define AFE_CONN10			(0x046c)
15238c7c9ddSAlexandre Mergnat #define AFE_CONN21			(0x0470)
15338c7c9ddSAlexandre Mergnat #define AFE_CONN22			(0x0474)
15438c7c9ddSAlexandre Mergnat #define AFE_CONN23			(0x0478)
15538c7c9ddSAlexandre Mergnat #define AFE_CONN24			(0x047c)
15638c7c9ddSAlexandre Mergnat #define AFE_IEC_CFG			(0x0480)
15738c7c9ddSAlexandre Mergnat #define AFE_IEC_NSNUM			(0x0484)
15838c7c9ddSAlexandre Mergnat #define AFE_IEC_BURST_INFO		(0x0488)
15938c7c9ddSAlexandre Mergnat #define AFE_IEC_BURST_LEN		(0x048c)
16038c7c9ddSAlexandre Mergnat #define AFE_IEC_NSADR			(0x0490)
16138c7c9ddSAlexandre Mergnat #define AFE_CONN_RS			(0x0494)
16238c7c9ddSAlexandre Mergnat #define AFE_CONN_DI			(0x0498)
16338c7c9ddSAlexandre Mergnat #define AFE_IEC_CHL_STAT0		(0x04a0)
16438c7c9ddSAlexandre Mergnat #define AFE_IEC_CHL_STAT1		(0x04a4)
16538c7c9ddSAlexandre Mergnat #define AFE_IEC_CHR_STAT0		(0x04a8)
16638c7c9ddSAlexandre Mergnat #define AFE_IEC_CHR_STAT1		(0x04ac)
16738c7c9ddSAlexandre Mergnat #define AFE_CONN25			(0x04b0)
16838c7c9ddSAlexandre Mergnat #define AFE_CONN26			(0x04b4)
16938c7c9ddSAlexandre Mergnat #define FPGA_CFG2			(0x04b8)
17038c7c9ddSAlexandre Mergnat #define FPGA_CFG3			(0x04bc)
17138c7c9ddSAlexandre Mergnat #define FPGA_CFG0			(0x04c0)
17238c7c9ddSAlexandre Mergnat #define FPGA_CFG1			(0x04c4)
17338c7c9ddSAlexandre Mergnat #define AFE_SRAM_DELSEL_CON0		(0x04f0)
17438c7c9ddSAlexandre Mergnat #define AFE_SRAM_DELSEL_CON1		(0x04f4)
17538c7c9ddSAlexandre Mergnat #define AFE_SRAM_DELSEL_CON2		(0x04f8)
17638c7c9ddSAlexandre Mergnat #define FPGA_CFG4			(0x04fc)
17738c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON0	(0x0500)
17838c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON1	(0x0504)
17938c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON2	(0x0508)
18038c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON3	(0x050c)
18138c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON4	(0x0510)
18238c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON5	(0x0514)
18338c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON6	(0x0518)
18438c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON7	(0x051c)
18538c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON8	(0x0520)
18638c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON9	(0x0524)
18738c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON10	(0x0528)
18838c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON12	(0x0530)
18938c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC4_ASRC_2CH_CON13	(0x0534)
19038c7c9ddSAlexandre Mergnat #define PCM_INTF_CON2			(0x0538)
19138c7c9ddSAlexandre Mergnat #define PCM2_INTF_CON			(0x053c)
19238c7c9ddSAlexandre Mergnat #define AFE_APB_MON			(0x0540)
19338c7c9ddSAlexandre Mergnat #define AFE_CONN34			(0x0544)
19438c7c9ddSAlexandre Mergnat #define AFE_TDM_CON1			(0x0548)
19538c7c9ddSAlexandre Mergnat #define AFE_TDM_CON2			(0x054c)
19638c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1			(0x0550)
19738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN47_1	(0x0554)
19838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN48_1	(0x0558)
19938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN49_1	(0x055c)
20038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN50_1	(0x0560)
20138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN51_1	(0x0564)
20238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN52_1	(0x0568)
20338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN53_1	(0x056c)
20438c7c9ddSAlexandre Mergnat #define AFE_SE_SECURE_CON		(0x0570)
20538c7c9ddSAlexandre Mergnat #define AFE_TDM_IN_CON1			(0x0588)
20638c7c9ddSAlexandre Mergnat #define AFE_TDM_IN_CON2			(0x058c)
20738c7c9ddSAlexandre Mergnat #define AFE_TDM_IN_MON1			(0x0590)
20838c7c9ddSAlexandre Mergnat #define AFE_TDM_IN_MON2			(0x0594)
20938c7c9ddSAlexandre Mergnat #define AFE_TDM_IN_MON3			(0x0598)
21038c7c9ddSAlexandre Mergnat #define AFE_DMIC0_UL_SRC_CON0		(0x05b4)
21138c7c9ddSAlexandre Mergnat #define AFE_DMIC0_UL_SRC_CON1		(0x05b8)
21238c7c9ddSAlexandre Mergnat #define AFE_DMIC0_SRC_DEBUG		(0x05bc)
21338c7c9ddSAlexandre Mergnat #define AFE_DMIC0_SRC_DEBUG_MON0	(0x05c0)
21438c7c9ddSAlexandre Mergnat #define AFE_DMIC0_UL_SRC_MON0		(0x05c8)
21538c7c9ddSAlexandre Mergnat #define AFE_DMIC0_UL_SRC_MON1		(0x05cc)
21638c7c9ddSAlexandre Mergnat #define AFE_DMIC0_IIR_COEF_02_01	(0x05d0)
21738c7c9ddSAlexandre Mergnat #define AFE_DMIC0_IIR_COEF_04_03	(0x05d4)
21838c7c9ddSAlexandre Mergnat #define AFE_DMIC0_IIR_COEF_06_05	(0x05d8)
21938c7c9ddSAlexandre Mergnat #define AFE_DMIC0_IIR_COEF_08_07	(0x05dc)
22038c7c9ddSAlexandre Mergnat #define AFE_DMIC0_IIR_COEF_10_09	(0x05e0)
22138c7c9ddSAlexandre Mergnat #define AFE_DMIC1_UL_SRC_CON0		(0x0620)
22238c7c9ddSAlexandre Mergnat #define AFE_DMIC1_UL_SRC_CON1		(0x0624)
22338c7c9ddSAlexandre Mergnat #define AFE_DMIC1_SRC_DEBUG		(0x0628)
22438c7c9ddSAlexandre Mergnat #define AFE_DMIC1_SRC_DEBUG_MON0	(0x062c)
22538c7c9ddSAlexandre Mergnat #define AFE_DMIC1_UL_SRC_MON0		(0x0634)
22638c7c9ddSAlexandre Mergnat #define AFE_DMIC1_UL_SRC_MON1		(0x0638)
22738c7c9ddSAlexandre Mergnat #define AFE_DMIC1_IIR_COEF_02_01	(0x063c)
22838c7c9ddSAlexandre Mergnat #define AFE_DMIC1_IIR_COEF_04_03	(0x0640)
22938c7c9ddSAlexandre Mergnat #define AFE_DMIC1_IIR_COEF_06_05	(0x0644)
23038c7c9ddSAlexandre Mergnat #define AFE_DMIC1_IIR_COEF_08_07	(0x0648)
23138c7c9ddSAlexandre Mergnat #define AFE_DMIC1_IIR_COEF_10_09	(0x064c)
23238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN39_1	(0x068c)
23338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN40_1	(0x0690)
23438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN41_1	(0x0694)
23538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN42_1	(0x0698)
23638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN43_1	(0x069c)
23738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN44_1	(0x06a0)
23838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN45_1	(0x06a4)
23938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN46_1	(0x06a8)
24038c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON0	(0x06c0)
24138c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON1	(0x06c4)
24238c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON2	(0x06c8)
24338c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON3	(0x06cc)
24438c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON4	(0x06d0)
24538c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON5	(0x06d4)
24638c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON6	(0x06d8)
24738c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON7	(0x06dc)
24838c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON8	(0x06e0)
24938c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON9	(0x06e4)
25038c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON10	(0x06e8)
25138c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON12	(0x06f0)
25238c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC1_ASRC_2CH_CON13	(0x06f4)
25338c7c9ddSAlexandre Mergnat #define AFE_TDM_ASRC_CON0		(0x06f8)
25438c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON0	(0x0700)
25538c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON1	(0x0704)
25638c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON2	(0x0708)
25738c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON3	(0x070c)
25838c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON4	(0x0710)
25938c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON5	(0x0714)
26038c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON6	(0x0718)
26138c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON7	(0x071c)
26238c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON8	(0x0720)
26338c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON9	(0x0724)
26438c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON10	(0x0728)
26538c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON12	(0x0730)
26638c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC2_ASRC_2CH_CON13	(0x0734)
26738c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON0	(0x0740)
26838c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON1	(0x0744)
26938c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON2	(0x0748)
27038c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON3	(0x074c)
27138c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON4	(0x0750)
27238c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON5	(0x0754)
27338c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON6	(0x0758)
27438c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON7	(0x075c)
27538c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON8	(0x0760)
27638c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON9	(0x0764)
27738c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON10	(0x0768)
27838c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON12	(0x0770)
27938c7c9ddSAlexandre Mergnat #define AFE_TDM_GASRC3_ASRC_2CH_CON13	(0x0774)
28038c7c9ddSAlexandre Mergnat #define AFE_DMIC2_UL_SRC_CON0		(0x0780)
28138c7c9ddSAlexandre Mergnat #define AFE_DMIC2_UL_SRC_CON1		(0x0784)
28238c7c9ddSAlexandre Mergnat #define AFE_DMIC2_SRC_DEBUG		(0x0788)
28338c7c9ddSAlexandre Mergnat #define AFE_DMIC2_SRC_DEBUG_MON0	(0x078c)
28438c7c9ddSAlexandre Mergnat #define AFE_DMIC2_UL_SRC_MON0		(0x0794)
28538c7c9ddSAlexandre Mergnat #define AFE_DMIC2_UL_SRC_MON1		(0x0798)
28638c7c9ddSAlexandre Mergnat #define AFE_DMIC2_IIR_COEF_02_01	(0x079c)
28738c7c9ddSAlexandre Mergnat #define AFE_DMIC2_IIR_COEF_04_03	(0x07a0)
28838c7c9ddSAlexandre Mergnat #define AFE_DMIC2_IIR_COEF_06_05	(0x07a4)
28938c7c9ddSAlexandre Mergnat #define AFE_DMIC2_IIR_COEF_08_07	(0x07a8)
29038c7c9ddSAlexandre Mergnat #define AFE_DMIC2_IIR_COEF_10_09	(0x07ac)
29138c7c9ddSAlexandre Mergnat #define AFE_DMIC3_UL_SRC_CON0		(0x07ec)
29238c7c9ddSAlexandre Mergnat #define AFE_DMIC3_UL_SRC_CON1		(0x07f0)
29338c7c9ddSAlexandre Mergnat #define AFE_DMIC3_SRC_DEBUG		(0x07f4)
29438c7c9ddSAlexandre Mergnat #define AFE_DMIC3_SRC_DEBUG_MON0	(0x07f8)
29538c7c9ddSAlexandre Mergnat #define AFE_DMIC3_UL_SRC_MON0		(0x0800)
29638c7c9ddSAlexandre Mergnat #define AFE_DMIC3_UL_SRC_MON1		(0x0804)
29738c7c9ddSAlexandre Mergnat #define AFE_DMIC3_IIR_COEF_02_01	(0x0808)
29838c7c9ddSAlexandre Mergnat #define AFE_DMIC3_IIR_COEF_04_03	(0x080c)
29938c7c9ddSAlexandre Mergnat #define AFE_DMIC3_IIR_COEF_06_05	(0x0810)
30038c7c9ddSAlexandre Mergnat #define AFE_DMIC3_IIR_COEF_08_07	(0x0814)
30138c7c9ddSAlexandre Mergnat #define AFE_DMIC3_IIR_COEF_10_09	(0x0818)
30238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN25_1	(0x0858)
30338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN26_1	(0x085c)
30438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN27_1	(0x0860)
30538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN28_1	(0x0864)
30638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN29_1	(0x0868)
30738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN30_1	(0x086c)
30838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN31_1	(0x0870)
30938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN32_1	(0x0874)
31038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN33_1	(0x0878)
31138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN34_1	(0x087c)
31238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN35_1	(0x0880)
31338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN36_1	(0x0884)
31438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN37_1	(0x0888)
31538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN38_1	(0x088c)
31638c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_SCP_EN		(0x0890)
31738c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_DSP_EN		(0x0894)
31838c7c9ddSAlexandre Mergnat #define AFE_IRQ3_MCU_CNT_MON		(0x0898)
31938c7c9ddSAlexandre Mergnat #define AFE_IRQ4_MCU_CNT_MON		(0x089c)
32038c7c9ddSAlexandre Mergnat #define AFE_IRQ8_MCU_CNT_MON		(0x08a0)
32138c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT3		(0x08a4)
32238c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT4		(0x08a8)
32338c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT8		(0x08ac)
32438c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT11		(0x08b0)
32538c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT12		(0x08b4)
32638c7c9ddSAlexandre Mergnat #define AFE_IRQ11_MCU_CNT_MON		(0x08b8)
32738c7c9ddSAlexandre Mergnat #define AFE_IRQ12_MCU_CNT_MON		(0x08bc)
32838c7c9ddSAlexandre Mergnat #define AFE_VUL3_BASE			(0x08c0)
32938c7c9ddSAlexandre Mergnat #define AFE_VUL3_CUR			(0x08c4)
33038c7c9ddSAlexandre Mergnat #define AFE_VUL3_END			(0x08c8)
33138c7c9ddSAlexandre Mergnat #define AFE_VUL3_BASE_MSB		(0x08d0)
33238c7c9ddSAlexandre Mergnat #define AFE_VUL3_END_MSB		(0x08d4)
33338c7c9ddSAlexandre Mergnat #define AFE_IRQ10_MCU_CNT_MON		(0x08d8)
33438c7c9ddSAlexandre Mergnat #define AFE_IRQ_MCU_CNT10		(0x08dc)
33538c7c9ddSAlexandre Mergnat #define AFE_IRQ_ACC1_CNT		(0x08e0)
33638c7c9ddSAlexandre Mergnat #define AFE_IRQ_ACC2_CNT		(0x08e4)
33738c7c9ddSAlexandre Mergnat #define AFE_IRQ_ACC1_CNT_MON1		(0x08e8)
33838c7c9ddSAlexandre Mergnat #define AFE_IRQ_ACC2_CNT_MON		(0x08ec)
33938c7c9ddSAlexandre Mergnat #define AFE_TSF_CON			(0x08f0)
34038c7c9ddSAlexandre Mergnat #define AFE_TSF_MON			(0x08f4)
34138c7c9ddSAlexandre Mergnat #define AFE_IRQ_ACC1_CNT_MON2		(0x08f8)
34238c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CFG0		(0x0900)
34338c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CFG1		(0x0904)
34438c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CHSTS1		(0x0908)
34538c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CHSTS2		(0x090c)
34638c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CHSTS3		(0x0910)
34738c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CHSTS4		(0x0914)
34838c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CHSTS5		(0x0918)
34938c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CHSTS6		(0x091c)
35038c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_DEBUG1		(0x0920)
35138c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_DEBUG2		(0x0924)
35238c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_DEBUG3		(0x0928)
35338c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_DEBUG4		(0x092c)
35438c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_EC			(0x0930)
35538c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_CKLOCK_CFG		(0x0934)
35638c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_BR			(0x093c)
35738c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_BR_DBG1		(0x0940)
35838c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_INT_EXT		(0x0948)
35938c7c9ddSAlexandre Mergnat #define AFE_SPDIFIN_INT_EXT2		(0x094c)
36038c7c9ddSAlexandre Mergnat #define SPDIFIN_FREQ_INFO		(0x0950)
36138c7c9ddSAlexandre Mergnat #define SPDIFIN_FREQ_INFO_2		(0x0954)
36238c7c9ddSAlexandre Mergnat #define SPDIFIN_FREQ_INFO_3		(0x0958)
36338c7c9ddSAlexandre Mergnat #define SPDIFIN_FREQ_STATUS		(0x095c)
36438c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE1		(0x0960)
36538c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE2		(0x0964)
36638c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE3		(0x0968)
36738c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE4		(0x096c)
36838c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE5		(0x0970)
36938c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE6		(0x0974)
37038c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE7		(0x0978)
37138c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE8		(0x097c)
37238c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE9		(0x0980)
37338c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE10		(0x0984)
37438c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE11		(0x0988)
37538c7c9ddSAlexandre Mergnat #define SPDIFIN_USERCODE12		(0x098c)
37638c7c9ddSAlexandre Mergnat #define SPDIFIN_MEMIF_CON0		(0x0990)
37738c7c9ddSAlexandre Mergnat #define SPDIFIN_BASE_ADR		(0x0994)
37838c7c9ddSAlexandre Mergnat #define SPDIFIN_END_ADR			(0x0998)
37938c7c9ddSAlexandre Mergnat #define SPDIFIN_APLL_TUNER_CFG		(0x09a0)
38038c7c9ddSAlexandre Mergnat #define SPDIFIN_APLL_TUNER_CFG1		(0x09a4)
38138c7c9ddSAlexandre Mergnat #define SPDIFIN_APLL2_TUNER_CFG		(0x09a8)
38238c7c9ddSAlexandre Mergnat #define SPDIFIN_APLL2_TUNER_CFG1	(0x09ac)
38338c7c9ddSAlexandre Mergnat #define SPDIFIN_TYPE_DET		(0x09b0)
38438c7c9ddSAlexandre Mergnat #define MPHONE_MULTI_CON0		(0x09b4)
38538c7c9ddSAlexandre Mergnat #define SPDIFIN_CUR_ADR			(0x09b8)
38638c7c9ddSAlexandre Mergnat #define AFE_SINEGEN_CON_SPDIFIN		(0x09bc)
38738c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_CON0		(0x09c0)
38838c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_BASE		(0x09c4)
38938c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_END		(0x09c8)
39038c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_CUR		(0x09cc)
39138c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON0		(0x09d0)
39238c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON1		(0x09d4)
39338c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON2		(0x09d8)
39438c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON3		(0x09dc)
39538c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON6		(0x09e8)
39638c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON7		(0x09ec)
39738c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON8		(0x09f0)
39838c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON10		(0x09f8)
39938c7c9ddSAlexandre Mergnat #define AFE_MEMIF_BUF_MON11		(0x09fc)
40038c7c9ddSAlexandre Mergnat #define SYSTOP_STC_CONFIG		(0x0a00)
40138c7c9ddSAlexandre Mergnat #define AUDIO_STC_STATUS		(0x0a04)
40238c7c9ddSAlexandre Mergnat #define SYSTOP_W_STC_H			(0x0a08)
40338c7c9ddSAlexandre Mergnat #define SYSTOP_W_STC_L			(0x0a0c)
40438c7c9ddSAlexandre Mergnat #define SYSTOP_R_STC_H			(0x0a10)
40538c7c9ddSAlexandre Mergnat #define SYSTOP_R_STC_L			(0x0a14)
40638c7c9ddSAlexandre Mergnat #define AUDIO_W_STC_H			(0x0a18)
40738c7c9ddSAlexandre Mergnat #define AUDIO_W_STC_L			(0x0a1c)
40838c7c9ddSAlexandre Mergnat #define AUDIO_R_STC_H			(0x0a20)
40938c7c9ddSAlexandre Mergnat #define AUDIO_R_STC_L			(0x0a24)
41038c7c9ddSAlexandre Mergnat #define SYSTOP_W_STC2_H			(0x0a28)
41138c7c9ddSAlexandre Mergnat #define SYSTOP_W_STC2_L			(0x0a2c)
41238c7c9ddSAlexandre Mergnat #define SYSTOP_R_STC2_H			(0x0a30)
41338c7c9ddSAlexandre Mergnat #define SYSTOP_R_STC2_L			(0x0a34)
41438c7c9ddSAlexandre Mergnat #define AUDIO_W_STC2_H			(0x0a38)
41538c7c9ddSAlexandre Mergnat #define AUDIO_W_STC2_L			(0x0a3c)
41638c7c9ddSAlexandre Mergnat #define AUDIO_R_STC2_H			(0x0a40)
41738c7c9ddSAlexandre Mergnat #define AUDIO_R_STC2_L			(0x0a44)
41838c7c9ddSAlexandre Mergnat 
41938c7c9ddSAlexandre Mergnat #define AFE_CONN17			(0x0a48)
42038c7c9ddSAlexandre Mergnat #define AFE_CONN18			(0x0a4c)
42138c7c9ddSAlexandre Mergnat #define AFE_CONN19			(0x0a50)
42238c7c9ddSAlexandre Mergnat #define AFE_CONN20			(0x0a54)
42338c7c9ddSAlexandre Mergnat #define AFE_CONN27			(0x0a58)
42438c7c9ddSAlexandre Mergnat #define AFE_CONN28			(0x0a5c)
42538c7c9ddSAlexandre Mergnat #define AFE_CONN29			(0x0a60)
42638c7c9ddSAlexandre Mergnat #define AFE_CONN30			(0x0a64)
42738c7c9ddSAlexandre Mergnat #define AFE_CONN31			(0x0a68)
42838c7c9ddSAlexandre Mergnat #define AFE_CONN32			(0x0a6c)
42938c7c9ddSAlexandre Mergnat #define AFE_CONN33			(0x0a70)
43038c7c9ddSAlexandre Mergnat #define AFE_CONN35			(0x0a74)
43138c7c9ddSAlexandre Mergnat #define AFE_CONN36			(0x0a78)
43238c7c9ddSAlexandre Mergnat #define AFE_CONN37			(0x0a7c)
43338c7c9ddSAlexandre Mergnat #define AFE_CONN38			(0x0a80)
43438c7c9ddSAlexandre Mergnat #define AFE_CONN39			(0x0a84)
43538c7c9ddSAlexandre Mergnat #define AFE_CONN40			(0x0a88)
43638c7c9ddSAlexandre Mergnat #define AFE_CONN41			(0x0a8c)
43738c7c9ddSAlexandre Mergnat #define AFE_CONN42			(0x0a90)
43838c7c9ddSAlexandre Mergnat #define AFE_CONN44			(0x0a94)
43938c7c9ddSAlexandre Mergnat #define AFE_CONN45			(0x0a98)
44038c7c9ddSAlexandre Mergnat #define AFE_CONN46			(0x0a9c)
44138c7c9ddSAlexandre Mergnat #define AFE_CONN47			(0x0aa0)
44238c7c9ddSAlexandre Mergnat #define AFE_CONN_24BIT			(0x0aa4)
44338c7c9ddSAlexandre Mergnat #define AFE_CONN0_1			(0x0aa8)
44438c7c9ddSAlexandre Mergnat #define AFE_CONN1_1			(0x0aac)
44538c7c9ddSAlexandre Mergnat #define AFE_CONN2_1			(0x0ab0)
44638c7c9ddSAlexandre Mergnat #define AFE_CONN3_1			(0x0ab4)
44738c7c9ddSAlexandre Mergnat #define AFE_CONN4_1			(0x0ab8)
44838c7c9ddSAlexandre Mergnat #define AFE_CONN5_1			(0x0abc)
44938c7c9ddSAlexandre Mergnat #define AFE_CONN6_1			(0x0ac0)
45038c7c9ddSAlexandre Mergnat #define AFE_CONN7_1			(0x0ac4)
45138c7c9ddSAlexandre Mergnat #define AFE_CONN8_1			(0x0ac8)
45238c7c9ddSAlexandre Mergnat #define AFE_CONN9_1			(0x0acc)
45338c7c9ddSAlexandre Mergnat #define AFE_CONN10_1			(0x0ad0)
45438c7c9ddSAlexandre Mergnat #define AFE_CONN11_1			(0x0ad4)
45538c7c9ddSAlexandre Mergnat #define AFE_CONN12_1			(0x0ad8)
45638c7c9ddSAlexandre Mergnat #define AFE_CONN13_1			(0x0adc)
45738c7c9ddSAlexandre Mergnat #define AFE_CONN14_1			(0x0ae0)
45838c7c9ddSAlexandre Mergnat #define AFE_CONN15_1			(0x0ae4)
45938c7c9ddSAlexandre Mergnat #define AFE_CONN16_1			(0x0ae8)
46038c7c9ddSAlexandre Mergnat #define AFE_CONN17_1			(0x0aec)
46138c7c9ddSAlexandre Mergnat #define AFE_CONN18_1			(0x0af0)
46238c7c9ddSAlexandre Mergnat #define AFE_CONN19_1			(0x0af4)
46338c7c9ddSAlexandre Mergnat #define AFE_CONN43			(0x0af8)
46438c7c9ddSAlexandre Mergnat #define AFE_CONN43_1			(0x0afc)
46538c7c9ddSAlexandre Mergnat #define AFE_CONN21_1			(0x0b00)
46638c7c9ddSAlexandre Mergnat #define AFE_CONN22_1			(0x0b04)
46738c7c9ddSAlexandre Mergnat #define AFE_CONN23_1			(0x0b08)
46838c7c9ddSAlexandre Mergnat #define AFE_CONN24_1			(0x0b0c)
46938c7c9ddSAlexandre Mergnat #define AFE_CONN25_1			(0x0b10)
47038c7c9ddSAlexandre Mergnat #define AFE_CONN26_1			(0x0b14)
47138c7c9ddSAlexandre Mergnat #define AFE_CONN27_1			(0x0b18)
47238c7c9ddSAlexandre Mergnat #define AFE_CONN28_1			(0x0b1c)
47338c7c9ddSAlexandre Mergnat #define AFE_CONN29_1			(0x0b20)
47438c7c9ddSAlexandre Mergnat #define AFE_CONN30_1			(0x0b24)
47538c7c9ddSAlexandre Mergnat #define AFE_CONN31_1			(0x0b28)
47638c7c9ddSAlexandre Mergnat #define AFE_CONN32_1			(0x0b2c)
47738c7c9ddSAlexandre Mergnat #define AFE_CONN33_1			(0x0b30)
47838c7c9ddSAlexandre Mergnat #define AFE_CONN34_1			(0x0b34)
47938c7c9ddSAlexandre Mergnat #define AFE_CONN35_1			(0x0b38)
48038c7c9ddSAlexandre Mergnat #define AFE_CONN36_1			(0x0b3c)
48138c7c9ddSAlexandre Mergnat #define AFE_CONN37_1			(0x0b40)
48238c7c9ddSAlexandre Mergnat #define AFE_CONN38_1			(0x0b44)
48338c7c9ddSAlexandre Mergnat #define AFE_CONN39_1			(0x0b48)
48438c7c9ddSAlexandre Mergnat #define AFE_CONN40_1			(0x0b4c)
48538c7c9ddSAlexandre Mergnat #define AFE_CONN41_1			(0x0b50)
48638c7c9ddSAlexandre Mergnat #define AFE_CONN42_1			(0x0b54)
48738c7c9ddSAlexandre Mergnat #define AFE_CONN44_1			(0x0b58)
48838c7c9ddSAlexandre Mergnat #define AFE_CONN45_1			(0x0b5c)
48938c7c9ddSAlexandre Mergnat #define AFE_CONN46_1			(0x0b60)
49038c7c9ddSAlexandre Mergnat #define AFE_CONN47_1			(0x0b64)
49138c7c9ddSAlexandre Mergnat #define AFE_CONN_RS_1			(0x0b68)
49238c7c9ddSAlexandre Mergnat #define AFE_CONN_DI_1			(0x0b6c)
49338c7c9ddSAlexandre Mergnat #define AFE_CONN_24BIT_1		(0x0b70)
49438c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CUR			(0x0b78)
49538c7c9ddSAlexandre Mergnat #define AFE_CONN20_1			(0x0b7c)
49638c7c9ddSAlexandre Mergnat #define AFE_DL1_BASE_MSB		(0x0b80)
49738c7c9ddSAlexandre Mergnat #define AFE_DL1_END_MSB			(0x0b84)
49838c7c9ddSAlexandre Mergnat #define AFE_DL2_BASE_MSB		(0x0b88)
49938c7c9ddSAlexandre Mergnat #define AFE_DL2_END_MSB			(0x0b8c)
50038c7c9ddSAlexandre Mergnat #define AFE_AWB_BASE_MSB		(0x0b90)
50138c7c9ddSAlexandre Mergnat #define AFE_AWB_END_MSB			(0x0b94)
50238c7c9ddSAlexandre Mergnat #define AFE_VUL_BASE_MSB		(0x0ba0)
50338c7c9ddSAlexandre Mergnat #define AFE_VUL_END_MSB			(0x0ba4)
50438c7c9ddSAlexandre Mergnat #define AFE_VUL_D2_BASE_MSB		(0x0ba8)
50538c7c9ddSAlexandre Mergnat #define AFE_VUL_D2_END_MSB		(0x0bac)
50638c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_BASE_MSB		(0x0bb8)
50738c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_END_MSB		(0x0bbc)
50838c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_BASE_MSB	(0x0bc0)
50938c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_END_MSB		(0x0bc4)
51038c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_BASE_MSB		(0x0bc8)
51138c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_END_MSB		(0x0bcc)
51238c7c9ddSAlexandre Mergnat #define SPDIFIN_BASE_MSB		(0x0bd0)
51338c7c9ddSAlexandre Mergnat #define SPDIFIN_END_MSB			(0x0bd4)
51438c7c9ddSAlexandre Mergnat #define AFE_DL1_CUR_MSB			(0x0bd8)
51538c7c9ddSAlexandre Mergnat #define AFE_DL2_CUR_MSB			(0x0bdc)
51638c7c9ddSAlexandre Mergnat #define AFE_AWB_CUR_MSB			(0x0be8)
51738c7c9ddSAlexandre Mergnat #define AFE_VUL_CUR_MSB			(0x0bf8)
51838c7c9ddSAlexandre Mergnat #define AFE_VUL_D2_CUR_MSB		(0x0c04)
51938c7c9ddSAlexandre Mergnat #define AFE_HDMI_OUT_CUR_MSB		(0x0c0c)
52038c7c9ddSAlexandre Mergnat #define AFE_HDMI_IN_2CH_CUR_MSB		(0x0c10)
52138c7c9ddSAlexandre Mergnat #define AFE_SPDIF_OUT_CUR_MSB		(0x0c14)
52238c7c9ddSAlexandre Mergnat #define SPDIFIN_CUR_MSB			(0x0c18)
52338c7c9ddSAlexandre Mergnat #define AFE_CONN_REG			(0x0c20)
52438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN14_1	(0x0c24)
52538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN15_1	(0x0c28)
52638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN16_1	(0x0c2c)
52738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN17_1	(0x0c30)
52838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN18_1	(0x0c34)
52938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN19_1	(0x0c38)
53038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN20_1	(0x0c3c)
53138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN21_1	(0x0c40)
53238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN22_1	(0x0c44)
53338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN23_1	(0x0c48)
53438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN24_1	(0x0c4c)
53538c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SDM_DCCOMP_CON	(0x0c50)
53638c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SDM_TEST		(0x0c54)
53738c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_DC_COMP_CFG0	(0x0c58)
53838c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_DC_COMP_CFG1	(0x0c5c)
53938c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SDM_FIFO_MON	(0x0c60)
54038c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SRC_LCH_MON		(0x0c64)
54138c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SRC_RCH_MON		(0x0c68)
54238c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SDM_OUT_MON		(0x0c6c)
54338c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SDM_DITHER_CON	(0x0c70)
54438c7c9ddSAlexandre Mergnat 
54538c7c9ddSAlexandre Mergnat #define AFE_VUL3_CUR_MSB		(0x0c78)
54638c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON0		(0x0c80)
54738c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON1		(0x0c84)
54838c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON2		(0x0c88)
54938c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON3		(0x0c8c)
55038c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON4		(0x0c90)
55138c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON5		(0x0c94)
55238c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON6		(0x0c98)
55338c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON7		(0x0c9c)
55438c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON8		(0x0ca0)
55538c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON9		(0x0ca4)
55638c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON10		(0x0ca8)
55738c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON12		(0x0cb0)
55838c7c9ddSAlexandre Mergnat #define AFE_ASRC_2CH_CON13		(0x0cb4)
55938c7c9ddSAlexandre Mergnat 
56038c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON0	(0x0cc0)
56138c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON1	(0x0cc4)
56238c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON2	(0x0cc8)
56338c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON3	(0x0ccc)
56438c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON4	(0x0cd0)
56538c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON5	(0x0cd4)
56638c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON6	(0x0cd8)
56738c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON7	(0x0cdc)
56838c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON8	(0x0ce0)
56938c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON9	(0x0ce4)
57038c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON10	(0x0ce8)
57138c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON12	(0x0cf0)
57238c7c9ddSAlexandre Mergnat #define AFE_PCM_TX_ASRC_2CH_CON13	(0x0cf4)
57338c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON0	(0x0d00)
57438c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON1	(0x0d04)
57538c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON2	(0x0d08)
57638c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON3	(0x0d0c)
57738c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON4	(0x0d10)
57838c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON5	(0x0d14)
57938c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON6	(0x0d18)
58038c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON7	(0x0d1c)
58138c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON8	(0x0d20)
58238c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON9	(0x0d24)
58338c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON10	(0x0d28)
58438c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON12	(0x0d30)
58538c7c9ddSAlexandre Mergnat #define AFE_PCM_RX_ASRC_2CH_CON13	(0x0d34)
58638c7c9ddSAlexandre Mergnat 
58738c7c9ddSAlexandre Mergnat #define AFE_ADDA_PREDIS_CON2		(0x0d40)
58838c7c9ddSAlexandre Mergnat #define AFE_ADDA_PREDIS_CON3		(0x0d44)
58938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN4_1		(0x0d48)
59038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN5_1		(0x0d4c)
59138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN6_1		(0x0d50)
59238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN7_1		(0x0d54)
59338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN8_1		(0x0d58)
59438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN9_1		(0x0d5c)
59538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN10_1	(0x0d60)
59638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN11_1	(0x0d64)
59738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN12_1	(0x0d68)
59838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN13_1	(0x0d6c)
59938c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON12			(0x0d70)
60038c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON13			(0x0d74)
60138c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON14			(0x0d78)
60238c7c9ddSAlexandre Mergnat #define AFE_MEMIF_MON15			(0x0d7c)
60338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN42		(0x0dbc)
60438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN43		(0x0dc0)
60538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN44		(0x0dc4)
60638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN45		(0x0dc8)
60738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN46		(0x0dcc)
60838c7c9ddSAlexandre Mergnat #define AFE_HD_ENGEN_ENABLE		(0x0dd0)
60938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN47		(0x0dd4)
61038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN48		(0x0dd8)
61138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN49		(0x0ddc)
61238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN50		(0x0de0)
61338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN51		(0x0de4)
61438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN52		(0x0de8)
61538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN53		(0x0dec)
61638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN0_1		(0x0df0)
61738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN1_1		(0x0df4)
61838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN2_1		(0x0df8)
61938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN3_1		(0x0dfc)
62038c7c9ddSAlexandre Mergnat 
62138c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_CFG0		(0x0e00)
62238c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_SYNCWORD_CFG	(0x0e14)
62338c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_RX_CFG0		(0x0e20)
62438c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_RX_CFG1		(0x0e24)
62538c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_RX_CFG2		(0x0e28)
62638c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_MON0		(0x0e34)
62738c7c9ddSAlexandre Mergnat #define AFE_ADDA_MTKAIF_MON1		(0x0e38)
62838c7c9ddSAlexandre Mergnat #define AFE_AUD_PAD_TOP			(0x0e40)
62938c7c9ddSAlexandre Mergnat 
63038c7c9ddSAlexandre Mergnat #define AFE_CM1_CON4			(0x0e48)
63138c7c9ddSAlexandre Mergnat #define AFE_CM2_CON4			(0x0e4c)
63238c7c9ddSAlexandre Mergnat #define AFE_CM1_CON0			(0x0e50)
63338c7c9ddSAlexandre Mergnat #define AFE_CM1_CON1			(0x0e54)
63438c7c9ddSAlexandre Mergnat #define AFE_CM1_CON2			(0x0e58)
63538c7c9ddSAlexandre Mergnat #define AFE_CM1_CON3			(0x0e5c)
63638c7c9ddSAlexandre Mergnat #define AFE_CM2_CON0			(0x0e60)
63738c7c9ddSAlexandre Mergnat #define AFE_CM2_CON1			(0x0e64)
63838c7c9ddSAlexandre Mergnat #define AFE_CM2_CON2			(0x0e68)
63938c7c9ddSAlexandre Mergnat #define AFE_CM2_CON3			(0x0e6c)
64038c7c9ddSAlexandre Mergnat #define AFE_CM2_CONN0			(0x0e70)
64138c7c9ddSAlexandre Mergnat #define AFE_CM2_CONN1			(0x0e74)
64238c7c9ddSAlexandre Mergnat #define AFE_CM2_CONN2			(0x0e78)
64338c7c9ddSAlexandre Mergnat 
64438c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON0	(0x0e80)
64538c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON1	(0x0e84)
64638c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON2	(0x0e88)
64738c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON3	(0x0e8c)
64838c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON4	(0x0e90)
64938c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON5	(0x0e94)
65038c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON6	(0x0e98)
65138c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON7	(0x0e9c)
65238c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON8	(0x0ea0)
65338c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON9	(0x0ea4)
65438c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON10	(0x0ea8)
65538c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON12	(0x0eb0)
65638c7c9ddSAlexandre Mergnat #define AFE_GENERAL1_ASRC_2CH_CON13	(0x0eb4)
65738c7c9ddSAlexandre Mergnat #define GENERAL_ASRC_MODE		(0x0eb8)
65838c7c9ddSAlexandre Mergnat #define GENERAL_ASRC_EN_ON		(0x0ebc)
65938c7c9ddSAlexandre Mergnat 
66038c7c9ddSAlexandre Mergnat #define AFE_CONN48			(0x0ec0)
66138c7c9ddSAlexandre Mergnat #define AFE_CONN49			(0x0ec4)
66238c7c9ddSAlexandre Mergnat #define AFE_CONN50			(0x0ec8)
66338c7c9ddSAlexandre Mergnat #define AFE_CONN51			(0x0ecc)
66438c7c9ddSAlexandre Mergnat #define AFE_CONN52			(0x0ed0)
66538c7c9ddSAlexandre Mergnat #define AFE_CONN53			(0x0ed4)
66638c7c9ddSAlexandre Mergnat #define AFE_CONN48_1			(0x0ee0)
66738c7c9ddSAlexandre Mergnat #define AFE_CONN49_1			(0x0ee4)
66838c7c9ddSAlexandre Mergnat #define AFE_CONN50_1			(0x0ee8)
66938c7c9ddSAlexandre Mergnat #define AFE_CONN51_1			(0x0eec)
67038c7c9ddSAlexandre Mergnat #define AFE_CONN52_1			(0x0ef0)
67138c7c9ddSAlexandre Mergnat #define AFE_CONN53_1			(0x0ef4)
67238c7c9ddSAlexandre Mergnat 
67338c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON0	(0x0f00)
67438c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON1	(0x0f04)
67538c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON2	(0x0f08)
67638c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON3	(0x0f0c)
67738c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON4	(0x0f10)
67838c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON5	(0x0f14)
67938c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON6	(0x0f18)
68038c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON7	(0x0f1c)
68138c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON8	(0x0f20)
68238c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON9	(0x0f24)
68338c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON10	(0x0f28)
68438c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON12	(0x0f30)
68538c7c9ddSAlexandre Mergnat #define AFE_GENERAL2_ASRC_2CH_CON13	(0x0f34)
68638c7c9ddSAlexandre Mergnat 
68738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN28		(0x0f48)
68838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN29		(0x0f4c)
68938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN30		(0x0f50)
69038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN31		(0x0f54)
69138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN32		(0x0f58)
69238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN33		(0x0f5c)
69338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN34		(0x0f60)
69438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN35		(0x0f64)
69538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN36		(0x0f68)
69638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN37		(0x0f6c)
69738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN38		(0x0f70)
69838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN39		(0x0f74)
69938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN40		(0x0f78)
70038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN41		(0x0f7c)
70138c7c9ddSAlexandre Mergnat #define AFE_SIDEBAND0			(0x0f80)
70238c7c9ddSAlexandre Mergnat #define AFE_SIDEBAND1			(0x0f84)
70338c7c9ddSAlexandre Mergnat #define AFE_SECURE_SIDEBAND0		(0x0f88)
70438c7c9ddSAlexandre Mergnat #define AFE_SECURE_SIDEBAND1		(0x0f8c)
70538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN0		(0x0f90)
70638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN1		(0x0f94)
70738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN2		(0x0f98)
70838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN3		(0x0f9c)
70938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN4		(0x0fa0)
71038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN5		(0x0fa4)
71138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN6		(0x0fa8)
71238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN7		(0x0fac)
71338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN8		(0x0fb0)
71438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN9		(0x0fb4)
71538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN10		(0x0fb8)
71638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN11		(0x0fbc)
71738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN12		(0x0fc0)
71838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN13		(0x0fc4)
71938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN14		(0x0fc8)
72038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN15		(0x0fcc)
72138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN16		(0x0fd0)
72238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN17		(0x0fd4)
72338c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN18		(0x0fd8)
72438c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN19		(0x0fdc)
72538c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN20		(0x0fe0)
72638c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN21		(0x0fe4)
72738c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN22		(0x0fe8)
72838c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN23		(0x0fec)
72938c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN24		(0x0ff0)
73038c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN25		(0x0ff4)
73138c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN26		(0x0ff8)
73238c7c9ddSAlexandre Mergnat #define AFE_SECURE_MASK_CONN27		(0x0ffc)
73338c7c9ddSAlexandre Mergnat 
73438c7c9ddSAlexandre Mergnat #define MAX_REGISTER			AFE_SECURE_MASK_CONN27
73538c7c9ddSAlexandre Mergnat 
73638c7c9ddSAlexandre Mergnat #define AFE_IRQ_STATUS_BITS		0x3ff
73738c7c9ddSAlexandre Mergnat 
73838c7c9ddSAlexandre Mergnat /* AUDIO_TOP_CON0 (0x0000) */
739*d01c6a39SMark Brown #define AUD_TCON0_PDN_TML		(1U << 27)
740*d01c6a39SMark Brown #define AUD_TCON0_PDN_DAC_PREDIS	(1U << 26)
741*d01c6a39SMark Brown #define AUD_TCON0_PDN_DAC		(1U << 25)
742*d01c6a39SMark Brown #define AUD_TCON0_PDN_ADC		(1U << 24)
743*d01c6a39SMark Brown #define AUD_TCON0_PDN_TDM_IN		(1U << 23)
744*d01c6a39SMark Brown #define AUD_TCON0_PDN_TDM_OUT		(1U << 22)
745*d01c6a39SMark Brown #define AUD_TCON0_PDN_SPDIF		(1U << 21)
746*d01c6a39SMark Brown #define AUD_TCON0_PDN_APLL_TUNER	(1U << 19)
747*d01c6a39SMark Brown #define AUD_TCON0_PDN_APLL2_TUNER	(1U << 18)
748*d01c6a39SMark Brown #define AUD_TCON0_PDN_INTDIR		(1U << 15)
749*d01c6a39SMark Brown #define AUD_TCON0_PDN_24M		(1U << 9)
750*d01c6a39SMark Brown #define AUD_TCON0_PDN_22M		(1U << 8)
751*d01c6a39SMark Brown #define AUD_TCON0_PDN_I2S_IN		(1U << 6)
752*d01c6a39SMark Brown #define AUD_TCON0_PDN_AFE		(1U << 2)
75338c7c9ddSAlexandre Mergnat 
75438c7c9ddSAlexandre Mergnat /* AUDIO_TOP_CON1 (0x0004) */
755*d01c6a39SMark Brown #define AUD_TCON1_PDN_TDM_ASRC		(1U << 15)
756*d01c6a39SMark Brown #define AUD_TCON1_PDN_GENERAL2_ASRC	(1U << 14)
757*d01c6a39SMark Brown #define AUD_TCON1_PDN_GENERAL1_ASRC	(1U << 13)
758*d01c6a39SMark Brown #define AUD_TCON1_PDN_CONNSYS_I2S_ASRC	(1U << 12)
759*d01c6a39SMark Brown #define AUD_TCON1_PDN_DMIC3_ADC		(1U << 11)
760*d01c6a39SMark Brown #define AUD_TCON1_PDN_DMIC2_ADC		(1U << 10)
761*d01c6a39SMark Brown #define AUD_TCON1_PDN_DMIC1_ADC		(1U << 9)
762*d01c6a39SMark Brown #define AUD_TCON1_PDN_DMIC0_ADC		(1U << 8)
763*d01c6a39SMark Brown #define AUD_TCON1_PDN_I2S4_BCLK		(1U << 7)
764*d01c6a39SMark Brown #define AUD_TCON1_PDN_I2S3_BCLK		(1U << 6)
765*d01c6a39SMark Brown #define AUD_TCON1_PDN_I2S2_BCLK		(1U << 5)
766*d01c6a39SMark Brown #define AUD_TCON1_PDN_I2S1_BCLK		(1U << 4)
76738c7c9ddSAlexandre Mergnat 
76838c7c9ddSAlexandre Mergnat /* AUDIO_TOP_CON3 (0x000C) */
769*d01c6a39SMark Brown #define AUD_TCON3_HDMI_BCK_INV		(1U << 3)
77038c7c9ddSAlexandre Mergnat 
77138c7c9ddSAlexandre Mergnat /* AFE_I2S_CON (0x0018) */
772*d01c6a39SMark Brown #define AFE_I2S_CON_PHASE_SHIFT_FIX	(1U << 31)
773*d01c6a39SMark Brown #define AFE_I2S_CON_FROM_IO_MUX		(1U << 28)
774*d01c6a39SMark Brown #define AFE_I2S_CON_LOW_JITTER_CLK	(1U << 12)
77538c7c9ddSAlexandre Mergnat #define AFE_I2S_CON_RATE_MASK		GENMASK(11, 8)
776*d01c6a39SMark Brown #define AFE_I2S_CON_FORMAT_I2S		(1U << 3)
777*d01c6a39SMark Brown #define AFE_I2S_CON_SRC_SLAVE		(1U << 2)
77838c7c9ddSAlexandre Mergnat 
77938c7c9ddSAlexandre Mergnat /* AFE_ASRC_2CH_CON0 */
780*d01c6a39SMark Brown #define ONE_HEART	(1U << 31)
781*d01c6a39SMark Brown #define CHSET_STR_CLR	(1U << 4)
782*d01c6a39SMark Brown #define COEFF_SRAM_CTRL	(1U << 1)
783*d01c6a39SMark Brown #define ASM_ON		(1U << 0)
78438c7c9ddSAlexandre Mergnat 
78538c7c9ddSAlexandre Mergnat /* CON2 */
786*d01c6a39SMark Brown #define O16BIT		(1U << 19)
787*d01c6a39SMark Brown #define CLR_IIR_HISTORY	(1U << 17)
788*d01c6a39SMark Brown #define IS_MONO		(1U << 16)
789*d01c6a39SMark Brown #define IIR_EN		(1U << 11)
79038c7c9ddSAlexandre Mergnat #define IIR_STAGE_MASK	GENMASK(10, 8)
79138c7c9ddSAlexandre Mergnat 
79238c7c9ddSAlexandre Mergnat /* CON5 */
79338c7c9ddSAlexandre Mergnat #define CALI_CYCLE_MASK	GENMASK(31, 16)
79438c7c9ddSAlexandre Mergnat #define CALI_64_CYCLE	FIELD_PREP(CALI_CYCLE_MASK, 0x3F)
79538c7c9ddSAlexandre Mergnat #define CALI_96_CYCLE	FIELD_PREP(CALI_CYCLE_MASK, 0x5F)
79638c7c9ddSAlexandre Mergnat #define CALI_441_CYCLE	FIELD_PREP(CALI_CYCLE_MASK, 0x1B8)
79738c7c9ddSAlexandre Mergnat 
798*d01c6a39SMark Brown #define CALI_AUTORST	(1U << 15)
799*d01c6a39SMark Brown #define AUTO_TUNE_FREQ5	(1U << 12)
800*d01c6a39SMark Brown #define COMP_FREQ_RES	(1U << 11)
80138c7c9ddSAlexandre Mergnat 
80238c7c9ddSAlexandre Mergnat #define CALI_SEL_MASK	GENMASK(9, 8)
80338c7c9ddSAlexandre Mergnat #define CALI_SEL_00	FIELD_PREP(CALI_SEL_MASK, 0)
80438c7c9ddSAlexandre Mergnat #define CALI_SEL_01	FIELD_PREP(CALI_SEL_MASK, 1)
80538c7c9ddSAlexandre Mergnat 
806*d01c6a39SMark Brown #define CALI_BP_DGL		(1U << 7) /* Bypass the deglitch circuit */
807*d01c6a39SMark Brown #define AUTO_TUNE_FREQ4		(1U << 3)
808*d01c6a39SMark Brown #define CALI_AUTO_RESTART	(1U << 2)
809*d01c6a39SMark Brown #define CALI_USE_FREQ_OUT	(1U << 1)
810*d01c6a39SMark Brown #define CALI_ON			(1U << 0)
81138c7c9ddSAlexandre Mergnat 
812*d01c6a39SMark Brown #define AFE_I2S_CON_WLEN_32BIT		(1U << 1)
813*d01c6a39SMark Brown #define AFE_I2S_CON_EN			(1U << 0)
81438c7c9ddSAlexandre Mergnat 
815*d01c6a39SMark Brown #define AFE_CONN3_I03_O03_S		(1U << 3)
816*d01c6a39SMark Brown #define AFE_CONN4_I04_O04_S		(1U << 4)
817*d01c6a39SMark Brown #define AFE_CONN4_I03_O04_S		(1U << 3)
81838c7c9ddSAlexandre Mergnat 
81938c7c9ddSAlexandre Mergnat /* AFE_I2S_CON1 (0x0034) */
820*d01c6a39SMark Brown #define AFE_I2S_CON1_I2S2_TO_PAD	(1U << 18)
82138c7c9ddSAlexandre Mergnat #define AFE_I2S_CON1_TDMOUT_TO_PAD	(0 << 18)
82238c7c9ddSAlexandre Mergnat #define AFE_I2S_CON1_RATE		GENMASK(11, 8)
823*d01c6a39SMark Brown #define AFE_I2S_CON1_FORMAT_I2S		(1U << 3)
824*d01c6a39SMark Brown #define AFE_I2S_CON1_WLEN_32BIT		(1U << 1)
825*d01c6a39SMark Brown #define AFE_I2S_CON1_EN			(1U << 0)
82638c7c9ddSAlexandre Mergnat 
82738c7c9ddSAlexandre Mergnat /* AFE_I2S_CON2 (0x0038) */
828*d01c6a39SMark Brown #define AFE_I2S_CON2_LOW_JITTER_CLK	(1U << 12)
82938c7c9ddSAlexandre Mergnat #define AFE_I2S_CON2_RATE		GENMASK(11, 8)
830*d01c6a39SMark Brown #define AFE_I2S_CON2_FORMAT_I2S		(1U << 3)
831*d01c6a39SMark Brown #define AFE_I2S_CON2_WLEN_32BIT		(1U << 1)
832*d01c6a39SMark Brown #define AFE_I2S_CON2_EN			(1U << 0)
83338c7c9ddSAlexandre Mergnat 
83438c7c9ddSAlexandre Mergnat /* AFE_I2S_CON3 (0x004C) */
835*d01c6a39SMark Brown #define AFE_I2S_CON3_LOW_JITTER_CLK	(1U << 12)
83638c7c9ddSAlexandre Mergnat #define AFE_I2S_CON3_RATE		GENMASK(11, 8)
837*d01c6a39SMark Brown #define AFE_I2S_CON3_FORMAT_I2S		(1U << 3)
838*d01c6a39SMark Brown #define AFE_I2S_CON3_WLEN_32BIT		(1U << 1)
839*d01c6a39SMark Brown #define AFE_I2S_CON3_EN			(1U << 0)
84038c7c9ddSAlexandre Mergnat 
84138c7c9ddSAlexandre Mergnat /* AFE_ADDA_DL_SRC2_CON0 (0x0108) */
84238c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_SAMPLING_RATE	GENMASK(31, 28)
84338c7c9ddSAlexandre Mergnat #define AFE_ADDA_DL_8X_UPSAMPLE		GENMASK(25, 24)
844*d01c6a39SMark Brown #define AFE_ADDA_DL_MUTE_OFF_CH1	(1U << 12)
845*d01c6a39SMark Brown #define AFE_ADDA_DL_MUTE_OFF_CH2	(1U << 11)
846*d01c6a39SMark Brown #define AFE_ADDA_DL_VOICE_DATA		(1U << 5)
847*d01c6a39SMark Brown #define AFE_ADDA_DL_DEGRADE_GAIN	(1U << 1)
84838c7c9ddSAlexandre Mergnat 
84938c7c9ddSAlexandre Mergnat /* AFE_ADDA_UL_SRC_CON0 (0x0114) */
85038c7c9ddSAlexandre Mergnat #define AFE_ADDA_UL_SAMPLING_RATE	GENMASK(19, 17)
85138c7c9ddSAlexandre Mergnat 
85238c7c9ddSAlexandre Mergnat /* AFE_ADDA_UL_DL_CON0 */
853*d01c6a39SMark Brown #define AFE_ADDA_UL_DL_ADDA_AFE_ON	(1U << 0)
854*d01c6a39SMark Brown #define AFE_ADDA_UL_DL_DMIC_CLKDIV_ON	(1U << 1)
85538c7c9ddSAlexandre Mergnat 
85638c7c9ddSAlexandre Mergnat /* AFE_APLL_TUNER_CFG (0x03f0) */
85738c7c9ddSAlexandre Mergnat #define AFE_APLL_TUNER_CFG_MASK		GENMASK(15, 1)
858*d01c6a39SMark Brown #define AFE_APLL_TUNER_CFG_EN_MASK	(1U << 0)
85938c7c9ddSAlexandre Mergnat 
86038c7c9ddSAlexandre Mergnat /* AFE_APLL_TUNER_CFG1 (0x03f4) */
86138c7c9ddSAlexandre Mergnat #define AFE_APLL_TUNER_CFG1_MASK	GENMASK(15, 1)
862*d01c6a39SMark Brown #define AFE_APLL_TUNER_CFG1_EN_MASK	(1U << 0)
86338c7c9ddSAlexandre Mergnat 
86438c7c9ddSAlexandre Mergnat /* PCM_INTF_CON1 (0x0550) */
865*d01c6a39SMark Brown #define PCM_INTF_CON1_EXT_MODEM		(1U << 17)
86638c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_16BIT		(0 << 16)
867*d01c6a39SMark Brown #define PCM_INTF_CON1_24BIT		(1U << 16)
86838c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_32BCK		(0 << 14)
869*d01c6a39SMark Brown #define PCM_INTF_CON1_64BCK		(1U << 14)
87038c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_MASTER_MODE	(0 << 5)
871*d01c6a39SMark Brown #define PCM_INTF_CON1_SLAVE_MODE	(1U << 5)
87238c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_FS_MASK		GENMASK(4, 3)
87338c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_FS_8K		FIELD_PREP(PCM_INTF_CON1_FS_MASK, 0)
87438c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_FS_16K		FIELD_PREP(PCM_INTF_CON1_FS_MASK, 1)
87538c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_FS_32K		FIELD_PREP(PCM_INTF_CON1_FS_MASK, 2)
87638c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_FS_48K		FIELD_PREP(PCM_INTF_CON1_FS_MASK, 3)
87738c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_SYNC_LEN_MASK	GENMASK(13, 9)
87838c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_SYNC_LEN(x)	FIELD_PREP(PCM_INTF_CON1_SYNC_LEN_MASK, ((x) - 1))
87938c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_FORMAT_MASK	GENMASK(2, 1)
880*d01c6a39SMark Brown #define PCM_INTF_CON1_SYNC_OUT_INV	(1U << 23)
881*d01c6a39SMark Brown #define PCM_INTF_CON1_BCLK_OUT_INV	(1U << 22)
882*d01c6a39SMark Brown #define PCM_INTF_CON1_SYNC_IN_INV	(1U << 21)
883*d01c6a39SMark Brown #define PCM_INTF_CON1_BCLK_IN_INV	(1U << 20)
884*d01c6a39SMark Brown #define PCM_INTF_CON1_BYPASS_ASRC	(1U << 6)
885*d01c6a39SMark Brown #define PCM_INTF_CON1_EN		(1U << 0)
88638c7c9ddSAlexandre Mergnat #define PCM_INTF_CON1_CONFIG_MASK	(0xf3fffe)
88738c7c9ddSAlexandre Mergnat 
88838c7c9ddSAlexandre Mergnat /* AFE_DMIC0_UL_SRC_CON0 (0x05b4)
88938c7c9ddSAlexandre Mergnat  * AFE_DMIC1_UL_SRC_CON0 (0x0620)
89038c7c9ddSAlexandre Mergnat  * AFE_DMIC2_UL_SRC_CON0 (0x0780)
89138c7c9ddSAlexandre Mergnat  * AFE_DMIC3_UL_SRC_CON0 (0x07ec)
89238c7c9ddSAlexandre Mergnat  */
89338c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_CK_PHASE_SEL_CH1		GENMASK(29, 27)
89438c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_CK_PHASE_SEL_CH2		GENMASK(26, 24)
895*d01c6a39SMark Brown #define DMIC_TOP_CON_TWO_WIRE_MODE		(1U << 23)
896*d01c6a39SMark Brown #define DMIC_TOP_CON_CH2_ON			(1U << 22)
897*d01c6a39SMark Brown #define DMIC_TOP_CON_CH1_ON			(1U << 21)
89838c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_VOICE_MODE_MASK		GENMASK(19, 17)
89938c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_VOICE_MODE_8K		FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 0)
90038c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_VOICE_MODE_16K		FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 1)
90138c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_VOICE_MODE_32K		FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 2)
90238c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_VOICE_MODE_48K		FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 3)
90338c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_LOW_POWER_MODE_MASK	GENMASK(15, 14)
90438c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_LOW_POWER_MODE(x)		FIELD_PREP(DMIC_TOP_CON_LOW_POWER_MODE_MASK, (x))
905*d01c6a39SMark Brown #define DMIC_TOP_CON_IIR_ON			(1U << 10)
90638c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_IIR_MODE			GENMASK(9, 7)
907*d01c6a39SMark Brown #define DMIC_TOP_CON_INPUT_MODE			(1U << 5)
908*d01c6a39SMark Brown #define DMIC_TOP_CON_SDM3_LEVEL_MODE		(1U << 1)
909*d01c6a39SMark Brown #define DMIC_TOP_CON_SRC_ON			(1U << 0)
91038c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_SDM3_DE_SELECT		(0 << 1)
91138c7c9ddSAlexandre Mergnat #define DMIC_TOP_CON_CONFIG_MASK		(0x3f8ed7a6)
91238c7c9ddSAlexandre Mergnat 
91338c7c9ddSAlexandre Mergnat /* AFE_CONN_24BIT (0x0AA4) */
914*d01c6a39SMark Brown #define AFE_CONN_24BIT_O10		(1U << 10)
915*d01c6a39SMark Brown #define AFE_CONN_24BIT_O09		(1U << 9)
916*d01c6a39SMark Brown #define AFE_CONN_24BIT_O06		(1U << 6)
917*d01c6a39SMark Brown #define AFE_CONN_24BIT_O05		(1U << 5)
918*d01c6a39SMark Brown #define AFE_CONN_24BIT_O04		(1U << 4)
919*d01c6a39SMark Brown #define AFE_CONN_24BIT_O03		(1U << 3)
920*d01c6a39SMark Brown #define AFE_CONN_24BIT_O02		(1U << 2)
921*d01c6a39SMark Brown #define AFE_CONN_24BIT_O01		(1U << 1)
922*d01c6a39SMark Brown #define AFE_CONN_24BIT_O00		(1U << 0)
92338c7c9ddSAlexandre Mergnat 
92438c7c9ddSAlexandre Mergnat /* AFE_HD_ENGEN_ENABLE */
925*d01c6a39SMark Brown #define AFE_22M_PLL_EN		(1U << 0)
926*d01c6a39SMark Brown #define AFE_24M_PLL_EN		(1U << 1)
92738c7c9ddSAlexandre Mergnat 
92838c7c9ddSAlexandre Mergnat /* AFE_GAIN1_CON0 (0x0410) */
92938c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON0_EN_MASK			GENMASK(0, 0)
93038c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON0_MODE_MASK		GENMASK(7, 4)
93138c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON0_SAMPLE_PER_STEP_MASK	GENMASK(15, 8)
93238c7c9ddSAlexandre Mergnat 
93338c7c9ddSAlexandre Mergnat /* AFE_GAIN1_CON1 (0x0414) */
93438c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CON1_MASK		GENMASK(19, 0)
93538c7c9ddSAlexandre Mergnat 
93638c7c9ddSAlexandre Mergnat /* AFE_GAIN1_CUR (0x0B78) */
93738c7c9ddSAlexandre Mergnat #define AFE_GAIN1_CUR_MASK		GENMASK(19, 0)
93838c7c9ddSAlexandre Mergnat 
93938c7c9ddSAlexandre Mergnat /* AFE_CM1_CON0 (0x0e50) */
94038c7c9ddSAlexandre Mergnat /* AFE_CM2_CON0 (0x0e60) */
94138c7c9ddSAlexandre Mergnat #define CM_AFE_CM_CH_NUM_MASK		GENMASK(3, 0)
94238c7c9ddSAlexandre Mergnat #define CM_AFE_CM_CH_NUM(x)		FIELD_PREP(CM_AFE_CM_CH_NUM_MASK, ((x) - 1))
943*d01c6a39SMark Brown #define CM_AFE_CM_ON			(1U << 4)
94438c7c9ddSAlexandre Mergnat #define CM_AFE_CM_START_DATA_MASK	GENMASK(11, 8)
94538c7c9ddSAlexandre Mergnat 
946*d01c6a39SMark Brown #define CM_AFE_CM1_VUL_SEL		(1U << 12)
94738c7c9ddSAlexandre Mergnat #define CM_AFE_CM1_IN_MODE_MASK		GENMASK(19, 16)
948*d01c6a39SMark Brown #define CM_AFE_CM2_TDM_SEL		(1U << 12)
949*d01c6a39SMark Brown #define CM_AFE_CM2_CLK_SEL		(1U << 13)
950*d01c6a39SMark Brown #define CM_AFE_CM2_GASRC1_OUT_SEL	(1U << 17)
951*d01c6a39SMark Brown #define CM_AFE_CM2_GASRC2_OUT_SEL	(1U << 16)
95238c7c9ddSAlexandre Mergnat 
95338c7c9ddSAlexandre Mergnat /* AFE_CM2_CONN* */
95438c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG1(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG1_MASK, (x))
95538c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG1_MASK	GENMASK(4, 0)
95638c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG2(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG2_MASK, (x))
95738c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG2_MASK	GENMASK(9, 5)
95838c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG3(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG3_MASK, (x))
95938c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG3_MASK	GENMASK(14, 10)
96038c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG4(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG4_MASK, (x))
96138c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG4_MASK	GENMASK(19, 15)
96238c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG5(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG5_MASK, (x))
96338c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG5_MASK	GENMASK(24, 20)
96438c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG6(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG6_MASK, (x))
96538c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG6_MASK	GENMASK(29, 25)
96638c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG7(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG7_MASK, (x))
96738c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG7_MASK	GENMASK(4, 0)
96838c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG8(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG8_MASK, (x))
96938c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG8_MASK	GENMASK(9, 5)
97038c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG9(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG9_MASK, (x))
97138c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG9_MASK	GENMASK(14, 10)
97238c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG10(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG10_MASK, (x))
97338c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG10_MASK	GENMASK(19, 15)
97438c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG11(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG11_MASK, (x))
97538c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG11_MASK	GENMASK(24, 20)
97638c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG12(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG12_MASK, (x))
97738c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG12_MASK	GENMASK(29, 25)
97838c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG13(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG13_MASK, (x))
97938c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG13_MASK	GENMASK(4, 0)
98038c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG14(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG14_MASK, (x))
98138c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG14_MASK	GENMASK(9, 5)
98238c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG15(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG15_MASK, (x))
98338c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG15_MASK	GENMASK(14, 10)
98438c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG16(x)	FIELD_PREP(CM2_AFE_CM2_CONN_CFG16_MASK, (x))
98538c7c9ddSAlexandre Mergnat #define CM2_AFE_CM2_CONN_CFG16_MASK	GENMASK(19, 15)
98638c7c9ddSAlexandre Mergnat 
98738c7c9ddSAlexandre Mergnat /* AFE_CM1_CON* */
98838c7c9ddSAlexandre Mergnat #define CM_AFE_CM_UPDATE_CNT1_MASK	GENMASK(15, 0)
98938c7c9ddSAlexandre Mergnat #define CM_AFE_CM_UPDATE_CNT1(x)	FIELD_PREP(CM_AFE_CM_UPDATE_CNT1_MASK, (x))
99038c7c9ddSAlexandre Mergnat #define CM_AFE_CM_UPDATE_CNT2_MASK	GENMASK(31, 16)
99138c7c9ddSAlexandre Mergnat #define CM_AFE_CM_UPDATE_CNT2(x)	FIELD_PREP(CM_AFE_CM_UPDATE_CNT2_MASK, (x))
99238c7c9ddSAlexandre Mergnat 
99338c7c9ddSAlexandre Mergnat #endif
994