/* SPDX-License-Identifier: GPL-2.0+ *//* * AMD ACP 6.3 Register Documentation * * Copyright 2022 Advanced Micro Devices, Inc. */ #ifndef _acp_ip_OFFSET_HEADER#define _acp_ip_OFFSET_HEADER /* Registers from ACP_DMA block */#define ACP_DMA_CNTL_0 0x0000000#define ACP_DMA_CNTL_1 0x0000004#define ACP_DMA_CNTL_2 0x0000008#define ACP_DMA_CNTL_3 0x000000C#define ACP_DMA_CNTL_4 0x0000010#define ACP_DMA_CNTL_5 0x0000014#define ACP_DMA_CNTL_6 0x0000018#define ACP_DMA_CNTL_7 0x000001C#define ACP_DMA_DSCR_STRT_IDX_0 0x0000020#define ACP_DMA_DSCR_STRT_IDX_1 0x0000024#define ACP_DMA_DSCR_STRT_IDX_2 0x0000028#define ACP_DMA_DSCR_STRT_IDX_3 0x000002C#define ACP_DMA_DSCR_STRT_IDX_4 0x0000030#define ACP_DMA_DSCR_STRT_IDX_5 0x0000034#define ACP_DMA_DSCR_STRT_IDX_6 0x0000038#define ACP_DMA_DSCR_STRT_IDX_7 0x000003C#define ACP_DMA_DSCR_CNT_0 0x0000040#define ACP_DMA_DSCR_CNT_1 0x0000044#define ACP_DMA_DSCR_CNT_2 0x0000048#define ACP_DMA_DSCR_CNT_3 0x000004C#define ACP_DMA_DSCR_CNT_4 0x0000050#define ACP_DMA_DSCR_CNT_5 0x0000054#define ACP_DMA_DSCR_CNT_6 0x0000058#define ACP_DMA_DSCR_CNT_7 0x000005C#define ACP_DMA_PRIO_0 0x0000060#define ACP_DMA_PRIO_1 0x0000064#define ACP_DMA_PRIO_2 0x0000068#define ACP_DMA_PRIO_3 0x000006C#define ACP_DMA_PRIO_4 0x0000070#define ACP_DMA_PRIO_5 0x0000074#define ACP_DMA_PRIO_6 0x0000078#define ACP_DMA_PRIO_7 0x000007C#define ACP_DMA_CUR_DSCR_0 0x0000080#define ACP_DMA_CUR_DSCR_1 0x0000084#define ACP_DMA_CUR_DSCR_2 0x0000088#define ACP_DMA_CUR_DSCR_3 0x000008C#define ACP_DMA_CUR_DSCR_4 0x0000090#define ACP_DMA_CUR_DSCR_5 0x0000094#define ACP_DMA_CUR_DSCR_6 0x0000098#define ACP_DMA_CUR_DSCR_7 0x000009C#define ACP_DMA_CUR_TRANS_CNT_0 0x00000A0#define ACP_DMA_CUR_TRANS_CNT_1 0x00000A4#define ACP_DMA_CUR_TRANS_CNT_2 0x00000A8#define ACP_DMA_CUR_TRANS_CNT_3 0x00000AC#define ACP_DMA_CUR_TRANS_CNT_4 0x00000B0#define ACP_DMA_CUR_TRANS_CNT_5 0x00000B4#define ACP_DMA_CUR_TRANS_CNT_6 0x00000B8#define ACP_DMA_CUR_TRANS_CNT_7 0x00000BC#define ACP_DMA_ERR_STS_0 0x00000C0#define ACP_DMA_ERR_STS_1 0x00000C4#define ACP_DMA_ERR_STS_2 0x00000C8#define ACP_DMA_ERR_STS_3 0x00000CC#define ACP_DMA_ERR_STS_4 0x00000D0#define ACP_DMA_ERR_STS_5 0x00000D4#define ACP_DMA_ERR_STS_6 0x00000D8#define ACP_DMA_ERR_STS_7 0x00000DC#define ACP_DMA_DESC_BASE_ADDR 0x00000E0#define ACP_DMA_DESC_MAX_NUM_DSCR 0x00000E4#define ACP_DMA_CH_STS 0x00000E8#define ACP_DMA_CH_GROUP 0x00000EC#define ACP_DMA_CH_RST_STS 0x00000F0 /* Registers from ACP_AXI2AXIATU block */#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_1 0x0000C00#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_1 0x0000C04#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_2 0x0000C08#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_2 0x0000C0C#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_3 0x0000C10#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_3 0x0000C14#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_4 0x0000C18#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_4 0x0000C1C#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_5 0x0000C20#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_5 0x0000C24#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_6 0x0000C28#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_6 0x0000C2C#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_7 0x0000C30#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_7 0x0000C34#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_8 0x0000C38#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_8 0x0000C3C#define ACPAXI2AXI_ATU_CTRL 0x0000C40#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_9 0x0000C44#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_9 0x0000C48#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_10 0x0000C4C#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_10 0x0000C50#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_11 0x0000C54#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_11 0x0000C58#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_12 0x0000C5C#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_12 0x0000C60#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_13 0x0000C64#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_13 0x0000C68#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_14 0x0000C6C#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_14 0x0000C70#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_15 0x0000C74#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_15 0x0000C78#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_16 0x0000C7C#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_16 0x0000C80 /* Registers from ACP_CLKRST block */#define ACP_SOFT_RESET 0x0001000#define ACP_CONTROL 0x0001004#define ACP_STATUS 0x0001008#define ACP_DYNAMIC_CG_MASTER_CONTROL 0x0001010#define ACP_ZSC_DSP_CTRL 0x0001014#define ACP_ZSC_STS 0x0001018#define ACP_PGFSM_CONTROL 0x0001024#define ACP_PGFSM_STATUS 0x0001028#define ACP_CLKMUX_SEL 0x000102C /* Registers from ACP_AON block */#define ACP_PME_EN 0x0001400#define ACP_DEVICE_STATE 0x0001404#define AZ_DEVICE_STATE 0x0001408#define ACP_PIN_CONFIG 0x0001440#define ACP_PAD_PULLUP_CTRL 0x0001444#define ACP_PAD_PULLDOWN_CTRL 0x0001448#define ACP_PAD_DRIVE_STRENGTH_CTRL 0x000144C#define ACP_PAD_SCHMEN_CTRL 0x0001450#define ACP_SW0_PAD_KEEPER_EN 0x0001454#define ACP_SW0_WAKE_EN 0x0001458#define ACP_I2S_WAKE_EN 0x000145C#define ACP_SW1_WAKE_EN 0x0001460 #define ACP_SW0_I2S_ERROR_REASON 0x00018B4#define ACP_SW0_POS_TRACK_AUDIO0_TX_CTRL 0x00018B8#define ACP_SW0_AUDIO0_TX_DMA_POS 0x00018BC#define ACP_SW0_POS_TRACK_AUDIO1_TX_CTRL 0x00018C0#define ACP_SW0_AUDIO1_TX_DMA_POS 0x00018C4#define ACP_SW0_POS_TRACK_AUDIO2_TX_CTRL 0x00018C8#define ACP_SW0_AUDIO2_TX_DMA_POS 0x00018CC#define ACP_SW0_POS_TRACK_AUDIO0_RX_CTRL 0x00018D0#define ACP_SW0_AUDIO0_DMA_POS 0x00018D4#define ACP_SW0_POS_TRACK_AUDIO1_RX_CTRL 0x00018D8#define ACP_SW0_AUDIO1_RX_DMA_POS 0x00018DC#define ACP_SW0_POS_TRACK_AUDIO2_RX_CTRL 0x00018E0#define ACP_SW0_AUDIO2_RX_DMA_POS 0x00018E4#define ACP_ERROR_INTR_MASK1 0X0001974#define ACP_ERROR_INTR_MASK2 0X0001978#define ACP_ERROR_INTR_MASK3 0X000197C /* Registers from ACP_P1_MISC block */#define ACP_EXTERNAL_INTR_ENB 0x0001A00#define ACP_EXTERNAL_INTR_CNTL 0x0001A04#define ACP_EXTERNAL_INTR_CNTL1 0x0001A08#define ACP_EXTERNAL_INTR_STAT 0x0001A0C#define ACP_EXTERNAL_INTR_STAT1 0x0001A10#define ACP_ERROR_STATUS 0x0001A4C#define ACP_SW1_I2S_ERROR_REASON 0x0001A50#define ACP_SW1_POS_TRACK_AUDIO0_TX_CTRL 0x0001A6C#define ACP_SW1_AUDIO0_TX_DMA_POS 0x0001A70#define ACP_SW1_POS_TRACK_AUDIO0_RX_CTRL 0x0001A74#define ACP_SW1_AUDIO0_RX_DMA_POS 0x0001A78#define ACP_P1_DMIC_I2S_GPIO_INTR_CTRL 0x0001A7C#define ACP_P1_DMIC_I2S_GPIO_INTR_STATUS 0x0001A80#define ACP_SCRATCH_REG_BASE_ADDR 0x0001A84#define ACP_SW1_POS_TRACK_AUDIO1_TX_CTRL 0x0001A88#define ACP_SW1_AUDIO1_TX_DMA_POS 0x0001A8C#define ACP_SW1_POS_TRACK_AUDIO2_TX_CTRL 0x0001A90#define ACP_SW1_AUDIO2_TX_DMA_POS 0x0001A94#define ACP_SW1_POS_TRACK_AUDIO1_RX_CTRL 0x0001A98#define ACP_SW1_AUDIO1_RX_DMA_POS 0x0001A9C#define ACP_SW1_POS_TRACK_AUDIO2_RX_CTRL 0x0001AA0#define ACP_SW1_AUDIO2_RX_DMA_POS 0x0001AA4#define ACP_ERROR_INTR_MASK4 0X0001AEC#define ACP_ERROR_INTR_MASK5 0X0001AF0 /* Registers from ACP_AUDIO_BUFFERS block */#define ACP_AUDIO0_RX_RINGBUFADDR 0x0002000#define ACP_AUDIO0_RX_RINGBUFSIZE 0x0002004#define ACP_AUDIO0_RX_LINKPOSITIONCNTR 0x0002008#define ACP_AUDIO0_RX_FIFOADDR 0x000200C#define ACP_AUDIO0_RX_FIFOSIZE 0x0002010#define ACP_AUDIO0_RX_DMA_SIZE 0x0002014#define ACP_AUDIO0_RX_LINEARPOSITIONCNTR_HIGH 0x0002018#define ACP_AUDIO0_RX_LINEARPOSITIONCNTR_LOW 0x000201C#define ACP_AUDIO0_RX_INTR_WATERMARK_SIZE 0x0002020#define ACP_AUDIO0_TX_RINGBUFADDR 0x0002024#define ACP_AUDIO0_TX_RINGBUFSIZE 0x0002028#define ACP_AUDIO0_TX_LINKPOSITIONCNTR 0x000202C#define ACP_AUDIO0_TX_FIFOADDR 0x0002030#define ACP_AUDIO0_TX_FIFOSIZE 0x0002034#define ACP_AUDIO0_TX_DMA_SIZE 0x0002038#define ACP_AUDIO0_TX_LINEARPOSITIONCNTR_HIGH 0x000203C#define ACP_AUDIO0_TX_LINEARPOSITIONCNTR_LOW 0x0002040#define ACP_AUDIO0_TX_INTR_WATERMARK_SIZE 0x0002044#define ACP_AUDIO1_RX_RINGBUFADDR 0x0002048#define ACP_AUDIO1_RX_RINGBUFSIZE 0x000204C#define ACP_AUDIO1_RX_LINKPOSITIONCNTR 0x0002050#define ACP_AUDIO1_RX_FIFOADDR 0x0002054#define ACP_AUDIO1_RX_FIFOSIZE 0x0002058#define ACP_AUDIO1_RX_DMA_SIZE 0x000205C#define ACP_AUDIO1_RX_LINEARPOSITIONCNTR_HIGH 0x0002060#define ACP_AUDIO1_RX_LINEARPOSITIONCNTR_LOW 0x0002064#define ACP_AUDIO1_RX_INTR_WATERMARK_SIZE 0x0002068#define ACP_AUDIO1_TX_RINGBUFADDR 0x000206C#define ACP_AUDIO1_TX_RINGBUFSIZE 0x0002070#define ACP_AUDIO1_TX_LINKPOSITIONCNTR 0x0002074#define ACP_AUDIO1_TX_FIFOADDR 0x0002078#define ACP_AUDIO1_TX_FIFOSIZE 0x000207C#define ACP_AUDIO1_TX_DMA_SIZE 0x0002080#define ACP_AUDIO1_TX_LINEARPOSITIONCNTR_HIGH 0x0002084#define ACP_AUDIO1_TX_LINEARPOSITIONCNTR_LOW 0x0002088#define ACP_AUDIO1_TX_INTR_WATERMARK_SIZE 0x000208C#define ACP_AUDIO2_RX_RINGBUFADDR 0x0002090#define ACP_AUDIO2_RX_RINGBUFSIZE 0x0002094#define ACP_AUDIO2_RX_LINKPOSITIONCNTR 0x0002098#define ACP_AUDIO2_RX_FIFOADDR 0x000209C#define ACP_AUDIO2_RX_FIFOSIZE 0x00020A0#define ACP_AUDIO2_RX_DMA_SIZE 0x00020A4#define ACP_AUDIO2_RX_LINEARPOSITIONCNTR_HIGH 0x00020A8#define ACP_AUDIO2_RX_LINEARPOSITIONCNTR_LOW 0x00020AC#define ACP_AUDIO2_RX_INTR_WATERMARK_SIZE 0x00020B0#define ACP_AUDIO2_TX_RINGBUFADDR 0x00020B4#define ACP_AUDIO2_TX_RINGBUFSIZE 0x00020B8#define ACP_AUDIO2_TX_LINKPOSITIONCNTR 0x00020BC#define ACP_AUDIO2_TX_FIFOADDR 0x00020C0#define ACP_AUDIO2_TX_FIFOSIZE 0x00020C4#define ACP_AUDIO2_TX_DMA_SIZE 0x00020C8#define ACP_AUDIO2_TX_LINEARPOSITIONCNTR_HIGH 0x00020CC#define ACP_AUDIO2_TX_LINEARPOSITIONCNTR_LOW 0x00020D0#define ACP_AUDIO2_TX_INTR_WATERMARK_SIZE 0x00020D4 /* Registers from ACP_I2S_TDM block */#define ACP_I2STDM_IER 0x0002400#define ACP_I2STDM_IRER 0x0002404#define ACP_I2STDM_RXFRMT 0x0002408#define ACP_I2STDM_ITER 0x000240C#define ACP_I2STDM_TXFRMT 0x0002410#define ACP_I2STDM0_MSTRCLKGEN 0x0002414#define ACP_I2STDM1_MSTRCLKGEN 0x0002418#define ACP_I2STDM2_MSTRCLKGEN 0x000241C#define ACP_I2STDM_REFCLKGEN 0x0002420 /* Registers from ACP_BT_TDM block */#define ACP_BTTDM_IER 0x0002800#define ACP_BTTDM_IRER 0x0002804#define ACP_BTTDM_RXFRMT 0x0002808#define ACP_BTTDM_ITER 0x000280C#define ACP_BTTDM_TXFRMT 0x0002810#define ACP_HSTDM_IER 0x0002814#define ACP_HSTDM_IRER 0x0002818#define ACP_HSTDM_RXFRMT 0x000281C#define ACP_HSTDM_ITER 0x0002820#define ACP_HSTDM_TXFRMT 0x0002824 /* Registers from ACP_WOV block */#define ACP_WOV_PDM_ENABLE 0x0002C04#define ACP_WOV_PDM_DMA_ENABLE 0x0002C08#define ACP_WOV_RX_RINGBUFADDR 0x0002C0C#define ACP_WOV_RX_RINGBUFSIZE 0x0002C10#define ACP_WOV_RX_LINKPOSITIONCNTR 0x0002C14#define ACP_WOV_RX_LINEARPOSITIONCNTR_HIGH 0x0002C18#define ACP_WOV_RX_LINEARPOSITIONCNTR_LOW 0x0002C1C#define ACP_WOV_RX_INTR_WATERMARK_SIZE 0x0002C20#define ACP_WOV_PDM_FIFO_FLUSH 0x0002C24#define ACP_WOV_PDM_NO_OF_CHANNELS 0x0002C28#define ACP_WOV_PDM_DECIMATION_FACTOR 0x0002C2C#define ACP_WOV_PDM_VAD_CTRL 0x0002C30#define ACP_WOV_WAKE 0x0002C54#define ACP_WOV_BUFFER_STATUS 0x0002C58#define ACP_WOV_MISC_CTRL 0x0002C5C#define ACP_WOV_CLK_CTRL 0x0002C60#define ACP_PDM_VAD_DYNAMIC_CLK_GATING_EN 0x0002C64#define ACP_WOV_ERROR_STATUS_REGISTER 0x0002C68#define ACP_PDM_CLKDIV 0x0002C6C /* Registers from ACP_SW0_SWCLK block */#define ACP_SW0_EN 0x0003000#define ACP_SW0_EN_STATUS 0x0003004#define ACP_SW0_FRAMESIZE 0x0003008#define ACP_SW0_SSP_COUNTER 0x000300C#define ACP_SW0_AUDIO0_TX_EN 0x0003010#define ACP_SW0_AUDIO0_TX_EN_STATUS 0x0003014#define ACP_SW0_AUDIO0_TX_FRAME_FORMAT 0x0003018#define ACP_SW0_AUDIO0_TX_SAMPLEINTERVAL 0x000301C#define ACP_SW0_AUDIO0_TX_HCTRL_DP0 0x0003020#define ACP_SW0_AUDIO0_TX_HCTRL_DP1 0x0003024#define ACP_SW0_AUDIO0_TX_HCTRL_DP2 0x0003028#define ACP_SW0_AUDIO0_TX_HCTRL_DP3 0x000302C#define ACP_SW0_AUDIO0_TX_OFFSET_DP0 0x0003030#define ACP_SW0_AUDIO0_TX_OFFSET_DP1 0x0003034#define ACP_SW0_AUDIO0_TX_OFFSET_DP2 0x0003038#define ACP_SW0_AUDIO0_TX_OFFSET_DP3 0x000303C#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP0 0x0003040#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP1 0x0003044#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP2 0x0003048#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP3 0x000304C#define ACP_SW0_AUDIO1_TX_EN 0x0003050#define ACP_SW0_AUDIO1_TX_EN_STATUS 0x0003054#define ACP_SW0_AUDIO1_TX_FRAME_FORMAT 0x0003058#define ACP_SW0_AUDIO1_TX_SAMPLEINTERVAL 0x000305C#define ACP_SW0_AUDIO1_TX_HCTRL 0x0003060#define ACP_SW0_AUDIO1_TX_OFFSET 0x0003064#define ACP_SW0_AUDIO1_TX_CHANNEL_ENABLE_DP0 0x0003068#define ACP_SW0_AUDIO2_TX_EN 0x000306C#define ACP_SW0_AUDIO2_TX_EN_STATUS 0x0003070#define ACP_SW0_AUDIO2_TX_FRAME_FORMAT 0x0003074#define ACP_SW0_AUDIO2_TX_SAMPLEINTERVAL 0x0003078#define ACP_SW0_AUDIO2_TX_HCTRL 0x000307C#define ACP_SW0_AUDIO2_TX_OFFSET 0x0003080#define ACP_SW0_AUDIO2_TX_CHANNEL_ENABLE_DP0 0x0003084#define ACP_SW0_AUDIO0_RX_EN 0x0003088#define ACP_SW0_AUDIO0_RX_EN_STATUS 0x000308C#define ACP_SW0_AUDIO0_RX_FRAME_FORMAT 0x0003090#define ACP_SW0_AUDIO0_RX_SAMPLEINTERVAL 0x0003094#define ACP_SW0_AUDIO0_RX_HCTRL_DP0 0x0003098#define ACP_SW0_AUDIO0_RX_HCTRL_DP1 0x000309C#define ACP_SW0_AUDIO0_RX_HCTRL_DP2 0x0003100#define ACP_SW0_AUDIO0_RX_HCTRL_DP3 0x0003104#define ACP_SW0_AUDIO0_RX_OFFSET_DP0 0x0003108#define ACP_SW0_AUDIO0_RX_OFFSET_DP1 0x000310C#define ACP_SW0_AUDIO0_RX_OFFSET_DP2 0x0003110#define ACP_SW0_AUDIO0_RX_OFFSET_DP3 0x0003114#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP0 0x0003118#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP1 0x000311C#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP2 0x0003120#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP3 0x0003124#define ACP_SW0_AUDIO1_RX_EN 0x0003128#define ACP_SW0_AUDIO1_RX_EN_STATUS 0x000312C#define ACP_SW0_AUDIO1_RX_FRAME_FORMAT 0x0003130#define ACP_SW0_AUDIO1_RX_SAMPLEINTERVAL 0x0003134#define ACP_SW0_AUDIO1_RX_HCTRL 0x0003138#define ACP_SW0_AUDIO1_RX_OFFSET 0x000313C#define ACP_SW0_AUDIO1_RX_CHANNEL_ENABLE_DP0 0x0003140#define ACP_SW0_AUDIO2_RX_EN 0x0003144#define ACP_SW0_AUDIO2_RX_EN_STATUS 0x0003148#define ACP_SW0_AUDIO2_RX_FRAME_FORMAT 0x000314C#define ACP_SW0_AUDIO2_RX_SAMPLEINTERVAL 0x0003150#define ACP_SW0_AUDIO2_RX_HCTRL 0x0003154#define ACP_SW0_AUDIO2_RX_OFFSET 0x0003158#define ACP_SW0_AUDIO2_RX_CHANNEL_ENABLE_DP0 0x000315C#define ACP_SW0_BPT_PORT_EN 0x0003160#define ACP_SW0_BPT_PORT_EN_STATUS 0x0003164#define ACP_SW0_BPT_PORT_FRAME_FORMAT 0x0003168#define ACP_SW0_BPT_PORT_SAMPLEINTERVAL 0x000316C#define ACP_SW0_BPT_PORT_HCTRL 0x0003170#define ACP_SW0_BPT_PORT_OFFSET 0x0003174#define ACP_SW0_BPT_PORT_CHANNEL_ENABLE 0x0003178#define ACP_SW0_BPT_PORT_FIRST_BYTE_ADDR 0x000317C#define ACP_SW0_CLK_RESUME_CTRL 0x0003180#define ACP_SW0_CLK_RESUME_DELAY_CNTR 0x0003184#define ACP_SW0_BUS_RESET_CTRL 0x0003188#define ACP_SW0_PRBS_ERR_STATUS 0x000318C#define ACP_SW0_IMM_CMD_UPPER_WORD 0x0003230#define ACP_SW0_IMM_CMD_LOWER_QWORD 0x0003234#define ACP_SW0_IMM_RESP_UPPER_WORD 0x0003238#define ACP_SW0_IMM_RESP_LOWER_QWORD 0x000323C#define ACP_SW0_IMM_CMD_STS 0x0003240#define ACP_SW0_BRA_BASE_ADDRESS 0x0003244#define ACP_SW0_BRA_TRANSFER_SIZE 0x0003248#define ACP_SW0_BRA_DMA_BUSY 0x000324C#define ACP_SW0_BRA_RESP 0x0003250#define ACP_SW0_BRA_RESP_FRAME_ADDR 0x0003254#define ACP_SW0_BRA_CURRENT_TRANSFER_SIZE 0x0003258#define ACP_SW0_STATECHANGE_STATUS_0TO7 0x000325C#define ACP_SW0_STATECHANGE_STATUS_8TO11 0x0003260#define ACP_SW0_STATECHANGE_STATUS_MASK_0TO7 0x0003264#define ACP_SW0_STATECHANGE_STATUS_MASK_8TO11 0x0003268#define ACP_SW0_CLK_FREQUENCY_CTRL 0x000326C#define ACP_SW0_ERROR_INTR_MASK 0x0003270#define ACP_SW0_PHY_TEST_MODE_DATA_OFF 0x0003274 /* Registers from ACP_P1_AUDIO_BUFFERS block */#define ACP_P1_AUDIO0_RX_RINGBUFADDR 0x0003A00#define ACP_P1_AUDIO0_RX_RINGBUFSIZE 0x0003A04#define ACP_P1_AUDIO0_RX_LINKPOSITIONCNTR 0x0003A08#define ACP_P1_AUDIO0_RX_FIFOADDR 0x0003A0C#define ACP_P1_AUDIO0_RX_FIFOSIZE 0x0003A10#define ACP_P1_AUDIO0_RX_DMA_SIZE 0x0003A14#define ACP_P1_AUDIO0_RX_LINEARPOSITIONCNTR_HIGH 0x0003A18#define ACP_P1_AUDIO0_RX_LINEARPOSITIONCNTR_LOW 0x0003A1C#define ACP_P1_AUDIO0_RX_INTR_WATERMARK_SIZE 0x0003A20#define ACP_P1_AUDIO0_TX_RINGBUFADDR 0x0003A24#define ACP_P1_AUDIO0_TX_RINGBUFSIZE 0x0003A28#define ACP_P1_AUDIO0_TX_LINKPOSITIONCNTR 0x0003A2C#define ACP_P1_AUDIO0_TX_FIFOADDR 0x0003A30#define ACP_P1_AUDIO0_TX_FIFOSIZE 0x0003A34#define ACP_P1_AUDIO0_TX_DMA_SIZE 0x0003A38#define ACP_P1_AUDIO0_TX_LINEARPOSITIONCNTR_HIGH 0x0003A3C#define ACP_P1_AUDIO0_TX_LINEARPOSITIONCNTR_LOW 0x0003A40#define ACP_P1_AUDIO0_TX_INTR_WATERMARK_SIZE 0x0003A44#define ACP_P1_AUDIO1_RX_RINGBUFADDR 0x0003A48#define ACP_P1_AUDIO1_RX_RINGBUFSIZE 0x0003A4C#define ACP_P1_AUDIO1_RX_LINKPOSITIONCNTR 0x0003A50#define ACP_P1_AUDIO1_RX_FIFOADDR 0x0003A54#define ACP_P1_AUDIO1_RX_FIFOSIZE 0x0003A58#define ACP_P1_AUDIO1_RX_DMA_SIZE 0x0003A5C#define ACP_P1_AUDIO1_RX_LINEARPOSITIONCNTR_HIGH 0x0003A60#define ACP_P1_AUDIO1_RX_LINEARPOSITIONCNTR_LOW 0x0003A64#define ACP_P1_AUDIO1_RX_INTR_WATERMARK_SIZE 0x0003A68#define ACP_P1_AUDIO1_TX_RINGBUFADDR 0x0003A6C#define ACP_P1_AUDIO1_TX_RINGBUFSIZE 0x0003A70#define ACP_P1_AUDIO1_TX_LINKPOSITIONCNTR 0x0003A74#define ACP_P1_AUDIO1_TX_FIFOADDR 0x0003A78#define ACP_P1_AUDIO1_TX_FIFOSIZE 0x0003A7C#define ACP_P1_AUDIO1_TX_DMA_SIZE 0x0003A80#define ACP_P1_AUDIO1_TX_LINEARPOSITIONCNTR_HIGH 0x0003A84#define ACP_P1_AUDIO1_TX_LINEARPOSITIONCNTR_LOW 0x0003A88#define ACP_P1_AUDIO1_TX_INTR_WATERMARK_SIZE 0x0003A8C#define ACP_P1_AUDIO2_RX_RINGBUFADDR 0x0003A90#define ACP_P1_AUDIO2_RX_RINGBUFSIZE 0x0003A94#define ACP_P1_AUDIO2_RX_LINKPOSITIONCNTR 0x0003A98#define ACP_P1_AUDIO2_RX_FIFOADDR 0x0003A9C#define ACP_P1_AUDIO2_RX_FIFOSIZE 0x0003AA0#define ACP_P1_AUDIO2_RX_DMA_SIZE 0x0003AA4#define ACP_P1_AUDIO2_RX_LINEARPOSITIONCNTR_HIGH 0x0003AA8#define ACP_P1_AUDIO2_RX_LINEARPOSITIONCNTR_LOW 0x0003AAC#define ACP_P1_AUDIO2_RX_INTR_WATERMARK_SIZE 0x0003AB0#define ACP_P1_AUDIO2_TX_RINGBUFADDR 0x0003AB4#define ACP_P1_AUDIO2_TX_RINGBUFSIZE 0x0003AB8#define ACP_P1_AUDIO2_TX_LINKPOSITIONCNTR 0x0003ABC#define ACP_P1_AUDIO2_TX_FIFOADDR 0x0003AC0#define ACP_P1_AUDIO2_TX_FIFOSIZE 0x0003AC4#define ACP_P1_AUDIO2_TX_DMA_SIZE 0x0003AC8#define ACP_P1_AUDIO2_TX_LINEARPOSITIONCNTR_HIGH 0x0003ACC#define ACP_P1_AUDIO2_TX_LINEARPOSITIONCNTR_LOW 0x0003AD0#define ACP_P1_AUDIO2_TX_INTR_WATERMARK_SIZE 0x0003AD4 /* Registers from ACP_SW1_SWCLK block */#define ACP_SW1_EN 0x0003C00#define ACP_SW1_EN_STATUS 0x0003C04#define ACP_SW1_FRAMESIZE 0x0003C08#define ACP_SW1_SSP_COUNTER 0x0003C0C#define ACP_SW1_AUDIO1_TX_EN 0x0003C50#define ACP_SW1_AUDIO1_TX_EN_STATUS 0x0003C54#define ACP_SW1_AUDIO1_TX_FRAME_FORMAT 0x0003C58#define ACP_SW1_AUDIO1_TX_SAMPLEINTERVAL 0x0003C5C#define ACP_SW1_AUDIO1_TX_HCTRL 0x0003C60#define ACP_SW1_AUDIO1_TX_OFFSET 0x0003C64#define ACP_SW1_AUDIO1_TX_CHANNEL_ENABLE_DP0 0x0003C68#define ACP_SW1_AUDIO1_RX_EN 0x0003D28#define ACP_SW1_AUDIO1_RX_EN_STATUS 0x0003D2C#define ACP_SW1_AUDIO1_RX_FRAME_FORMAT 0x0003D30#define ACP_SW1_AUDIO1_RX_SAMPLEINTERVAL 0x0003D34#define ACP_SW1_AUDIO1_RX_HCTRL 0x0003D38#define ACP_SW1_AUDIO1_RX_OFFSET 0x0003D3C#define ACP_SW1_AUDIO1_RX_CHANNEL_ENABLE_DP0 0x0003D40#define ACP_SW1_BPT_PORT_EN 0x0003D60#define ACP_SW1_BPT_PORT_EN_STATUS 0x0003D64#define ACP_SW1_BPT_PORT_FRAME_FORMAT 0x0003D68#define ACP_SW1_BPT_PORT_SAMPLEINTERVAL 0x0003D6C#define ACP_SW1_BPT_PORT_HCTRL 0x0003D70#define ACP_SW1_BPT_PORT_OFFSET 0x0003D74#define ACP_SW1_BPT_PORT_CHANNEL_ENABLE 0x0003D78#define ACP_SW1_BPT_PORT_FIRST_BYTE_ADDR 0x0003D7C#define ACP_SW1_CLK_RESUME_CTRL 0x0003D80#define ACP_SW1_CLK_RESUME_DELAY_CNTR 0x0003D84#define ACP_SW1_BUS_RESET_CTRL 0x0003D88#define ACP_SW1_PRBS_ERR_STATUS 0x0003D8C /* Registers from ACP_SW1_ACLK block */#define ACP_SW1_CORB_BASE_ADDRESS 0x0003E00#define ACP_SW1_CORB_WRITE_POINTER 0x0003E04#define ACP_SW1_CORB_READ_POINTER 0x0003E08#define ACP_SW1_CORB_CONTROL 0x0003E0C#define ACP_SW1_CORB_SIZE 0x0003E14#define ACP_SW1_RIRB_BASE_ADDRESS 0x0003E18#define ACP_SW1_RIRB_WRITE_POINTER 0x0003E1C#define ACP_SW1_RIRB_RESPONSE_INTERRUPT_COUNT 0x0003E20#define ACP_SW1_RIRB_CONTROL 0x0003E24#define ACP_SW1_RIRB_SIZE 0x0003E28#define ACP_SW1_RIRB_FIFO_MIN_THDL 0x0003E2C#define ACP_SW1_IMM_CMD_UPPER_WORD 0x0003E30#define ACP_SW1_IMM_CMD_LOWER_QWORD 0x0003E34#define ACP_SW1_IMM_RESP_UPPER_WORD 0x0003E38#define ACP_SW1_IMM_RESP_LOWER_QWORD 0x0003E3C#define ACP_SW1_IMM_CMD_STS 0x0003E40#define ACP_SW1_BRA_BASE_ADDRESS 0x0003E44#define ACP_SW1_BRA_TRANSFER_SIZE 0x0003E48#define ACP_SW1_BRA_DMA_BUSY 0x0003E4C#define ACP_SW1_BRA_RESP 0x0003E50#define ACP_SW1_BRA_RESP_FRAME_ADDR 0x0003E54#define ACP_SW1_BRA_CURRENT_TRANSFER_SIZE 0x0003E58#define ACP_SW1_STATECHANGE_STATUS_0TO7 0x0003E5C#define ACP_SW1_STATECHANGE_STATUS_8TO11 0x0003E60#define ACP_SW1_STATECHANGE_STATUS_MASK_0TO7 0x0003E64#define ACP_SW1_STATECHANGE_STATUS_MASK_8TO11 0x0003E68#define ACP_SW1_CLK_FREQUENCY_CTRL 0x0003E6C#define ACP_SW1_ERROR_INTR_MASK 0x0003E70#define ACP_SW1_PHY_TEST_MODE_DATA_OFF 0x0003E74 /* Registers from ACP_SCRATCH block */#define ACP_SCRATCH_REG_0 0x0010000 #endif
/* SPDX-License-Identifier: GPL-2.0+ */
/*
* AMD ACP 6.3 Register Documentation
*
* Copyright 2022 Advanced Micro Devices, Inc.
*/
#ifndef _acp_ip_OFFSET_HEADER
#define _acp_ip_OFFSET_HEADER
/* Registers from ACP_DMA block */
#define ACP_DMA_CNTL_0 0x0000000
#define ACP_DMA_CNTL_1 0x0000004
#define ACP_DMA_CNTL_2 0x0000008
#define ACP_DMA_CNTL_3 0x000000C
#define ACP_DMA_CNTL_4 0x0000010
#define ACP_DMA_CNTL_5 0x0000014
#define ACP_DMA_CNTL_6 0x0000018
#define ACP_DMA_CNTL_7 0x000001C
#define ACP_DMA_DSCR_STRT_IDX_0 0x0000020
#define ACP_DMA_DSCR_STRT_IDX_1 0x0000024
#define ACP_DMA_DSCR_STRT_IDX_2 0x0000028
#define ACP_DMA_DSCR_STRT_IDX_3 0x000002C
#define ACP_DMA_DSCR_STRT_IDX_4 0x0000030
#define ACP_DMA_DSCR_STRT_IDX_5 0x0000034
#define ACP_DMA_DSCR_STRT_IDX_6 0x0000038
#define ACP_DMA_DSCR_STRT_IDX_7 0x000003C
#define ACP_DMA_DSCR_CNT_0 0x0000040
#define ACP_DMA_DSCR_CNT_1 0x0000044
#define ACP_DMA_DSCR_CNT_2 0x0000048
#define ACP_DMA_DSCR_CNT_3 0x000004C
#define ACP_DMA_DSCR_CNT_4 0x0000050
#define ACP_DMA_DSCR_CNT_5 0x0000054
#define ACP_DMA_DSCR_CNT_6 0x0000058
#define ACP_DMA_DSCR_CNT_7 0x000005C
#define ACP_DMA_PRIO_0 0x0000060
#define ACP_DMA_PRIO_1 0x0000064
#define ACP_DMA_PRIO_2 0x0000068
#define ACP_DMA_PRIO_3 0x000006C
#define ACP_DMA_PRIO_4 0x0000070
#define ACP_DMA_PRIO_5 0x0000074
#define ACP_DMA_PRIO_6 0x0000078
#define ACP_DMA_PRIO_7 0x000007C
#define ACP_DMA_CUR_DSCR_0 0x0000080
#define ACP_DMA_CUR_DSCR_1 0x0000084
#define ACP_DMA_CUR_DSCR_2 0x0000088
#define ACP_DMA_CUR_DSCR_3 0x000008C
#define ACP_DMA_CUR_DSCR_4 0x0000090
#define ACP_DMA_CUR_DSCR_5 0x0000094
#define ACP_DMA_CUR_DSCR_6 0x0000098
#define ACP_DMA_CUR_DSCR_7 0x000009C
#define ACP_DMA_CUR_TRANS_CNT_0 0x00000A0
#define ACP_DMA_CUR_TRANS_CNT_1 0x00000A4
#define ACP_DMA_CUR_TRANS_CNT_2 0x00000A8
#define ACP_DMA_CUR_TRANS_CNT_3 0x00000AC
#define ACP_DMA_CUR_TRANS_CNT_4 0x00000B0
#define ACP_DMA_CUR_TRANS_CNT_5 0x00000B4
#define ACP_DMA_CUR_TRANS_CNT_6 0x00000B8
#define ACP_DMA_CUR_TRANS_CNT_7 0x00000BC
#define ACP_DMA_ERR_STS_0 0x00000C0
#define ACP_DMA_ERR_STS_1 0x00000C4
#define ACP_DMA_ERR_STS_2 0x00000C8
#define ACP_DMA_ERR_STS_3 0x00000CC
#define ACP_DMA_ERR_STS_4 0x00000D0
#define ACP_DMA_ERR_STS_5 0x00000D4
#define ACP_DMA_ERR_STS_6 0x00000D8
#define ACP_DMA_ERR_STS_7 0x00000DC
#define ACP_DMA_DESC_BASE_ADDR 0x00000E0
#define ACP_DMA_DESC_MAX_NUM_DSCR 0x00000E4
#define ACP_DMA_CH_STS 0x00000E8
#define ACP_DMA_CH_GROUP 0x00000EC
#define ACP_DMA_CH_RST_STS 0x00000F0
/* Registers from ACP_AXI2AXIATU block */
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_1 0x0000C00
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_1 0x0000C04
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_2 0x0000C08
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_2 0x0000C0C
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_3 0x0000C10
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_3 0x0000C14
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_4 0x0000C18
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_4 0x0000C1C
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_5 0x0000C20
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_5 0x0000C24
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_6 0x0000C28
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_6 0x0000C2C
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_7 0x0000C30
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_7 0x0000C34
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_8 0x0000C38
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_8 0x0000C3C
#define ACPAXI2AXI_ATU_CTRL 0x0000C40
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_9 0x0000C44
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_9 0x0000C48
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_10 0x0000C4C
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_10 0x0000C50
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_11 0x0000C54
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_11 0x0000C58
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_12 0x0000C5C
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_12 0x0000C60
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_13 0x0000C64
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_13 0x0000C68
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_14 0x0000C6C
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_14 0x0000C70
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_15 0x0000C74
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_15 0x0000C78
#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_16 0x0000C7C
#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_16 0x0000C80
/* Registers from ACP_CLKRST block */
#define ACP_SOFT_RESET 0x0001000
#define ACP_CONTROL 0x0001004
#define ACP_STATUS 0x0001008
#define ACP_DYNAMIC_CG_MASTER_CONTROL 0x0001010
#define ACP_ZSC_DSP_CTRL 0x0001014
#define ACP_ZSC_STS 0x0001018
#define ACP_PGFSM_CONTROL 0x0001024
#define ACP_PGFSM_STATUS 0x0001028
#define ACP_CLKMUX_SEL 0x000102C
/* Registers from ACP_AON block */
#define ACP_PME_EN 0x0001400
#define ACP_DEVICE_STATE 0x0001404
#define AZ_DEVICE_STATE 0x0001408
#define ACP_PIN_CONFIG 0x0001440
#define ACP_PAD_PULLUP_CTRL 0x0001444
#define ACP_PAD_PULLDOWN_CTRL 0x0001448
#define ACP_PAD_DRIVE_STRENGTH_CTRL 0x000144C
#define ACP_PAD_SCHMEN_CTRL 0x0001450
#define ACP_SW0_PAD_KEEPER_EN 0x0001454
#define ACP_SW0_WAKE_EN 0x0001458
#define ACP_I2S_WAKE_EN 0x000145C
#define ACP_SW1_WAKE_EN 0x0001460
#define ACP_SW0_I2S_ERROR_REASON 0x00018B4
#define ACP_SW0_POS_TRACK_AUDIO0_TX_CTRL 0x00018B8
#define ACP_SW0_AUDIO0_TX_DMA_POS 0x00018BC
#define ACP_SW0_POS_TRACK_AUDIO1_TX_CTRL 0x00018C0
#define ACP_SW0_AUDIO1_TX_DMA_POS 0x00018C4
#define ACP_SW0_POS_TRACK_AUDIO2_TX_CTRL 0x00018C8
#define ACP_SW0_AUDIO2_TX_DMA_POS 0x00018CC
#define ACP_SW0_POS_TRACK_AUDIO0_RX_CTRL 0x00018D0
#define ACP_SW0_AUDIO0_DMA_POS 0x00018D4
#define ACP_SW0_POS_TRACK_AUDIO1_RX_CTRL 0x00018D8
#define ACP_SW0_AUDIO1_RX_DMA_POS 0x00018DC
#define ACP_SW0_POS_TRACK_AUDIO2_RX_CTRL 0x00018E0
#define ACP_SW0_AUDIO2_RX_DMA_POS 0x00018E4
#define ACP_ERROR_INTR_MASK1 0X0001974
#define ACP_ERROR_INTR_MASK2 0X0001978
#define ACP_ERROR_INTR_MASK3 0X000197C
/* Registers from ACP_P1_MISC block */
#define ACP_EXTERNAL_INTR_ENB 0x0001A00
#define ACP_EXTERNAL_INTR_CNTL 0x0001A04
#define ACP_EXTERNAL_INTR_CNTL1 0x0001A08
#define ACP_EXTERNAL_INTR_STAT 0x0001A0C
#define ACP_EXTERNAL_INTR_STAT1 0x0001A10
#define ACP_ERROR_STATUS 0x0001A4C
#define ACP_SW1_I2S_ERROR_REASON 0x0001A50
#define ACP_SW1_POS_TRACK_AUDIO0_TX_CTRL 0x0001A6C
#define ACP_SW1_AUDIO0_TX_DMA_POS 0x0001A70
#define ACP_SW1_POS_TRACK_AUDIO0_RX_CTRL 0x0001A74
#define ACP_SW1_AUDIO0_RX_DMA_POS 0x0001A78
#define ACP_P1_DMIC_I2S_GPIO_INTR_CTRL 0x0001A7C
#define ACP_P1_DMIC_I2S_GPIO_INTR_STATUS 0x0001A80
#define ACP_SCRATCH_REG_BASE_ADDR 0x0001A84
#define ACP_SW1_POS_TRACK_AUDIO1_TX_CTRL 0x0001A88
#define ACP_SW1_AUDIO1_TX_DMA_POS 0x0001A8C
#define ACP_SW1_POS_TRACK_AUDIO2_TX_CTRL 0x0001A90
#define ACP_SW1_AUDIO2_TX_DMA_POS 0x0001A94
#define ACP_SW1_POS_TRACK_AUDIO1_RX_CTRL 0x0001A98
#define ACP_SW1_AUDIO1_RX_DMA_POS 0x0001A9C
#define ACP_SW1_POS_TRACK_AUDIO2_RX_CTRL 0x0001AA0
#define ACP_SW1_AUDIO2_RX_DMA_POS 0x0001AA4
#define ACP_ERROR_INTR_MASK4 0X0001AEC
#define ACP_ERROR_INTR_MASK5 0X0001AF0
/* Registers from ACP_AUDIO_BUFFERS block */
#define ACP_AUDIO0_RX_RINGBUFADDR 0x0002000
#define ACP_AUDIO0_RX_RINGBUFSIZE 0x0002004
#define ACP_AUDIO0_RX_LINKPOSITIONCNTR 0x0002008
#define ACP_AUDIO0_RX_FIFOADDR 0x000200C
#define ACP_AUDIO0_RX_FIFOSIZE 0x0002010
#define ACP_AUDIO0_RX_DMA_SIZE 0x0002014
#define ACP_AUDIO0_RX_LINEARPOSITIONCNTR_HIGH 0x0002018
#define ACP_AUDIO0_RX_LINEARPOSITIONCNTR_LOW 0x000201C
#define ACP_AUDIO0_RX_INTR_WATERMARK_SIZE 0x0002020
#define ACP_AUDIO0_TX_RINGBUFADDR 0x0002024
#define ACP_AUDIO0_TX_RINGBUFSIZE 0x0002028
#define ACP_AUDIO0_TX_LINKPOSITIONCNTR 0x000202C
#define ACP_AUDIO0_TX_FIFOADDR 0x0002030
#define ACP_AUDIO0_TX_FIFOSIZE 0x0002034
#define ACP_AUDIO0_TX_DMA_SIZE 0x0002038
#define ACP_AUDIO0_TX_LINEARPOSITIONCNTR_HIGH 0x000203C
#define ACP_AUDIO0_TX_LINEARPOSITIONCNTR_LOW 0x0002040
#define ACP_AUDIO0_TX_INTR_WATERMARK_SIZE 0x0002044
#define ACP_AUDIO1_RX_RINGBUFADDR 0x0002048
#define ACP_AUDIO1_RX_RINGBUFSIZE 0x000204C
#define ACP_AUDIO1_RX_LINKPOSITIONCNTR 0x0002050
#define ACP_AUDIO1_RX_FIFOADDR 0x0002054
#define ACP_AUDIO1_RX_FIFOSIZE 0x0002058
#define ACP_AUDIO1_RX_DMA_SIZE 0x000205C
#define ACP_AUDIO1_RX_LINEARPOSITIONCNTR_HIGH 0x0002060
#define ACP_AUDIO1_RX_LINEARPOSITIONCNTR_LOW 0x0002064
#define ACP_AUDIO1_RX_INTR_WATERMARK_SIZE 0x0002068
#define ACP_AUDIO1_TX_RINGBUFADDR 0x000206C
#define ACP_AUDIO1_TX_RINGBUFSIZE 0x0002070
#define ACP_AUDIO1_TX_LINKPOSITIONCNTR 0x0002074
#define ACP_AUDIO1_TX_FIFOADDR 0x0002078
#define ACP_AUDIO1_TX_FIFOSIZE 0x000207C
#define ACP_AUDIO1_TX_DMA_SIZE 0x0002080
#define ACP_AUDIO1_TX_LINEARPOSITIONCNTR_HIGH 0x0002084
#define ACP_AUDIO1_TX_LINEARPOSITIONCNTR_LOW 0x0002088
#define ACP_AUDIO1_TX_INTR_WATERMARK_SIZE 0x000208C
#define ACP_AUDIO2_RX_RINGBUFADDR 0x0002090
#define ACP_AUDIO2_RX_RINGBUFSIZE 0x0002094
#define ACP_AUDIO2_RX_LINKPOSITIONCNTR 0x0002098
#define ACP_AUDIO2_RX_FIFOADDR 0x000209C
#define ACP_AUDIO2_RX_FIFOSIZE 0x00020A0
#define ACP_AUDIO2_RX_DMA_SIZE 0x00020A4
#define ACP_AUDIO2_RX_LINEARPOSITIONCNTR_HIGH 0x00020A8
#define ACP_AUDIO2_RX_LINEARPOSITIONCNTR_LOW 0x00020AC
#define ACP_AUDIO2_RX_INTR_WATERMARK_SIZE 0x00020B0
#define ACP_AUDIO2_TX_RINGBUFADDR 0x00020B4
#define ACP_AUDIO2_TX_RINGBUFSIZE 0x00020B8
#define ACP_AUDIO2_TX_LINKPOSITIONCNTR 0x00020BC
#define ACP_AUDIO2_TX_FIFOADDR 0x00020C0
#define ACP_AUDIO2_TX_FIFOSIZE 0x00020C4
#define ACP_AUDIO2_TX_DMA_SIZE 0x00020C8
#define ACP_AUDIO2_TX_LINEARPOSITIONCNTR_HIGH 0x00020CC
#define ACP_AUDIO2_TX_LINEARPOSITIONCNTR_LOW 0x00020D0
#define ACP_AUDIO2_TX_INTR_WATERMARK_SIZE 0x00020D4
/* Registers from ACP_I2S_TDM block */
#define ACP_I2STDM_IER 0x0002400
#define ACP_I2STDM_IRER 0x0002404
#define ACP_I2STDM_RXFRMT 0x0002408
#define ACP_I2STDM_ITER 0x000240C
#define ACP_I2STDM_TXFRMT 0x0002410
#define ACP_I2STDM0_MSTRCLKGEN 0x0002414
#define ACP_I2STDM1_MSTRCLKGEN 0x0002418
#define ACP_I2STDM2_MSTRCLKGEN 0x000241C
#define ACP_I2STDM_REFCLKGEN 0x0002420
/* Registers from ACP_BT_TDM block */
#define ACP_BTTDM_IER 0x0002800
#define ACP_BTTDM_IRER 0x0002804
#define ACP_BTTDM_RXFRMT 0x0002808
#define ACP_BTTDM_ITER 0x000280C
#define ACP_BTTDM_TXFRMT 0x0002810
#define ACP_HSTDM_IER 0x0002814
#define ACP_HSTDM_IRER 0x0002818
#define ACP_HSTDM_RXFRMT 0x000281C
#define ACP_HSTDM_ITER 0x0002820
#define ACP_HSTDM_TXFRMT 0x0002824
/* Registers from ACP_WOV block */
#define ACP_WOV_PDM_ENABLE 0x0002C04
#define ACP_WOV_PDM_DMA_ENABLE 0x0002C08
#define ACP_WOV_RX_RINGBUFADDR 0x0002C0C
#define ACP_WOV_RX_RINGBUFSIZE 0x0002C10
#define ACP_WOV_RX_LINKPOSITIONCNTR 0x0002C14
#define ACP_WOV_RX_LINEARPOSITIONCNTR_HIGH 0x0002C18
#define ACP_WOV_RX_LINEARPOSITIONCNTR_LOW 0x0002C1C
#define ACP_WOV_RX_INTR_WATERMARK_SIZE 0x0002C20
#define ACP_WOV_PDM_FIFO_FLUSH 0x0002C24
#define ACP_WOV_PDM_NO_OF_CHANNELS 0x0002C28
#define ACP_WOV_PDM_DECIMATION_FACTOR 0x0002C2C
#define ACP_WOV_PDM_VAD_CTRL 0x0002C30
#define ACP_WOV_WAKE 0x0002C54
#define ACP_WOV_BUFFER_STATUS 0x0002C58
#define ACP_WOV_MISC_CTRL 0x0002C5C
#define ACP_WOV_CLK_CTRL 0x0002C60
#define ACP_PDM_VAD_DYNAMIC_CLK_GATING_EN 0x0002C64
#define ACP_WOV_ERROR_STATUS_REGISTER 0x0002C68
#define ACP_PDM_CLKDIV 0x0002C6C
/* Registers from ACP_SW0_SWCLK block */
#define ACP_SW0_EN 0x0003000
#define ACP_SW0_EN_STATUS 0x0003004
#define ACP_SW0_FRAMESIZE 0x0003008
#define ACP_SW0_SSP_COUNTER 0x000300C
#define ACP_SW0_AUDIO0_TX_EN 0x0003010
#define ACP_SW0_AUDIO0_TX_EN_STATUS 0x0003014
#define ACP_SW0_AUDIO0_TX_FRAME_FORMAT 0x0003018
#define ACP_SW0_AUDIO0_TX_SAMPLEINTERVAL 0x000301C
#define ACP_SW0_AUDIO0_TX_HCTRL_DP0 0x0003020
#define ACP_SW0_AUDIO0_TX_HCTRL_DP1 0x0003024
#define ACP_SW0_AUDIO0_TX_HCTRL_DP2 0x0003028
#define ACP_SW0_AUDIO0_TX_HCTRL_DP3 0x000302C
#define ACP_SW0_AUDIO0_TX_OFFSET_DP0 0x0003030
#define ACP_SW0_AUDIO0_TX_OFFSET_DP1 0x0003034
#define ACP_SW0_AUDIO0_TX_OFFSET_DP2 0x0003038
#define ACP_SW0_AUDIO0_TX_OFFSET_DP3 0x000303C
#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP0 0x0003040
#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP1 0x0003044
#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP2 0x0003048
#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP3 0x000304C
#define ACP_SW0_AUDIO1_TX_EN 0x0003050
#define ACP_SW0_AUDIO1_TX_EN_STATUS 0x0003054
#define ACP_SW0_AUDIO1_TX_FRAME_FORMAT 0x0003058
#define ACP_SW0_AUDIO1_TX_SAMPLEINTERVAL 0x000305C
#define ACP_SW0_AUDIO1_TX_HCTRL 0x0003060
#define ACP_SW0_AUDIO1_TX_OFFSET 0x0003064
#define ACP_SW0_AUDIO1_TX_CHANNEL_ENABLE_DP0 0x0003068
#define ACP_SW0_AUDIO2_TX_EN 0x000306C
#define ACP_SW0_AUDIO2_TX_EN_STATUS 0x0003070
#define ACP_SW0_AUDIO2_TX_FRAME_FORMAT 0x0003074
#define ACP_SW0_AUDIO2_TX_SAMPLEINTERVAL 0x0003078
#define ACP_SW0_AUDIO2_TX_HCTRL 0x000307C
#define ACP_SW0_AUDIO2_TX_OFFSET 0x0003080
#define ACP_SW0_AUDIO2_TX_CHANNEL_ENABLE_DP0 0x0003084
#define ACP_SW0_AUDIO0_RX_EN 0x0003088
#define ACP_SW0_AUDIO0_RX_EN_STATUS 0x000308C
#define ACP_SW0_AUDIO0_RX_FRAME_FORMAT 0x0003090
#define ACP_SW0_AUDIO0_RX_SAMPLEINTERVAL 0x0003094
#define ACP_SW0_AUDIO0_RX_HCTRL_DP0 0x0003098
#define ACP_SW0_AUDIO0_RX_HCTRL_DP1 0x000309C
#define ACP_SW0_AUDIO0_RX_HCTRL_DP2 0x0003100
#define ACP_SW0_AUDIO0_RX_HCTRL_DP3 0x0003104
#define ACP_SW0_AUDIO0_RX_OFFSET_DP0 0x0003108
#define ACP_SW0_AUDIO0_RX_OFFSET_DP1 0x000310C
#define ACP_SW0_AUDIO0_RX_OFFSET_DP2 0x0003110
#define ACP_SW0_AUDIO0_RX_OFFSET_DP3 0x0003114
#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP0 0x0003118
#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP1 0x000311C
#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP2 0x0003120
#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP3 0x0003124
#define ACP_SW0_AUDIO1_RX_EN 0x0003128
#define ACP_SW0_AUDIO1_RX_EN_STATUS 0x000312C
#define ACP_SW0_AUDIO1_RX_FRAME_FORMAT 0x0003130
#define ACP_SW0_AUDIO1_RX_SAMPLEINTERVAL 0x0003134
#define ACP_SW0_AUDIO1_RX_HCTRL 0x0003138
#define ACP_SW0_AUDIO1_RX_OFFSET 0x000313C
#define ACP_SW0_AUDIO1_RX_CHANNEL_ENABLE_DP0 0x0003140
#define ACP_SW0_AUDIO2_RX_EN 0x0003144
#define ACP_SW0_AUDIO2_RX_EN_STATUS 0x0003148
#define ACP_SW0_AUDIO2_RX_FRAME_FORMAT 0x000314C
#define ACP_SW0_AUDIO2_RX_SAMPLEINTERVAL 0x0003150
#define ACP_SW0_AUDIO2_RX_HCTRL 0x0003154
#define ACP_SW0_AUDIO2_RX_OFFSET 0x0003158
#define ACP_SW0_AUDIO2_RX_CHANNEL_ENABLE_DP0 0x000315C
#define ACP_SW0_BPT_PORT_EN 0x0003160
#define ACP_SW0_BPT_PORT_EN_STATUS 0x0003164
#define ACP_SW0_BPT_PORT_FRAME_FORMAT 0x0003168
#define ACP_SW0_BPT_PORT_SAMPLEINTERVAL 0x000316C
#define ACP_SW0_BPT_PORT_HCTRL 0x0003170
#define ACP_SW0_BPT_PORT_OFFSET 0x0003174
#define ACP_SW0_BPT_PORT_CHANNEL_ENABLE 0x0003178
#define ACP_SW0_BPT_PORT_FIRST_BYTE_ADDR 0x000317C
#define ACP_SW0_CLK_RESUME_CTRL 0x0003180
#define ACP_SW0_CLK_RESUME_DELAY_CNTR 0x0003184
#define ACP_SW0_BUS_RESET_CTRL 0x0003188
#define ACP_SW0_PRBS_ERR_STATUS 0x000318C
#define ACP_SW0_IMM_CMD_UPPER_WORD 0x0003230
#define ACP_SW0_IMM_CMD_LOWER_QWORD 0x0003234
#define ACP_SW0_IMM_RESP_UPPER_WORD 0x0003238
#define ACP_SW0_IMM_RESP_LOWER_QWORD 0x000323C
#define ACP_SW0_IMM_CMD_STS 0x0003240
#define ACP_SW0_BRA_BASE_ADDRESS 0x0003244
#define ACP_SW0_BRA_TRANSFER_SIZE 0x0003248
#define ACP_SW0_BRA_DMA_BUSY 0x000324C
#define ACP_SW0_BRA_RESP 0x0003250
#define ACP_SW0_BRA_RESP_FRAME_ADDR 0x0003254
#define ACP_SW0_BRA_CURRENT_TRANSFER_SIZE 0x0003258
#define ACP_SW0_STATECHANGE_STATUS_0TO7 0x000325C
#define ACP_SW0_STATECHANGE_STATUS_8TO11 0x0003260
#define ACP_SW0_STATECHANGE_STATUS_MASK_0TO7 0x0003264
#define ACP_SW0_STATECHANGE_STATUS_MASK_8TO11 0x0003268
#define ACP_SW0_CLK_FREQUENCY_CTRL 0x000326C
#define ACP_SW0_ERROR_INTR_MASK 0x0003270
#define ACP_SW0_PHY_TEST_MODE_DATA_OFF 0x0003274
/* Registers from ACP_P1_AUDIO_BUFFERS block */
#define ACP_P1_AUDIO0_RX_RINGBUFADDR 0x0003A00
#define ACP_P1_AUDIO0_RX_RINGBUFSIZE 0x0003A04
#define ACP_P1_AUDIO0_RX_LINKPOSITIONCNTR 0x0003A08
#define ACP_P1_AUDIO0_RX_FIFOADDR 0x0003A0C
#define ACP_P1_AUDIO0_RX_FIFOSIZE 0x0003A10
#define ACP_P1_AUDIO0_RX_DMA_SIZE 0x0003A14
#define ACP_P1_AUDIO0_RX_LINEARPOSITIONCNTR_HIGH 0x0003A18
#define ACP_P1_AUDIO0_RX_LINEARPOSITIONCNTR_LOW 0x0003A1C
#define ACP_P1_AUDIO0_RX_INTR_WATERMARK_SIZE 0x0003A20
#define ACP_P1_AUDIO0_TX_RINGBUFADDR 0x0003A24
#define ACP_P1_AUDIO0_TX_RINGBUFSIZE 0x0003A28
#define ACP_P1_AUDIO0_TX_LINKPOSITIONCNTR 0x0003A2C
#define ACP_P1_AUDIO0_TX_FIFOADDR 0x0003A30
#define ACP_P1_AUDIO0_TX_FIFOSIZE 0x0003A34
#define ACP_P1_AUDIO0_TX_DMA_SIZE 0x0003A38
#define ACP_P1_AUDIO0_TX_LINEARPOSITIONCNTR_HIGH 0x0003A3C
#define ACP_P1_AUDIO0_TX_LINEARPOSITIONCNTR_LOW 0x0003A40
#define ACP_P1_AUDIO0_TX_INTR_WATERMARK_SIZE 0x0003A44
#define ACP_P1_AUDIO1_RX_RINGBUFADDR 0x0003A48
#define ACP_P1_AUDIO1_RX_RINGBUFSIZE 0x0003A4C
#define ACP_P1_AUDIO1_RX_LINKPOSITIONCNTR 0x0003A50
#define ACP_P1_AUDIO1_RX_FIFOADDR 0x0003A54
#define ACP_P1_AUDIO1_RX_FIFOSIZE 0x0003A58
#define ACP_P1_AUDIO1_RX_DMA_SIZE 0x0003A5C
#define ACP_P1_AUDIO1_RX_LINEARPOSITIONCNTR_HIGH 0x0003A60
#define ACP_P1_AUDIO1_RX_LINEARPOSITIONCNTR_LOW 0x0003A64
#define ACP_P1_AUDIO1_RX_INTR_WATERMARK_SIZE 0x0003A68
#define ACP_P1_AUDIO1_TX_RINGBUFADDR 0x0003A6C
#define ACP_P1_AUDIO1_TX_RINGBUFSIZE 0x0003A70
#define ACP_P1_AUDIO1_TX_LINKPOSITIONCNTR 0x0003A74
#define ACP_P1_AUDIO1_TX_FIFOADDR 0x0003A78
#define ACP_P1_AUDIO1_TX_FIFOSIZE 0x0003A7C
#define ACP_P1_AUDIO1_TX_DMA_SIZE 0x0003A80
#define ACP_P1_AUDIO1_TX_LINEARPOSITIONCNTR_HIGH 0x0003A84
#define ACP_P1_AUDIO1_TX_LINEARPOSITIONCNTR_LOW 0x0003A88
#define ACP_P1_AUDIO1_TX_INTR_WATERMARK_SIZE 0x0003A8C
#define ACP_P1_AUDIO2_RX_RINGBUFADDR 0x0003A90
#define ACP_P1_AUDIO2_RX_RINGBUFSIZE 0x0003A94
#define ACP_P1_AUDIO2_RX_LINKPOSITIONCNTR 0x0003A98
#define ACP_P1_AUDIO2_RX_FIFOADDR 0x0003A9C
#define ACP_P1_AUDIO2_RX_FIFOSIZE 0x0003AA0
#define ACP_P1_AUDIO2_RX_DMA_SIZE 0x0003AA4
#define ACP_P1_AUDIO2_RX_LINEARPOSITIONCNTR_HIGH 0x0003AA8
#define ACP_P1_AUDIO2_RX_LINEARPOSITIONCNTR_LOW 0x0003AAC
#define ACP_P1_AUDIO2_RX_INTR_WATERMARK_SIZE 0x0003AB0
#define ACP_P1_AUDIO2_TX_RINGBUFADDR 0x0003AB4
#define ACP_P1_AUDIO2_TX_RINGBUFSIZE 0x0003AB8
#define ACP_P1_AUDIO2_TX_LINKPOSITIONCNTR 0x0003ABC
#define ACP_P1_AUDIO2_TX_FIFOADDR 0x0003AC0
#define ACP_P1_AUDIO2_TX_FIFOSIZE 0x0003AC4
#define ACP_P1_AUDIO2_TX_DMA_SIZE 0x0003AC8
#define ACP_P1_AUDIO2_TX_LINEARPOSITIONCNTR_HIGH 0x0003ACC
#define ACP_P1_AUDIO2_TX_LINEARPOSITIONCNTR_LOW 0x0003AD0
#define ACP_P1_AUDIO2_TX_INTR_WATERMARK_SIZE 0x0003AD4
/* Registers from ACP_SW1_SWCLK block */
#define ACP_SW1_EN 0x0003C00
#define ACP_SW1_EN_STATUS 0x0003C04
#define ACP_SW1_FRAMESIZE 0x0003C08
#define ACP_SW1_SSP_COUNTER 0x0003C0C
#define ACP_SW1_AUDIO1_TX_EN 0x0003C50
#define ACP_SW1_AUDIO1_TX_EN_STATUS 0x0003C54
#define ACP_SW1_AUDIO1_TX_FRAME_FORMAT 0x0003C58
#define ACP_SW1_AUDIO1_TX_SAMPLEINTERVAL 0x0003C5C
#define ACP_SW1_AUDIO1_TX_HCTRL 0x0003C60
#define ACP_SW1_AUDIO1_TX_OFFSET 0x0003C64
#define ACP_SW1_AUDIO1_TX_CHANNEL_ENABLE_DP0 0x0003C68
#define ACP_SW1_AUDIO1_RX_EN 0x0003D28
#define ACP_SW1_AUDIO1_RX_EN_STATUS 0x0003D2C
#define ACP_SW1_AUDIO1_RX_FRAME_FORMAT 0x0003D30
#define ACP_SW1_AUDIO1_RX_SAMPLEINTERVAL 0x0003D34
#define ACP_SW1_AUDIO1_RX_HCTRL 0x0003D38
#define ACP_SW1_AUDIO1_RX_OFFSET 0x0003D3C
#define ACP_SW1_AUDIO1_RX_CHANNEL_ENABLE_DP0 0x0003D40
#define ACP_SW1_BPT_PORT_EN 0x0003D60
#define ACP_SW1_BPT_PORT_EN_STATUS 0x0003D64
#define ACP_SW1_BPT_PORT_FRAME_FORMAT 0x0003D68
#define ACP_SW1_BPT_PORT_SAMPLEINTERVAL 0x0003D6C
#define ACP_SW1_BPT_PORT_HCTRL 0x0003D70
#define ACP_SW1_BPT_PORT_OFFSET 0x0003D74
#define ACP_SW1_BPT_PORT_CHANNEL_ENABLE 0x0003D78
#define ACP_SW1_BPT_PORT_FIRST_BYTE_ADDR 0x0003D7C
#define ACP_SW1_CLK_RESUME_CTRL 0x0003D80
#define ACP_SW1_CLK_RESUME_DELAY_CNTR 0x0003D84
#define ACP_SW1_BUS_RESET_CTRL 0x0003D88
#define ACP_SW1_PRBS_ERR_STATUS 0x0003D8C
/* Registers from ACP_SW1_ACLK block */
#define ACP_SW1_CORB_BASE_ADDRESS 0x0003E00
#define ACP_SW1_CORB_WRITE_POINTER 0x0003E04
#define ACP_SW1_CORB_READ_POINTER 0x0003E08
#define ACP_SW1_CORB_CONTROL 0x0003E0C
#define ACP_SW1_CORB_SIZE 0x0003E14
#define ACP_SW1_RIRB_BASE_ADDRESS 0x0003E18
#define ACP_SW1_RIRB_WRITE_POINTER 0x0003E1C
#define ACP_SW1_RIRB_RESPONSE_INTERRUPT_COUNT 0x0003E20
#define ACP_SW1_RIRB_CONTROL 0x0003E24
#define ACP_SW1_RIRB_SIZE 0x0003E28
#define ACP_SW1_RIRB_FIFO_MIN_THDL 0x0003E2C
#define ACP_SW1_IMM_CMD_UPPER_WORD 0x0003E30
#define ACP_SW1_IMM_CMD_LOWER_QWORD 0x0003E34
#define ACP_SW1_IMM_RESP_UPPER_WORD 0x0003E38
#define ACP_SW1_IMM_RESP_LOWER_QWORD 0x0003E3C
#define ACP_SW1_IMM_CMD_STS 0x0003E40
#define ACP_SW1_BRA_BASE_ADDRESS 0x0003E44
#define ACP_SW1_BRA_TRANSFER_SIZE 0x0003E48
#define ACP_SW1_BRA_DMA_BUSY 0x0003E4C
#define ACP_SW1_BRA_RESP 0x0003E50
#define ACP_SW1_BRA_RESP_FRAME_ADDR 0x0003E54
#define ACP_SW1_BRA_CURRENT_TRANSFER_SIZE 0x0003E58
#define ACP_SW1_STATECHANGE_STATUS_0TO7 0x0003E5C
#define ACP_SW1_STATECHANGE_STATUS_8TO11 0x0003E60
#define ACP_SW1_STATECHANGE_STATUS_MASK_0TO7 0x0003E64
#define ACP_SW1_STATECHANGE_STATUS_MASK_8TO11 0x0003E68
#define ACP_SW1_CLK_FREQUENCY_CTRL 0x0003E6C
#define ACP_SW1_ERROR_INTR_MASK 0x0003E70
#define ACP_SW1_PHY_TEST_MODE_DATA_OFF 0x0003E74
/* Registers from ACP_SCRATCH block */
#define ACP_SCRATCH_REG_0 0x0010000
#endif