Path: blob/master/sound/soc/mediatek/mt8365/mt8365-reg.h
26488 views
/* SPDX-License-Identifier: GPL-2.01*2* MediaTek 8365 audio driver reg definition3*4* Copyright (c) 2024 MediaTek Inc.5* Authors: Jia Zeng <[email protected]>6* Alexandre Mergnat <[email protected]>7*/89#ifndef _MT8365_REG_H_10#define _MT8365_REG_H_1112#include <linux/bitfield.h>1314#define AUDIO_TOP_CON0 (0x0000)15#define AUDIO_TOP_CON1 (0x0004)16#define AUDIO_TOP_CON2 (0x0008)17#define AUDIO_TOP_CON3 (0x000c)1819#define AFE_DAC_CON0 (0x0010)20#define AFE_DAC_CON1 (0x0014)21#define AFE_I2S_CON (0x0018)22#define AFE_CONN0 (0x0020)23#define AFE_CONN1 (0x0024)24#define AFE_CONN2 (0x0028)25#define AFE_CONN3 (0x002c)26#define AFE_CONN4 (0x0030)27#define AFE_I2S_CON1 (0x0034)28#define AFE_I2S_CON2 (0x0038)29#define AFE_MRGIF_CON (0x003c)30#define AFE_DL1_BASE (0x0040)31#define AFE_DL1_CUR (0x0044)32#define AFE_DL1_END (0x0048)33#define AFE_I2S_CON3 (0x004c)34#define AFE_DL2_BASE (0x0050)35#define AFE_DL2_CUR (0x0054)36#define AFE_DL2_END (0x0058)37#define AFE_CONN5 (0x005c)38#define AFE_AWB_BASE (0x0070)39#define AFE_AWB_END (0x0078)40#define AFE_AWB_CUR (0x007c)41#define AFE_VUL_BASE (0x0080)42#define AFE_VUL_END (0x0088)43#define AFE_VUL_CUR (0x008c)44#define AFE_CONN6 (0x00bc)45#define AFE_MEMIF_MSB (0x00cc)46#define AFE_MEMIF_MON0 (0x00d0)47#define AFE_MEMIF_MON1 (0x00d4)48#define AFE_MEMIF_MON2 (0x00d8)49#define AFE_MEMIF_MON3 (0x00dc)50#define AFE_MEMIF_MON4 (0x00e0)51#define AFE_MEMIF_MON5 (0x00e4)52#define AFE_MEMIF_MON6 (0x00e8)53#define AFE_MEMIF_MON7 (0x00ec)54#define AFE_MEMIF_MON8 (0x00f0)55#define AFE_MEMIF_MON9 (0x00f4)56#define AFE_MEMIF_MON10 (0x00f8)57#define AFE_MEMIF_MON11 (0x00fc)58#define AFE_ADDA_DL_SRC2_CON0 (0x0108)59#define AFE_ADDA_DL_SRC2_CON1 (0x010c)60#define AFE_ADDA_UL_SRC_CON0 (0x0114)61#define AFE_ADDA_UL_SRC_CON1 (0x0118)62#define AFE_ADDA_TOP_CON0 (0x0120)63#define AFE_ADDA_UL_DL_CON0 (0x0124)64#define AFE_ADDA_SRC_DEBUG (0x012c)65#define AFE_ADDA_SRC_DEBUG_MON0 (0x0130)66#define AFE_ADDA_SRC_DEBUG_MON1 (0x0134)67#define AFE_ADDA_UL_SRC_MON0 (0x0148)68#define AFE_ADDA_UL_SRC_MON1 (0x014c)69#define AFE_SRAM_BOUND (0x0170)70#define AFE_SECURE_CON (0x0174)71#define AFE_SECURE_CONN0 (0x0178)72#define AFE_SIDETONE_DEBUG (0x01d0)73#define AFE_SIDETONE_MON (0x01d4)74#define AFE_SIDETONE_CON0 (0x01e0)75#define AFE_SIDETONE_COEFF (0x01e4)76#define AFE_SIDETONE_CON1 (0x01e8)77#define AFE_SIDETONE_GAIN (0x01ec)78#define AFE_SGEN_CON0 (0x01f0)79#define AFE_SINEGEN_CON_TDM (0x01f8)80#define AFE_SINEGEN_CON_TDM_IN (0x01fc)81#define AFE_TOP_CON0 (0x0200)82#define AFE_BUS_CFG (0x0240)83#define AFE_BUS_MON0 (0x0244)84#define AFE_ADDA_PREDIS_CON0 (0x0260)85#define AFE_ADDA_PREDIS_CON1 (0x0264)86#define AFE_CONN_MON0 (0x0280)87#define AFE_CONN_MON1 (0x0284)88#define AFE_CONN_MON2 (0x0288)89#define AFE_CONN_MON3 (0x028c)90#define AFE_ADDA_IIR_COEF_02_01 (0x0290)91#define AFE_ADDA_IIR_COEF_04_03 (0x0294)92#define AFE_ADDA_IIR_COEF_06_05 (0x0298)93#define AFE_ADDA_IIR_COEF_08_07 (0x029c)94#define AFE_ADDA_IIR_COEF_10_09 (0x02a0)95#define AFE_VUL_D2_BASE (0x0350)96#define AFE_VUL_D2_END (0x0358)97#define AFE_VUL_D2_CUR (0x035c)98#define AFE_HDMI_OUT_CON0 (0x0370)99#define AFE_HDMI_OUT_BASE (0x0374)100#define AFE_HDMI_OUT_CUR (0x0378)101#define AFE_HDMI_OUT_END (0x037c)102#define AFE_SPDIF_OUT_CON0 (0x0380)103#define AFE_SPDIF_OUT_BASE (0x0384)104#define AFE_SPDIF_OUT_CUR (0x0388)105#define AFE_SPDIF_OUT_END (0x038c)106#define AFE_HDMI_CONN0 (0x0390)107#define AFE_HDMI_CONN1 (0x0398)108#define AFE_CONN_TDMIN_CON (0x039c)109#define AFE_IRQ_MCU_CON (0x03a0)110#define AFE_IRQ_MCU_STATUS (0x03a4)111#define AFE_IRQ_MCU_CLR (0x03a8)112#define AFE_IRQ_MCU_CNT1 (0x03ac)113#define AFE_IRQ_MCU_CNT2 (0x03b0)114#define AFE_IRQ_MCU_EN (0x03b4)115#define AFE_IRQ_MCU_MON2 (0x03b8)116#define AFE_IRQ_MCU_CNT5 (0x03bc)117#define AFE_IRQ1_MCU_CNT_MON (0x03c0)118#define AFE_IRQ2_MCU_CNT_MON (0x03c4)119#define AFE_IRQ1_MCU_EN_CNT_MON (0x03c8)120#define AFE_IRQ5_MCU_CNT_MON (0x03cc)121#define AFE_MEMIF_MINLEN (0x03d0)122#define AFE_MEMIF_MAXLEN (0x03d4)123#define AFE_MEMIF_PBUF_SIZE (0x03d8)124#define AFE_IRQ_MCU_CNT7 (0x03dc)125#define AFE_IRQ7_MCU_CNT_MON (0x03e0)126#define AFE_MEMIF_PBUF2_SIZE (0x03ec)127#define AFE_APLL_TUNER_CFG (0x03f0)128#define AFE_APLL_TUNER_CFG1 (0x03f4)129#define AFE_IRQ_MCU_CON2 (0x03f8)130#define IRQ13_MCU_CNT (0x0408)131#define IRQ13_MCU_CNT_MON (0x040c)132#define AFE_GAIN1_CON0 (0x0410)133#define AFE_GAIN1_CON1 (0x0414)134#define AFE_GAIN1_CON2 (0x0418)135#define AFE_GAIN1_CON3 (0x041c)136#define AFE_GAIN2_CON0 (0x0428)137#define AFE_GAIN2_CON1 (0x042c)138#define AFE_GAIN2_CON2 (0x0430)139#define AFE_GAIN2_CON3 (0x0434)140#define AFE_GAIN2_CUR (0x043c)141#define AFE_CONN11 (0x0448)142#define AFE_CONN12 (0x044c)143#define AFE_CONN13 (0x0450)144#define AFE_CONN14 (0x0454)145#define AFE_CONN15 (0x0458)146#define AFE_CONN16 (0x045c)147#define AFE_CONN7 (0x0460)148#define AFE_CONN8 (0x0464)149#define AFE_CONN9 (0x0468)150#define AFE_CONN10 (0x046c)151#define AFE_CONN21 (0x0470)152#define AFE_CONN22 (0x0474)153#define AFE_CONN23 (0x0478)154#define AFE_CONN24 (0x047c)155#define AFE_IEC_CFG (0x0480)156#define AFE_IEC_NSNUM (0x0484)157#define AFE_IEC_BURST_INFO (0x0488)158#define AFE_IEC_BURST_LEN (0x048c)159#define AFE_IEC_NSADR (0x0490)160#define AFE_CONN_RS (0x0494)161#define AFE_CONN_DI (0x0498)162#define AFE_IEC_CHL_STAT0 (0x04a0)163#define AFE_IEC_CHL_STAT1 (0x04a4)164#define AFE_IEC_CHR_STAT0 (0x04a8)165#define AFE_IEC_CHR_STAT1 (0x04ac)166#define AFE_CONN25 (0x04b0)167#define AFE_CONN26 (0x04b4)168#define FPGA_CFG2 (0x04b8)169#define FPGA_CFG3 (0x04bc)170#define FPGA_CFG0 (0x04c0)171#define FPGA_CFG1 (0x04c4)172#define AFE_SRAM_DELSEL_CON0 (0x04f0)173#define AFE_SRAM_DELSEL_CON1 (0x04f4)174#define AFE_SRAM_DELSEL_CON2 (0x04f8)175#define FPGA_CFG4 (0x04fc)176#define AFE_TDM_GASRC4_ASRC_2CH_CON0 (0x0500)177#define AFE_TDM_GASRC4_ASRC_2CH_CON1 (0x0504)178#define AFE_TDM_GASRC4_ASRC_2CH_CON2 (0x0508)179#define AFE_TDM_GASRC4_ASRC_2CH_CON3 (0x050c)180#define AFE_TDM_GASRC4_ASRC_2CH_CON4 (0x0510)181#define AFE_TDM_GASRC4_ASRC_2CH_CON5 (0x0514)182#define AFE_TDM_GASRC4_ASRC_2CH_CON6 (0x0518)183#define AFE_TDM_GASRC4_ASRC_2CH_CON7 (0x051c)184#define AFE_TDM_GASRC4_ASRC_2CH_CON8 (0x0520)185#define AFE_TDM_GASRC4_ASRC_2CH_CON9 (0x0524)186#define AFE_TDM_GASRC4_ASRC_2CH_CON10 (0x0528)187#define AFE_TDM_GASRC4_ASRC_2CH_CON12 (0x0530)188#define AFE_TDM_GASRC4_ASRC_2CH_CON13 (0x0534)189#define PCM_INTF_CON2 (0x0538)190#define PCM2_INTF_CON (0x053c)191#define AFE_APB_MON (0x0540)192#define AFE_CONN34 (0x0544)193#define AFE_TDM_CON1 (0x0548)194#define AFE_TDM_CON2 (0x054c)195#define PCM_INTF_CON1 (0x0550)196#define AFE_SECURE_MASK_CONN47_1 (0x0554)197#define AFE_SECURE_MASK_CONN48_1 (0x0558)198#define AFE_SECURE_MASK_CONN49_1 (0x055c)199#define AFE_SECURE_MASK_CONN50_1 (0x0560)200#define AFE_SECURE_MASK_CONN51_1 (0x0564)201#define AFE_SECURE_MASK_CONN52_1 (0x0568)202#define AFE_SECURE_MASK_CONN53_1 (0x056c)203#define AFE_SE_SECURE_CON (0x0570)204#define AFE_TDM_IN_CON1 (0x0588)205#define AFE_TDM_IN_CON2 (0x058c)206#define AFE_TDM_IN_MON1 (0x0590)207#define AFE_TDM_IN_MON2 (0x0594)208#define AFE_TDM_IN_MON3 (0x0598)209#define AFE_DMIC0_UL_SRC_CON0 (0x05b4)210#define AFE_DMIC0_UL_SRC_CON1 (0x05b8)211#define AFE_DMIC0_SRC_DEBUG (0x05bc)212#define AFE_DMIC0_SRC_DEBUG_MON0 (0x05c0)213#define AFE_DMIC0_UL_SRC_MON0 (0x05c8)214#define AFE_DMIC0_UL_SRC_MON1 (0x05cc)215#define AFE_DMIC0_IIR_COEF_02_01 (0x05d0)216#define AFE_DMIC0_IIR_COEF_04_03 (0x05d4)217#define AFE_DMIC0_IIR_COEF_06_05 (0x05d8)218#define AFE_DMIC0_IIR_COEF_08_07 (0x05dc)219#define AFE_DMIC0_IIR_COEF_10_09 (0x05e0)220#define AFE_DMIC1_UL_SRC_CON0 (0x0620)221#define AFE_DMIC1_UL_SRC_CON1 (0x0624)222#define AFE_DMIC1_SRC_DEBUG (0x0628)223#define AFE_DMIC1_SRC_DEBUG_MON0 (0x062c)224#define AFE_DMIC1_UL_SRC_MON0 (0x0634)225#define AFE_DMIC1_UL_SRC_MON1 (0x0638)226#define AFE_DMIC1_IIR_COEF_02_01 (0x063c)227#define AFE_DMIC1_IIR_COEF_04_03 (0x0640)228#define AFE_DMIC1_IIR_COEF_06_05 (0x0644)229#define AFE_DMIC1_IIR_COEF_08_07 (0x0648)230#define AFE_DMIC1_IIR_COEF_10_09 (0x064c)231#define AFE_SECURE_MASK_CONN39_1 (0x068c)232#define AFE_SECURE_MASK_CONN40_1 (0x0690)233#define AFE_SECURE_MASK_CONN41_1 (0x0694)234#define AFE_SECURE_MASK_CONN42_1 (0x0698)235#define AFE_SECURE_MASK_CONN43_1 (0x069c)236#define AFE_SECURE_MASK_CONN44_1 (0x06a0)237#define AFE_SECURE_MASK_CONN45_1 (0x06a4)238#define AFE_SECURE_MASK_CONN46_1 (0x06a8)239#define AFE_TDM_GASRC1_ASRC_2CH_CON0 (0x06c0)240#define AFE_TDM_GASRC1_ASRC_2CH_CON1 (0x06c4)241#define AFE_TDM_GASRC1_ASRC_2CH_CON2 (0x06c8)242#define AFE_TDM_GASRC1_ASRC_2CH_CON3 (0x06cc)243#define AFE_TDM_GASRC1_ASRC_2CH_CON4 (0x06d0)244#define AFE_TDM_GASRC1_ASRC_2CH_CON5 (0x06d4)245#define AFE_TDM_GASRC1_ASRC_2CH_CON6 (0x06d8)246#define AFE_TDM_GASRC1_ASRC_2CH_CON7 (0x06dc)247#define AFE_TDM_GASRC1_ASRC_2CH_CON8 (0x06e0)248#define AFE_TDM_GASRC1_ASRC_2CH_CON9 (0x06e4)249#define AFE_TDM_GASRC1_ASRC_2CH_CON10 (0x06e8)250#define AFE_TDM_GASRC1_ASRC_2CH_CON12 (0x06f0)251#define AFE_TDM_GASRC1_ASRC_2CH_CON13 (0x06f4)252#define AFE_TDM_ASRC_CON0 (0x06f8)253#define AFE_TDM_GASRC2_ASRC_2CH_CON0 (0x0700)254#define AFE_TDM_GASRC2_ASRC_2CH_CON1 (0x0704)255#define AFE_TDM_GASRC2_ASRC_2CH_CON2 (0x0708)256#define AFE_TDM_GASRC2_ASRC_2CH_CON3 (0x070c)257#define AFE_TDM_GASRC2_ASRC_2CH_CON4 (0x0710)258#define AFE_TDM_GASRC2_ASRC_2CH_CON5 (0x0714)259#define AFE_TDM_GASRC2_ASRC_2CH_CON6 (0x0718)260#define AFE_TDM_GASRC2_ASRC_2CH_CON7 (0x071c)261#define AFE_TDM_GASRC2_ASRC_2CH_CON8 (0x0720)262#define AFE_TDM_GASRC2_ASRC_2CH_CON9 (0x0724)263#define AFE_TDM_GASRC2_ASRC_2CH_CON10 (0x0728)264#define AFE_TDM_GASRC2_ASRC_2CH_CON12 (0x0730)265#define AFE_TDM_GASRC2_ASRC_2CH_CON13 (0x0734)266#define AFE_TDM_GASRC3_ASRC_2CH_CON0 (0x0740)267#define AFE_TDM_GASRC3_ASRC_2CH_CON1 (0x0744)268#define AFE_TDM_GASRC3_ASRC_2CH_CON2 (0x0748)269#define AFE_TDM_GASRC3_ASRC_2CH_CON3 (0x074c)270#define AFE_TDM_GASRC3_ASRC_2CH_CON4 (0x0750)271#define AFE_TDM_GASRC3_ASRC_2CH_CON5 (0x0754)272#define AFE_TDM_GASRC3_ASRC_2CH_CON6 (0x0758)273#define AFE_TDM_GASRC3_ASRC_2CH_CON7 (0x075c)274#define AFE_TDM_GASRC3_ASRC_2CH_CON8 (0x0760)275#define AFE_TDM_GASRC3_ASRC_2CH_CON9 (0x0764)276#define AFE_TDM_GASRC3_ASRC_2CH_CON10 (0x0768)277#define AFE_TDM_GASRC3_ASRC_2CH_CON12 (0x0770)278#define AFE_TDM_GASRC3_ASRC_2CH_CON13 (0x0774)279#define AFE_DMIC2_UL_SRC_CON0 (0x0780)280#define AFE_DMIC2_UL_SRC_CON1 (0x0784)281#define AFE_DMIC2_SRC_DEBUG (0x0788)282#define AFE_DMIC2_SRC_DEBUG_MON0 (0x078c)283#define AFE_DMIC2_UL_SRC_MON0 (0x0794)284#define AFE_DMIC2_UL_SRC_MON1 (0x0798)285#define AFE_DMIC2_IIR_COEF_02_01 (0x079c)286#define AFE_DMIC2_IIR_COEF_04_03 (0x07a0)287#define AFE_DMIC2_IIR_COEF_06_05 (0x07a4)288#define AFE_DMIC2_IIR_COEF_08_07 (0x07a8)289#define AFE_DMIC2_IIR_COEF_10_09 (0x07ac)290#define AFE_DMIC3_UL_SRC_CON0 (0x07ec)291#define AFE_DMIC3_UL_SRC_CON1 (0x07f0)292#define AFE_DMIC3_SRC_DEBUG (0x07f4)293#define AFE_DMIC3_SRC_DEBUG_MON0 (0x07f8)294#define AFE_DMIC3_UL_SRC_MON0 (0x0800)295#define AFE_DMIC3_UL_SRC_MON1 (0x0804)296#define AFE_DMIC3_IIR_COEF_02_01 (0x0808)297#define AFE_DMIC3_IIR_COEF_04_03 (0x080c)298#define AFE_DMIC3_IIR_COEF_06_05 (0x0810)299#define AFE_DMIC3_IIR_COEF_08_07 (0x0814)300#define AFE_DMIC3_IIR_COEF_10_09 (0x0818)301#define AFE_SECURE_MASK_CONN25_1 (0x0858)302#define AFE_SECURE_MASK_CONN26_1 (0x085c)303#define AFE_SECURE_MASK_CONN27_1 (0x0860)304#define AFE_SECURE_MASK_CONN28_1 (0x0864)305#define AFE_SECURE_MASK_CONN29_1 (0x0868)306#define AFE_SECURE_MASK_CONN30_1 (0x086c)307#define AFE_SECURE_MASK_CONN31_1 (0x0870)308#define AFE_SECURE_MASK_CONN32_1 (0x0874)309#define AFE_SECURE_MASK_CONN33_1 (0x0878)310#define AFE_SECURE_MASK_CONN34_1 (0x087c)311#define AFE_SECURE_MASK_CONN35_1 (0x0880)312#define AFE_SECURE_MASK_CONN36_1 (0x0884)313#define AFE_SECURE_MASK_CONN37_1 (0x0888)314#define AFE_SECURE_MASK_CONN38_1 (0x088c)315#define AFE_IRQ_MCU_SCP_EN (0x0890)316#define AFE_IRQ_MCU_DSP_EN (0x0894)317#define AFE_IRQ3_MCU_CNT_MON (0x0898)318#define AFE_IRQ4_MCU_CNT_MON (0x089c)319#define AFE_IRQ8_MCU_CNT_MON (0x08a0)320#define AFE_IRQ_MCU_CNT3 (0x08a4)321#define AFE_IRQ_MCU_CNT4 (0x08a8)322#define AFE_IRQ_MCU_CNT8 (0x08ac)323#define AFE_IRQ_MCU_CNT11 (0x08b0)324#define AFE_IRQ_MCU_CNT12 (0x08b4)325#define AFE_IRQ11_MCU_CNT_MON (0x08b8)326#define AFE_IRQ12_MCU_CNT_MON (0x08bc)327#define AFE_VUL3_BASE (0x08c0)328#define AFE_VUL3_CUR (0x08c4)329#define AFE_VUL3_END (0x08c8)330#define AFE_VUL3_BASE_MSB (0x08d0)331#define AFE_VUL3_END_MSB (0x08d4)332#define AFE_IRQ10_MCU_CNT_MON (0x08d8)333#define AFE_IRQ_MCU_CNT10 (0x08dc)334#define AFE_IRQ_ACC1_CNT (0x08e0)335#define AFE_IRQ_ACC2_CNT (0x08e4)336#define AFE_IRQ_ACC1_CNT_MON1 (0x08e8)337#define AFE_IRQ_ACC2_CNT_MON (0x08ec)338#define AFE_TSF_CON (0x08f0)339#define AFE_TSF_MON (0x08f4)340#define AFE_IRQ_ACC1_CNT_MON2 (0x08f8)341#define AFE_SPDIFIN_CFG0 (0x0900)342#define AFE_SPDIFIN_CFG1 (0x0904)343#define AFE_SPDIFIN_CHSTS1 (0x0908)344#define AFE_SPDIFIN_CHSTS2 (0x090c)345#define AFE_SPDIFIN_CHSTS3 (0x0910)346#define AFE_SPDIFIN_CHSTS4 (0x0914)347#define AFE_SPDIFIN_CHSTS5 (0x0918)348#define AFE_SPDIFIN_CHSTS6 (0x091c)349#define AFE_SPDIFIN_DEBUG1 (0x0920)350#define AFE_SPDIFIN_DEBUG2 (0x0924)351#define AFE_SPDIFIN_DEBUG3 (0x0928)352#define AFE_SPDIFIN_DEBUG4 (0x092c)353#define AFE_SPDIFIN_EC (0x0930)354#define AFE_SPDIFIN_CKLOCK_CFG (0x0934)355#define AFE_SPDIFIN_BR (0x093c)356#define AFE_SPDIFIN_BR_DBG1 (0x0940)357#define AFE_SPDIFIN_INT_EXT (0x0948)358#define AFE_SPDIFIN_INT_EXT2 (0x094c)359#define SPDIFIN_FREQ_INFO (0x0950)360#define SPDIFIN_FREQ_INFO_2 (0x0954)361#define SPDIFIN_FREQ_INFO_3 (0x0958)362#define SPDIFIN_FREQ_STATUS (0x095c)363#define SPDIFIN_USERCODE1 (0x0960)364#define SPDIFIN_USERCODE2 (0x0964)365#define SPDIFIN_USERCODE3 (0x0968)366#define SPDIFIN_USERCODE4 (0x096c)367#define SPDIFIN_USERCODE5 (0x0970)368#define SPDIFIN_USERCODE6 (0x0974)369#define SPDIFIN_USERCODE7 (0x0978)370#define SPDIFIN_USERCODE8 (0x097c)371#define SPDIFIN_USERCODE9 (0x0980)372#define SPDIFIN_USERCODE10 (0x0984)373#define SPDIFIN_USERCODE11 (0x0988)374#define SPDIFIN_USERCODE12 (0x098c)375#define SPDIFIN_MEMIF_CON0 (0x0990)376#define SPDIFIN_BASE_ADR (0x0994)377#define SPDIFIN_END_ADR (0x0998)378#define SPDIFIN_APLL_TUNER_CFG (0x09a0)379#define SPDIFIN_APLL_TUNER_CFG1 (0x09a4)380#define SPDIFIN_APLL2_TUNER_CFG (0x09a8)381#define SPDIFIN_APLL2_TUNER_CFG1 (0x09ac)382#define SPDIFIN_TYPE_DET (0x09b0)383#define MPHONE_MULTI_CON0 (0x09b4)384#define SPDIFIN_CUR_ADR (0x09b8)385#define AFE_SINEGEN_CON_SPDIFIN (0x09bc)386#define AFE_HDMI_IN_2CH_CON0 (0x09c0)387#define AFE_HDMI_IN_2CH_BASE (0x09c4)388#define AFE_HDMI_IN_2CH_END (0x09c8)389#define AFE_HDMI_IN_2CH_CUR (0x09cc)390#define AFE_MEMIF_BUF_MON0 (0x09d0)391#define AFE_MEMIF_BUF_MON1 (0x09d4)392#define AFE_MEMIF_BUF_MON2 (0x09d8)393#define AFE_MEMIF_BUF_MON3 (0x09dc)394#define AFE_MEMIF_BUF_MON6 (0x09e8)395#define AFE_MEMIF_BUF_MON7 (0x09ec)396#define AFE_MEMIF_BUF_MON8 (0x09f0)397#define AFE_MEMIF_BUF_MON10 (0x09f8)398#define AFE_MEMIF_BUF_MON11 (0x09fc)399#define SYSTOP_STC_CONFIG (0x0a00)400#define AUDIO_STC_STATUS (0x0a04)401#define SYSTOP_W_STC_H (0x0a08)402#define SYSTOP_W_STC_L (0x0a0c)403#define SYSTOP_R_STC_H (0x0a10)404#define SYSTOP_R_STC_L (0x0a14)405#define AUDIO_W_STC_H (0x0a18)406#define AUDIO_W_STC_L (0x0a1c)407#define AUDIO_R_STC_H (0x0a20)408#define AUDIO_R_STC_L (0x0a24)409#define SYSTOP_W_STC2_H (0x0a28)410#define SYSTOP_W_STC2_L (0x0a2c)411#define SYSTOP_R_STC2_H (0x0a30)412#define SYSTOP_R_STC2_L (0x0a34)413#define AUDIO_W_STC2_H (0x0a38)414#define AUDIO_W_STC2_L (0x0a3c)415#define AUDIO_R_STC2_H (0x0a40)416#define AUDIO_R_STC2_L (0x0a44)417418#define AFE_CONN17 (0x0a48)419#define AFE_CONN18 (0x0a4c)420#define AFE_CONN19 (0x0a50)421#define AFE_CONN20 (0x0a54)422#define AFE_CONN27 (0x0a58)423#define AFE_CONN28 (0x0a5c)424#define AFE_CONN29 (0x0a60)425#define AFE_CONN30 (0x0a64)426#define AFE_CONN31 (0x0a68)427#define AFE_CONN32 (0x0a6c)428#define AFE_CONN33 (0x0a70)429#define AFE_CONN35 (0x0a74)430#define AFE_CONN36 (0x0a78)431#define AFE_CONN37 (0x0a7c)432#define AFE_CONN38 (0x0a80)433#define AFE_CONN39 (0x0a84)434#define AFE_CONN40 (0x0a88)435#define AFE_CONN41 (0x0a8c)436#define AFE_CONN42 (0x0a90)437#define AFE_CONN44 (0x0a94)438#define AFE_CONN45 (0x0a98)439#define AFE_CONN46 (0x0a9c)440#define AFE_CONN47 (0x0aa0)441#define AFE_CONN_24BIT (0x0aa4)442#define AFE_CONN0_1 (0x0aa8)443#define AFE_CONN1_1 (0x0aac)444#define AFE_CONN2_1 (0x0ab0)445#define AFE_CONN3_1 (0x0ab4)446#define AFE_CONN4_1 (0x0ab8)447#define AFE_CONN5_1 (0x0abc)448#define AFE_CONN6_1 (0x0ac0)449#define AFE_CONN7_1 (0x0ac4)450#define AFE_CONN8_1 (0x0ac8)451#define AFE_CONN9_1 (0x0acc)452#define AFE_CONN10_1 (0x0ad0)453#define AFE_CONN11_1 (0x0ad4)454#define AFE_CONN12_1 (0x0ad8)455#define AFE_CONN13_1 (0x0adc)456#define AFE_CONN14_1 (0x0ae0)457#define AFE_CONN15_1 (0x0ae4)458#define AFE_CONN16_1 (0x0ae8)459#define AFE_CONN17_1 (0x0aec)460#define AFE_CONN18_1 (0x0af0)461#define AFE_CONN19_1 (0x0af4)462#define AFE_CONN43 (0x0af8)463#define AFE_CONN43_1 (0x0afc)464#define AFE_CONN21_1 (0x0b00)465#define AFE_CONN22_1 (0x0b04)466#define AFE_CONN23_1 (0x0b08)467#define AFE_CONN24_1 (0x0b0c)468#define AFE_CONN25_1 (0x0b10)469#define AFE_CONN26_1 (0x0b14)470#define AFE_CONN27_1 (0x0b18)471#define AFE_CONN28_1 (0x0b1c)472#define AFE_CONN29_1 (0x0b20)473#define AFE_CONN30_1 (0x0b24)474#define AFE_CONN31_1 (0x0b28)475#define AFE_CONN32_1 (0x0b2c)476#define AFE_CONN33_1 (0x0b30)477#define AFE_CONN34_1 (0x0b34)478#define AFE_CONN35_1 (0x0b38)479#define AFE_CONN36_1 (0x0b3c)480#define AFE_CONN37_1 (0x0b40)481#define AFE_CONN38_1 (0x0b44)482#define AFE_CONN39_1 (0x0b48)483#define AFE_CONN40_1 (0x0b4c)484#define AFE_CONN41_1 (0x0b50)485#define AFE_CONN42_1 (0x0b54)486#define AFE_CONN44_1 (0x0b58)487#define AFE_CONN45_1 (0x0b5c)488#define AFE_CONN46_1 (0x0b60)489#define AFE_CONN47_1 (0x0b64)490#define AFE_CONN_RS_1 (0x0b68)491#define AFE_CONN_DI_1 (0x0b6c)492#define AFE_CONN_24BIT_1 (0x0b70)493#define AFE_GAIN1_CUR (0x0b78)494#define AFE_CONN20_1 (0x0b7c)495#define AFE_DL1_BASE_MSB (0x0b80)496#define AFE_DL1_END_MSB (0x0b84)497#define AFE_DL2_BASE_MSB (0x0b88)498#define AFE_DL2_END_MSB (0x0b8c)499#define AFE_AWB_BASE_MSB (0x0b90)500#define AFE_AWB_END_MSB (0x0b94)501#define AFE_VUL_BASE_MSB (0x0ba0)502#define AFE_VUL_END_MSB (0x0ba4)503#define AFE_VUL_D2_BASE_MSB (0x0ba8)504#define AFE_VUL_D2_END_MSB (0x0bac)505#define AFE_HDMI_OUT_BASE_MSB (0x0bb8)506#define AFE_HDMI_OUT_END_MSB (0x0bbc)507#define AFE_HDMI_IN_2CH_BASE_MSB (0x0bc0)508#define AFE_HDMI_IN_2CH_END_MSB (0x0bc4)509#define AFE_SPDIF_OUT_BASE_MSB (0x0bc8)510#define AFE_SPDIF_OUT_END_MSB (0x0bcc)511#define SPDIFIN_BASE_MSB (0x0bd0)512#define SPDIFIN_END_MSB (0x0bd4)513#define AFE_DL1_CUR_MSB (0x0bd8)514#define AFE_DL2_CUR_MSB (0x0bdc)515#define AFE_AWB_CUR_MSB (0x0be8)516#define AFE_VUL_CUR_MSB (0x0bf8)517#define AFE_VUL_D2_CUR_MSB (0x0c04)518#define AFE_HDMI_OUT_CUR_MSB (0x0c0c)519#define AFE_HDMI_IN_2CH_CUR_MSB (0x0c10)520#define AFE_SPDIF_OUT_CUR_MSB (0x0c14)521#define SPDIFIN_CUR_MSB (0x0c18)522#define AFE_CONN_REG (0x0c20)523#define AFE_SECURE_MASK_CONN14_1 (0x0c24)524#define AFE_SECURE_MASK_CONN15_1 (0x0c28)525#define AFE_SECURE_MASK_CONN16_1 (0x0c2c)526#define AFE_SECURE_MASK_CONN17_1 (0x0c30)527#define AFE_SECURE_MASK_CONN18_1 (0x0c34)528#define AFE_SECURE_MASK_CONN19_1 (0x0c38)529#define AFE_SECURE_MASK_CONN20_1 (0x0c3c)530#define AFE_SECURE_MASK_CONN21_1 (0x0c40)531#define AFE_SECURE_MASK_CONN22_1 (0x0c44)532#define AFE_SECURE_MASK_CONN23_1 (0x0c48)533#define AFE_SECURE_MASK_CONN24_1 (0x0c4c)534#define AFE_ADDA_DL_SDM_DCCOMP_CON (0x0c50)535#define AFE_ADDA_DL_SDM_TEST (0x0c54)536#define AFE_ADDA_DL_DC_COMP_CFG0 (0x0c58)537#define AFE_ADDA_DL_DC_COMP_CFG1 (0x0c5c)538#define AFE_ADDA_DL_SDM_FIFO_MON (0x0c60)539#define AFE_ADDA_DL_SRC_LCH_MON (0x0c64)540#define AFE_ADDA_DL_SRC_RCH_MON (0x0c68)541#define AFE_ADDA_DL_SDM_OUT_MON (0x0c6c)542#define AFE_ADDA_DL_SDM_DITHER_CON (0x0c70)543544#define AFE_VUL3_CUR_MSB (0x0c78)545#define AFE_ASRC_2CH_CON0 (0x0c80)546#define AFE_ASRC_2CH_CON1 (0x0c84)547#define AFE_ASRC_2CH_CON2 (0x0c88)548#define AFE_ASRC_2CH_CON3 (0x0c8c)549#define AFE_ASRC_2CH_CON4 (0x0c90)550#define AFE_ASRC_2CH_CON5 (0x0c94)551#define AFE_ASRC_2CH_CON6 (0x0c98)552#define AFE_ASRC_2CH_CON7 (0x0c9c)553#define AFE_ASRC_2CH_CON8 (0x0ca0)554#define AFE_ASRC_2CH_CON9 (0x0ca4)555#define AFE_ASRC_2CH_CON10 (0x0ca8)556#define AFE_ASRC_2CH_CON12 (0x0cb0)557#define AFE_ASRC_2CH_CON13 (0x0cb4)558559#define AFE_PCM_TX_ASRC_2CH_CON0 (0x0cc0)560#define AFE_PCM_TX_ASRC_2CH_CON1 (0x0cc4)561#define AFE_PCM_TX_ASRC_2CH_CON2 (0x0cc8)562#define AFE_PCM_TX_ASRC_2CH_CON3 (0x0ccc)563#define AFE_PCM_TX_ASRC_2CH_CON4 (0x0cd0)564#define AFE_PCM_TX_ASRC_2CH_CON5 (0x0cd4)565#define AFE_PCM_TX_ASRC_2CH_CON6 (0x0cd8)566#define AFE_PCM_TX_ASRC_2CH_CON7 (0x0cdc)567#define AFE_PCM_TX_ASRC_2CH_CON8 (0x0ce0)568#define AFE_PCM_TX_ASRC_2CH_CON9 (0x0ce4)569#define AFE_PCM_TX_ASRC_2CH_CON10 (0x0ce8)570#define AFE_PCM_TX_ASRC_2CH_CON12 (0x0cf0)571#define AFE_PCM_TX_ASRC_2CH_CON13 (0x0cf4)572#define AFE_PCM_RX_ASRC_2CH_CON0 (0x0d00)573#define AFE_PCM_RX_ASRC_2CH_CON1 (0x0d04)574#define AFE_PCM_RX_ASRC_2CH_CON2 (0x0d08)575#define AFE_PCM_RX_ASRC_2CH_CON3 (0x0d0c)576#define AFE_PCM_RX_ASRC_2CH_CON4 (0x0d10)577#define AFE_PCM_RX_ASRC_2CH_CON5 (0x0d14)578#define AFE_PCM_RX_ASRC_2CH_CON6 (0x0d18)579#define AFE_PCM_RX_ASRC_2CH_CON7 (0x0d1c)580#define AFE_PCM_RX_ASRC_2CH_CON8 (0x0d20)581#define AFE_PCM_RX_ASRC_2CH_CON9 (0x0d24)582#define AFE_PCM_RX_ASRC_2CH_CON10 (0x0d28)583#define AFE_PCM_RX_ASRC_2CH_CON12 (0x0d30)584#define AFE_PCM_RX_ASRC_2CH_CON13 (0x0d34)585586#define AFE_ADDA_PREDIS_CON2 (0x0d40)587#define AFE_ADDA_PREDIS_CON3 (0x0d44)588#define AFE_SECURE_MASK_CONN4_1 (0x0d48)589#define AFE_SECURE_MASK_CONN5_1 (0x0d4c)590#define AFE_SECURE_MASK_CONN6_1 (0x0d50)591#define AFE_SECURE_MASK_CONN7_1 (0x0d54)592#define AFE_SECURE_MASK_CONN8_1 (0x0d58)593#define AFE_SECURE_MASK_CONN9_1 (0x0d5c)594#define AFE_SECURE_MASK_CONN10_1 (0x0d60)595#define AFE_SECURE_MASK_CONN11_1 (0x0d64)596#define AFE_SECURE_MASK_CONN12_1 (0x0d68)597#define AFE_SECURE_MASK_CONN13_1 (0x0d6c)598#define AFE_MEMIF_MON12 (0x0d70)599#define AFE_MEMIF_MON13 (0x0d74)600#define AFE_MEMIF_MON14 (0x0d78)601#define AFE_MEMIF_MON15 (0x0d7c)602#define AFE_SECURE_MASK_CONN42 (0x0dbc)603#define AFE_SECURE_MASK_CONN43 (0x0dc0)604#define AFE_SECURE_MASK_CONN44 (0x0dc4)605#define AFE_SECURE_MASK_CONN45 (0x0dc8)606#define AFE_SECURE_MASK_CONN46 (0x0dcc)607#define AFE_HD_ENGEN_ENABLE (0x0dd0)608#define AFE_SECURE_MASK_CONN47 (0x0dd4)609#define AFE_SECURE_MASK_CONN48 (0x0dd8)610#define AFE_SECURE_MASK_CONN49 (0x0ddc)611#define AFE_SECURE_MASK_CONN50 (0x0de0)612#define AFE_SECURE_MASK_CONN51 (0x0de4)613#define AFE_SECURE_MASK_CONN52 (0x0de8)614#define AFE_SECURE_MASK_CONN53 (0x0dec)615#define AFE_SECURE_MASK_CONN0_1 (0x0df0)616#define AFE_SECURE_MASK_CONN1_1 (0x0df4)617#define AFE_SECURE_MASK_CONN2_1 (0x0df8)618#define AFE_SECURE_MASK_CONN3_1 (0x0dfc)619620#define AFE_ADDA_MTKAIF_CFG0 (0x0e00)621#define AFE_ADDA_MTKAIF_SYNCWORD_CFG (0x0e14)622#define AFE_ADDA_MTKAIF_RX_CFG0 (0x0e20)623#define AFE_ADDA_MTKAIF_RX_CFG1 (0x0e24)624#define AFE_ADDA_MTKAIF_RX_CFG2 (0x0e28)625#define AFE_ADDA_MTKAIF_MON0 (0x0e34)626#define AFE_ADDA_MTKAIF_MON1 (0x0e38)627#define AFE_AUD_PAD_TOP (0x0e40)628629#define AFE_CM1_CON4 (0x0e48)630#define AFE_CM2_CON4 (0x0e4c)631#define AFE_CM1_CON0 (0x0e50)632#define AFE_CM1_CON1 (0x0e54)633#define AFE_CM1_CON2 (0x0e58)634#define AFE_CM1_CON3 (0x0e5c)635#define AFE_CM2_CON0 (0x0e60)636#define AFE_CM2_CON1 (0x0e64)637#define AFE_CM2_CON2 (0x0e68)638#define AFE_CM2_CON3 (0x0e6c)639#define AFE_CM2_CONN0 (0x0e70)640#define AFE_CM2_CONN1 (0x0e74)641#define AFE_CM2_CONN2 (0x0e78)642643#define AFE_GENERAL1_ASRC_2CH_CON0 (0x0e80)644#define AFE_GENERAL1_ASRC_2CH_CON1 (0x0e84)645#define AFE_GENERAL1_ASRC_2CH_CON2 (0x0e88)646#define AFE_GENERAL1_ASRC_2CH_CON3 (0x0e8c)647#define AFE_GENERAL1_ASRC_2CH_CON4 (0x0e90)648#define AFE_GENERAL1_ASRC_2CH_CON5 (0x0e94)649#define AFE_GENERAL1_ASRC_2CH_CON6 (0x0e98)650#define AFE_GENERAL1_ASRC_2CH_CON7 (0x0e9c)651#define AFE_GENERAL1_ASRC_2CH_CON8 (0x0ea0)652#define AFE_GENERAL1_ASRC_2CH_CON9 (0x0ea4)653#define AFE_GENERAL1_ASRC_2CH_CON10 (0x0ea8)654#define AFE_GENERAL1_ASRC_2CH_CON12 (0x0eb0)655#define AFE_GENERAL1_ASRC_2CH_CON13 (0x0eb4)656#define GENERAL_ASRC_MODE (0x0eb8)657#define GENERAL_ASRC_EN_ON (0x0ebc)658659#define AFE_CONN48 (0x0ec0)660#define AFE_CONN49 (0x0ec4)661#define AFE_CONN50 (0x0ec8)662#define AFE_CONN51 (0x0ecc)663#define AFE_CONN52 (0x0ed0)664#define AFE_CONN53 (0x0ed4)665#define AFE_CONN48_1 (0x0ee0)666#define AFE_CONN49_1 (0x0ee4)667#define AFE_CONN50_1 (0x0ee8)668#define AFE_CONN51_1 (0x0eec)669#define AFE_CONN52_1 (0x0ef0)670#define AFE_CONN53_1 (0x0ef4)671672#define AFE_GENERAL2_ASRC_2CH_CON0 (0x0f00)673#define AFE_GENERAL2_ASRC_2CH_CON1 (0x0f04)674#define AFE_GENERAL2_ASRC_2CH_CON2 (0x0f08)675#define AFE_GENERAL2_ASRC_2CH_CON3 (0x0f0c)676#define AFE_GENERAL2_ASRC_2CH_CON4 (0x0f10)677#define AFE_GENERAL2_ASRC_2CH_CON5 (0x0f14)678#define AFE_GENERAL2_ASRC_2CH_CON6 (0x0f18)679#define AFE_GENERAL2_ASRC_2CH_CON7 (0x0f1c)680#define AFE_GENERAL2_ASRC_2CH_CON8 (0x0f20)681#define AFE_GENERAL2_ASRC_2CH_CON9 (0x0f24)682#define AFE_GENERAL2_ASRC_2CH_CON10 (0x0f28)683#define AFE_GENERAL2_ASRC_2CH_CON12 (0x0f30)684#define AFE_GENERAL2_ASRC_2CH_CON13 (0x0f34)685686#define AFE_SECURE_MASK_CONN28 (0x0f48)687#define AFE_SECURE_MASK_CONN29 (0x0f4c)688#define AFE_SECURE_MASK_CONN30 (0x0f50)689#define AFE_SECURE_MASK_CONN31 (0x0f54)690#define AFE_SECURE_MASK_CONN32 (0x0f58)691#define AFE_SECURE_MASK_CONN33 (0x0f5c)692#define AFE_SECURE_MASK_CONN34 (0x0f60)693#define AFE_SECURE_MASK_CONN35 (0x0f64)694#define AFE_SECURE_MASK_CONN36 (0x0f68)695#define AFE_SECURE_MASK_CONN37 (0x0f6c)696#define AFE_SECURE_MASK_CONN38 (0x0f70)697#define AFE_SECURE_MASK_CONN39 (0x0f74)698#define AFE_SECURE_MASK_CONN40 (0x0f78)699#define AFE_SECURE_MASK_CONN41 (0x0f7c)700#define AFE_SIDEBAND0 (0x0f80)701#define AFE_SIDEBAND1 (0x0f84)702#define AFE_SECURE_SIDEBAND0 (0x0f88)703#define AFE_SECURE_SIDEBAND1 (0x0f8c)704#define AFE_SECURE_MASK_CONN0 (0x0f90)705#define AFE_SECURE_MASK_CONN1 (0x0f94)706#define AFE_SECURE_MASK_CONN2 (0x0f98)707#define AFE_SECURE_MASK_CONN3 (0x0f9c)708#define AFE_SECURE_MASK_CONN4 (0x0fa0)709#define AFE_SECURE_MASK_CONN5 (0x0fa4)710#define AFE_SECURE_MASK_CONN6 (0x0fa8)711#define AFE_SECURE_MASK_CONN7 (0x0fac)712#define AFE_SECURE_MASK_CONN8 (0x0fb0)713#define AFE_SECURE_MASK_CONN9 (0x0fb4)714#define AFE_SECURE_MASK_CONN10 (0x0fb8)715#define AFE_SECURE_MASK_CONN11 (0x0fbc)716#define AFE_SECURE_MASK_CONN12 (0x0fc0)717#define AFE_SECURE_MASK_CONN13 (0x0fc4)718#define AFE_SECURE_MASK_CONN14 (0x0fc8)719#define AFE_SECURE_MASK_CONN15 (0x0fcc)720#define AFE_SECURE_MASK_CONN16 (0x0fd0)721#define AFE_SECURE_MASK_CONN17 (0x0fd4)722#define AFE_SECURE_MASK_CONN18 (0x0fd8)723#define AFE_SECURE_MASK_CONN19 (0x0fdc)724#define AFE_SECURE_MASK_CONN20 (0x0fe0)725#define AFE_SECURE_MASK_CONN21 (0x0fe4)726#define AFE_SECURE_MASK_CONN22 (0x0fe8)727#define AFE_SECURE_MASK_CONN23 (0x0fec)728#define AFE_SECURE_MASK_CONN24 (0x0ff0)729#define AFE_SECURE_MASK_CONN25 (0x0ff4)730#define AFE_SECURE_MASK_CONN26 (0x0ff8)731#define AFE_SECURE_MASK_CONN27 (0x0ffc)732733#define MAX_REGISTER AFE_SECURE_MASK_CONN27734735#define AFE_IRQ_STATUS_BITS 0x3ff736737/* AUDIO_TOP_CON0 (0x0000) */738#define AUD_TCON0_PDN_TML (1U << 27)739#define AUD_TCON0_PDN_DAC_PREDIS (1U << 26)740#define AUD_TCON0_PDN_DAC (1U << 25)741#define AUD_TCON0_PDN_ADC (1U << 24)742#define AUD_TCON0_PDN_TDM_IN (1U << 23)743#define AUD_TCON0_PDN_TDM_OUT (1U << 22)744#define AUD_TCON0_PDN_SPDIF (1U << 21)745#define AUD_TCON0_PDN_APLL_TUNER (1U << 19)746#define AUD_TCON0_PDN_APLL2_TUNER (1U << 18)747#define AUD_TCON0_PDN_INTDIR (1U << 15)748#define AUD_TCON0_PDN_24M (1U << 9)749#define AUD_TCON0_PDN_22M (1U << 8)750#define AUD_TCON0_PDN_I2S_IN (1U << 6)751#define AUD_TCON0_PDN_AFE (1U << 2)752753/* AUDIO_TOP_CON1 (0x0004) */754#define AUD_TCON1_PDN_TDM_ASRC (1U << 15)755#define AUD_TCON1_PDN_GENERAL2_ASRC (1U << 14)756#define AUD_TCON1_PDN_GENERAL1_ASRC (1U << 13)757#define AUD_TCON1_PDN_CONNSYS_I2S_ASRC (1U << 12)758#define AUD_TCON1_PDN_DMIC3_ADC (1U << 11)759#define AUD_TCON1_PDN_DMIC2_ADC (1U << 10)760#define AUD_TCON1_PDN_DMIC1_ADC (1U << 9)761#define AUD_TCON1_PDN_DMIC0_ADC (1U << 8)762#define AUD_TCON1_PDN_I2S4_BCLK (1U << 7)763#define AUD_TCON1_PDN_I2S3_BCLK (1U << 6)764#define AUD_TCON1_PDN_I2S2_BCLK (1U << 5)765#define AUD_TCON1_PDN_I2S1_BCLK (1U << 4)766767/* AUDIO_TOP_CON3 (0x000C) */768#define AUD_TCON3_HDMI_BCK_INV (1U << 3)769770/* AFE_I2S_CON (0x0018) */771#define AFE_I2S_CON_PHASE_SHIFT_FIX (1U << 31)772#define AFE_I2S_CON_FROM_IO_MUX (1U << 28)773#define AFE_I2S_CON_LOW_JITTER_CLK (1U << 12)774#define AFE_I2S_CON_RATE_MASK GENMASK(11, 8)775#define AFE_I2S_CON_FORMAT_I2S (1U << 3)776#define AFE_I2S_CON_SRC_SLAVE (1U << 2)777778/* AFE_ASRC_2CH_CON0 */779#define ONE_HEART (1U << 31)780#define CHSET_STR_CLR (1U << 4)781#define COEFF_SRAM_CTRL (1U << 1)782#define ASM_ON (1U << 0)783784/* CON2 */785#define O16BIT (1U << 19)786#define CLR_IIR_HISTORY (1U << 17)787#define IS_MONO (1U << 16)788#define IIR_EN (1U << 11)789#define IIR_STAGE_MASK GENMASK(10, 8)790791/* CON5 */792#define CALI_CYCLE_MASK GENMASK(31, 16)793#define CALI_64_CYCLE FIELD_PREP(CALI_CYCLE_MASK, 0x3F)794#define CALI_96_CYCLE FIELD_PREP(CALI_CYCLE_MASK, 0x5F)795#define CALI_441_CYCLE FIELD_PREP(CALI_CYCLE_MASK, 0x1B8)796797#define CALI_AUTORST (1U << 15)798#define AUTO_TUNE_FREQ5 (1U << 12)799#define COMP_FREQ_RES (1U << 11)800801#define CALI_SEL_MASK GENMASK(9, 8)802#define CALI_SEL_00 FIELD_PREP(CALI_SEL_MASK, 0)803#define CALI_SEL_01 FIELD_PREP(CALI_SEL_MASK, 1)804805#define CALI_BP_DGL (1U << 7) /* Bypass the deglitch circuit */806#define AUTO_TUNE_FREQ4 (1U << 3)807#define CALI_AUTO_RESTART (1U << 2)808#define CALI_USE_FREQ_OUT (1U << 1)809#define CALI_ON (1U << 0)810811#define AFE_I2S_CON_WLEN_32BIT (1U << 1)812#define AFE_I2S_CON_EN (1U << 0)813814#define AFE_CONN3_I03_O03_S (1U << 3)815#define AFE_CONN4_I04_O04_S (1U << 4)816#define AFE_CONN4_I03_O04_S (1U << 3)817818/* AFE_I2S_CON1 (0x0034) */819#define AFE_I2S_CON1_I2S2_TO_PAD (1U << 18)820#define AFE_I2S_CON1_TDMOUT_TO_PAD (0 << 18)821#define AFE_I2S_CON1_RATE GENMASK(11, 8)822#define AFE_I2S_CON1_FORMAT_I2S (1U << 3)823#define AFE_I2S_CON1_WLEN_32BIT (1U << 1)824#define AFE_I2S_CON1_EN (1U << 0)825826/* AFE_I2S_CON2 (0x0038) */827#define AFE_I2S_CON2_LOW_JITTER_CLK (1U << 12)828#define AFE_I2S_CON2_RATE GENMASK(11, 8)829#define AFE_I2S_CON2_FORMAT_I2S (1U << 3)830#define AFE_I2S_CON2_WLEN_32BIT (1U << 1)831#define AFE_I2S_CON2_EN (1U << 0)832833/* AFE_I2S_CON3 (0x004C) */834#define AFE_I2S_CON3_LOW_JITTER_CLK (1U << 12)835#define AFE_I2S_CON3_RATE GENMASK(11, 8)836#define AFE_I2S_CON3_FORMAT_I2S (1U << 3)837#define AFE_I2S_CON3_WLEN_32BIT (1U << 1)838#define AFE_I2S_CON3_EN (1U << 0)839840/* AFE_ADDA_DL_SRC2_CON0 (0x0108) */841#define AFE_ADDA_DL_SAMPLING_RATE GENMASK(31, 28)842#define AFE_ADDA_DL_8X_UPSAMPLE GENMASK(25, 24)843#define AFE_ADDA_DL_MUTE_OFF_CH1 (1U << 12)844#define AFE_ADDA_DL_MUTE_OFF_CH2 (1U << 11)845#define AFE_ADDA_DL_VOICE_DATA (1U << 5)846#define AFE_ADDA_DL_DEGRADE_GAIN (1U << 1)847848/* AFE_ADDA_UL_SRC_CON0 (0x0114) */849#define AFE_ADDA_UL_SAMPLING_RATE GENMASK(19, 17)850851/* AFE_ADDA_UL_DL_CON0 */852#define AFE_ADDA_UL_DL_ADDA_AFE_ON (1U << 0)853#define AFE_ADDA_UL_DL_DMIC_CLKDIV_ON (1U << 1)854855/* AFE_APLL_TUNER_CFG (0x03f0) */856#define AFE_APLL_TUNER_CFG_MASK GENMASK(15, 1)857#define AFE_APLL_TUNER_CFG_EN_MASK (1U << 0)858859/* AFE_APLL_TUNER_CFG1 (0x03f4) */860#define AFE_APLL_TUNER_CFG1_MASK GENMASK(15, 1)861#define AFE_APLL_TUNER_CFG1_EN_MASK (1U << 0)862863/* PCM_INTF_CON1 (0x0550) */864#define PCM_INTF_CON1_EXT_MODEM (1U << 17)865#define PCM_INTF_CON1_16BIT (0 << 16)866#define PCM_INTF_CON1_24BIT (1U << 16)867#define PCM_INTF_CON1_32BCK (0 << 14)868#define PCM_INTF_CON1_64BCK (1U << 14)869#define PCM_INTF_CON1_MASTER_MODE (0 << 5)870#define PCM_INTF_CON1_SLAVE_MODE (1U << 5)871#define PCM_INTF_CON1_FS_MASK GENMASK(4, 3)872#define PCM_INTF_CON1_FS_8K FIELD_PREP(PCM_INTF_CON1_FS_MASK, 0)873#define PCM_INTF_CON1_FS_16K FIELD_PREP(PCM_INTF_CON1_FS_MASK, 1)874#define PCM_INTF_CON1_FS_32K FIELD_PREP(PCM_INTF_CON1_FS_MASK, 2)875#define PCM_INTF_CON1_FS_48K FIELD_PREP(PCM_INTF_CON1_FS_MASK, 3)876#define PCM_INTF_CON1_SYNC_LEN_MASK GENMASK(13, 9)877#define PCM_INTF_CON1_SYNC_LEN(x) FIELD_PREP(PCM_INTF_CON1_SYNC_LEN_MASK, ((x) - 1))878#define PCM_INTF_CON1_FORMAT_MASK GENMASK(2, 1)879#define PCM_INTF_CON1_SYNC_OUT_INV (1U << 23)880#define PCM_INTF_CON1_BCLK_OUT_INV (1U << 22)881#define PCM_INTF_CON1_SYNC_IN_INV (1U << 21)882#define PCM_INTF_CON1_BCLK_IN_INV (1U << 20)883#define PCM_INTF_CON1_BYPASS_ASRC (1U << 6)884#define PCM_INTF_CON1_EN (1U << 0)885#define PCM_INTF_CON1_CONFIG_MASK (0xf3fffe)886887/* AFE_DMIC0_UL_SRC_CON0 (0x05b4)888* AFE_DMIC1_UL_SRC_CON0 (0x0620)889* AFE_DMIC2_UL_SRC_CON0 (0x0780)890* AFE_DMIC3_UL_SRC_CON0 (0x07ec)891*/892#define DMIC_TOP_CON_CK_PHASE_SEL_CH1 GENMASK(29, 27)893#define DMIC_TOP_CON_CK_PHASE_SEL_CH2 GENMASK(26, 24)894#define DMIC_TOP_CON_TWO_WIRE_MODE (1U << 23)895#define DMIC_TOP_CON_CH2_ON (1U << 22)896#define DMIC_TOP_CON_CH1_ON (1U << 21)897#define DMIC_TOP_CON_VOICE_MODE_MASK GENMASK(19, 17)898#define DMIC_TOP_CON_VOICE_MODE_8K FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 0)899#define DMIC_TOP_CON_VOICE_MODE_16K FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 1)900#define DMIC_TOP_CON_VOICE_MODE_32K FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 2)901#define DMIC_TOP_CON_VOICE_MODE_48K FIELD_PREP(DMIC_TOP_CON_VOICE_MODE_MASK, 3)902#define DMIC_TOP_CON_LOW_POWER_MODE_MASK GENMASK(15, 14)903#define DMIC_TOP_CON_LOW_POWER_MODE(x) FIELD_PREP(DMIC_TOP_CON_LOW_POWER_MODE_MASK, (x))904#define DMIC_TOP_CON_IIR_ON (1U << 10)905#define DMIC_TOP_CON_IIR_MODE GENMASK(9, 7)906#define DMIC_TOP_CON_INPUT_MODE (1U << 5)907#define DMIC_TOP_CON_SDM3_LEVEL_MODE (1U << 1)908#define DMIC_TOP_CON_SRC_ON (1U << 0)909#define DMIC_TOP_CON_SDM3_DE_SELECT (0 << 1)910#define DMIC_TOP_CON_CONFIG_MASK (0x3f8ed7a6)911912/* AFE_CONN_24BIT (0x0AA4) */913#define AFE_CONN_24BIT_O10 (1U << 10)914#define AFE_CONN_24BIT_O09 (1U << 9)915#define AFE_CONN_24BIT_O06 (1U << 6)916#define AFE_CONN_24BIT_O05 (1U << 5)917#define AFE_CONN_24BIT_O04 (1U << 4)918#define AFE_CONN_24BIT_O03 (1U << 3)919#define AFE_CONN_24BIT_O02 (1U << 2)920#define AFE_CONN_24BIT_O01 (1U << 1)921#define AFE_CONN_24BIT_O00 (1U << 0)922923/* AFE_HD_ENGEN_ENABLE */924#define AFE_22M_PLL_EN (1U << 0)925#define AFE_24M_PLL_EN (1U << 1)926927/* AFE_GAIN1_CON0 (0x0410) */928#define AFE_GAIN1_CON0_EN_MASK GENMASK(0, 0)929#define AFE_GAIN1_CON0_MODE_MASK GENMASK(7, 4)930#define AFE_GAIN1_CON0_SAMPLE_PER_STEP_MASK GENMASK(15, 8)931932/* AFE_GAIN1_CON1 (0x0414) */933#define AFE_GAIN1_CON1_MASK GENMASK(19, 0)934935/* AFE_GAIN1_CUR (0x0B78) */936#define AFE_GAIN1_CUR_MASK GENMASK(19, 0)937938/* AFE_CM1_CON0 (0x0e50) */939/* AFE_CM2_CON0 (0x0e60) */940#define CM_AFE_CM_CH_NUM_MASK GENMASK(3, 0)941#define CM_AFE_CM_CH_NUM(x) FIELD_PREP(CM_AFE_CM_CH_NUM_MASK, ((x) - 1))942#define CM_AFE_CM_ON (1U << 4)943#define CM_AFE_CM_START_DATA_MASK GENMASK(11, 8)944945#define CM_AFE_CM1_VUL_SEL (1U << 12)946#define CM_AFE_CM1_IN_MODE_MASK GENMASK(19, 16)947#define CM_AFE_CM2_TDM_SEL (1U << 12)948#define CM_AFE_CM2_CLK_SEL (1U << 13)949#define CM_AFE_CM2_GASRC1_OUT_SEL (1U << 17)950#define CM_AFE_CM2_GASRC2_OUT_SEL (1U << 16)951952/* AFE_CM2_CONN* */953#define CM2_AFE_CM2_CONN_CFG1(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG1_MASK, (x))954#define CM2_AFE_CM2_CONN_CFG1_MASK GENMASK(4, 0)955#define CM2_AFE_CM2_CONN_CFG2(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG2_MASK, (x))956#define CM2_AFE_CM2_CONN_CFG2_MASK GENMASK(9, 5)957#define CM2_AFE_CM2_CONN_CFG3(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG3_MASK, (x))958#define CM2_AFE_CM2_CONN_CFG3_MASK GENMASK(14, 10)959#define CM2_AFE_CM2_CONN_CFG4(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG4_MASK, (x))960#define CM2_AFE_CM2_CONN_CFG4_MASK GENMASK(19, 15)961#define CM2_AFE_CM2_CONN_CFG5(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG5_MASK, (x))962#define CM2_AFE_CM2_CONN_CFG5_MASK GENMASK(24, 20)963#define CM2_AFE_CM2_CONN_CFG6(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG6_MASK, (x))964#define CM2_AFE_CM2_CONN_CFG6_MASK GENMASK(29, 25)965#define CM2_AFE_CM2_CONN_CFG7(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG7_MASK, (x))966#define CM2_AFE_CM2_CONN_CFG7_MASK GENMASK(4, 0)967#define CM2_AFE_CM2_CONN_CFG8(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG8_MASK, (x))968#define CM2_AFE_CM2_CONN_CFG8_MASK GENMASK(9, 5)969#define CM2_AFE_CM2_CONN_CFG9(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG9_MASK, (x))970#define CM2_AFE_CM2_CONN_CFG9_MASK GENMASK(14, 10)971#define CM2_AFE_CM2_CONN_CFG10(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG10_MASK, (x))972#define CM2_AFE_CM2_CONN_CFG10_MASK GENMASK(19, 15)973#define CM2_AFE_CM2_CONN_CFG11(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG11_MASK, (x))974#define CM2_AFE_CM2_CONN_CFG11_MASK GENMASK(24, 20)975#define CM2_AFE_CM2_CONN_CFG12(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG12_MASK, (x))976#define CM2_AFE_CM2_CONN_CFG12_MASK GENMASK(29, 25)977#define CM2_AFE_CM2_CONN_CFG13(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG13_MASK, (x))978#define CM2_AFE_CM2_CONN_CFG13_MASK GENMASK(4, 0)979#define CM2_AFE_CM2_CONN_CFG14(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG14_MASK, (x))980#define CM2_AFE_CM2_CONN_CFG14_MASK GENMASK(9, 5)981#define CM2_AFE_CM2_CONN_CFG15(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG15_MASK, (x))982#define CM2_AFE_CM2_CONN_CFG15_MASK GENMASK(14, 10)983#define CM2_AFE_CM2_CONN_CFG16(x) FIELD_PREP(CM2_AFE_CM2_CONN_CFG16_MASK, (x))984#define CM2_AFE_CM2_CONN_CFG16_MASK GENMASK(19, 15)985986/* AFE_CM1_CON* */987#define CM_AFE_CM_UPDATE_CNT1_MASK GENMASK(15, 0)988#define CM_AFE_CM_UPDATE_CNT1(x) FIELD_PREP(CM_AFE_CM_UPDATE_CNT1_MASK, (x))989#define CM_AFE_CM_UPDATE_CNT2_MASK GENMASK(31, 16)990#define CM_AFE_CM_UPDATE_CNT2(x) FIELD_PREP(CM_AFE_CM_UPDATE_CNT2_MASK, (x))991992#endif993994995