Merge tag 'mm-hotfixes-stable-2023-05-03-16-27' of git://git.kernel.org/pub/scm/linux...
[linux-block.git] / include / sound / acp63_chip_offset_byte.h
CommitLineData
161bff51
SSK
1/* SPDX-License-Identifier: GPL-2.0+ */
2/*
4b192114 3 * AMD ACP 6.3 Register Documentation
161bff51
SSK
4 *
5 * Copyright 2022 Advanced Micro Devices, Inc.
6 */
7
8#ifndef _acp_ip_OFFSET_HEADER
9#define _acp_ip_OFFSET_HEADER
10
11/* Registers from ACP_DMA block */
12#define ACP_DMA_CNTL_0 0x0000000
13#define ACP_DMA_CNTL_1 0x0000004
14#define ACP_DMA_CNTL_2 0x0000008
15#define ACP_DMA_CNTL_3 0x000000C
16#define ACP_DMA_CNTL_4 0x0000010
17#define ACP_DMA_CNTL_5 0x0000014
18#define ACP_DMA_CNTL_6 0x0000018
19#define ACP_DMA_CNTL_7 0x000001C
20#define ACP_DMA_DSCR_STRT_IDX_0 0x0000020
21#define ACP_DMA_DSCR_STRT_IDX_1 0x0000024
22#define ACP_DMA_DSCR_STRT_IDX_2 0x0000028
23#define ACP_DMA_DSCR_STRT_IDX_3 0x000002C
24#define ACP_DMA_DSCR_STRT_IDX_4 0x0000030
25#define ACP_DMA_DSCR_STRT_IDX_5 0x0000034
26#define ACP_DMA_DSCR_STRT_IDX_6 0x0000038
27#define ACP_DMA_DSCR_STRT_IDX_7 0x000003C
28#define ACP_DMA_DSCR_CNT_0 0x0000040
29#define ACP_DMA_DSCR_CNT_1 0x0000044
30#define ACP_DMA_DSCR_CNT_2 0x0000048
31#define ACP_DMA_DSCR_CNT_3 0x000004C
32#define ACP_DMA_DSCR_CNT_4 0x0000050
33#define ACP_DMA_DSCR_CNT_5 0x0000054
34#define ACP_DMA_DSCR_CNT_6 0x0000058
35#define ACP_DMA_DSCR_CNT_7 0x000005C
36#define ACP_DMA_PRIO_0 0x0000060
37#define ACP_DMA_PRIO_1 0x0000064
38#define ACP_DMA_PRIO_2 0x0000068
39#define ACP_DMA_PRIO_3 0x000006C
40#define ACP_DMA_PRIO_4 0x0000070
41#define ACP_DMA_PRIO_5 0x0000074
42#define ACP_DMA_PRIO_6 0x0000078
43#define ACP_DMA_PRIO_7 0x000007C
44#define ACP_DMA_CUR_DSCR_0 0x0000080
45#define ACP_DMA_CUR_DSCR_1 0x0000084
46#define ACP_DMA_CUR_DSCR_2 0x0000088
47#define ACP_DMA_CUR_DSCR_3 0x000008C
48#define ACP_DMA_CUR_DSCR_4 0x0000090
49#define ACP_DMA_CUR_DSCR_5 0x0000094
50#define ACP_DMA_CUR_DSCR_6 0x0000098
51#define ACP_DMA_CUR_DSCR_7 0x000009C
52#define ACP_DMA_CUR_TRANS_CNT_0 0x00000A0
53#define ACP_DMA_CUR_TRANS_CNT_1 0x00000A4
54#define ACP_DMA_CUR_TRANS_CNT_2 0x00000A8
55#define ACP_DMA_CUR_TRANS_CNT_3 0x00000AC
56#define ACP_DMA_CUR_TRANS_CNT_4 0x00000B0
57#define ACP_DMA_CUR_TRANS_CNT_5 0x00000B4
58#define ACP_DMA_CUR_TRANS_CNT_6 0x00000B8
59#define ACP_DMA_CUR_TRANS_CNT_7 0x00000BC
60#define ACP_DMA_ERR_STS_0 0x00000C0
61#define ACP_DMA_ERR_STS_1 0x00000C4
62#define ACP_DMA_ERR_STS_2 0x00000C8
63#define ACP_DMA_ERR_STS_3 0x00000CC
64#define ACP_DMA_ERR_STS_4 0x00000D0
65#define ACP_DMA_ERR_STS_5 0x00000D4
66#define ACP_DMA_ERR_STS_6 0x00000D8
67#define ACP_DMA_ERR_STS_7 0x00000DC
68#define ACP_DMA_DESC_BASE_ADDR 0x00000E0
69#define ACP_DMA_DESC_MAX_NUM_DSCR 0x00000E4
70#define ACP_DMA_CH_STS 0x00000E8
71#define ACP_DMA_CH_GROUP 0x00000EC
72#define ACP_DMA_CH_RST_STS 0x00000F0
73
74/* Registers from ACP_AXI2AXIATU block */
75#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_1 0x0000C00
76#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_1 0x0000C04
77#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_2 0x0000C08
78#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_2 0x0000C0C
79#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_3 0x0000C10
80#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_3 0x0000C14
81#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_4 0x0000C18
82#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_4 0x0000C1C
83#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_5 0x0000C20
84#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_5 0x0000C24
85#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_6 0x0000C28
86#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_6 0x0000C2C
87#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_7 0x0000C30
88#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_7 0x0000C34
89#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_8 0x0000C38
90#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_8 0x0000C3C
91#define ACPAXI2AXI_ATU_CTRL 0x0000C40
92#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_9 0x0000C44
93#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_9 0x0000C48
94#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_10 0x0000C4C
95#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_10 0x0000C50
96#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_11 0x0000C54
97#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_11 0x0000C58
98#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_12 0x0000C5C
99#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_12 0x0000C60
100#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_13 0x0000C64
101#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_13 0x0000C68
102#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_14 0x0000C6C
103#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_14 0x0000C70
104#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_15 0x0000C74
105#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_15 0x0000C78
106#define ACPAXI2AXI_ATU_PAGE_SIZE_GRP_16 0x0000C7C
107#define ACPAXI2AXI_ATU_BASE_ADDR_GRP_16 0x0000C80
108
109/* Registers from ACP_CLKRST block */
110#define ACP_SOFT_RESET 0x0001000
111#define ACP_CONTROL 0x0001004
112#define ACP_STATUS 0x0001008
113#define ACP_DYNAMIC_CG_MASTER_CONTROL 0x0001010
114#define ACP_ZSC_DSP_CTRL 0x0001014
115#define ACP_ZSC_STS 0x0001018
116#define ACP_PGFSM_CONTROL 0x0001024
117#define ACP_PGFSM_STATUS 0x0001028
118#define ACP_CLKMUX_SEL 0x000102C
119
120/* Registers from ACP_AON block */
121#define ACP_PME_EN 0x0001400
122#define ACP_DEVICE_STATE 0x0001404
123#define AZ_DEVICE_STATE 0x0001408
124#define ACP_PIN_CONFIG 0x0001440
125#define ACP_PAD_PULLUP_CTRL 0x0001444
126#define ACP_PAD_PULLDOWN_CTRL 0x0001448
127#define ACP_PAD_DRIVE_STRENGTH_CTRL 0x000144C
128#define ACP_PAD_SCHMEN_CTRL 0x0001450
96ebccb2
VM
129#define ACP_SW0_PAD_KEEPER_EN 0x0001454
130#define ACP_SW0_WAKE_EN 0x0001458
161bff51
SSK
131#define ACP_I2S_WAKE_EN 0x000145C
132#define ACP_SW1_WAKE_EN 0x0001460
133
96ebccb2
VM
134#define ACP_SW0_I2S_ERROR_REASON 0x00018B4
135#define ACP_SW0_POS_TRACK_AUDIO0_TX_CTRL 0x00018B8
136#define ACP_SW0_AUDIO0_TX_DMA_POS 0x00018BC
137#define ACP_SW0_POS_TRACK_AUDIO1_TX_CTRL 0x00018C0
138#define ACP_SW0_AUDIO1_TX_DMA_POS 0x00018C4
139#define ACP_SW0_POS_TRACK_AUDIO2_TX_CTRL 0x00018C8
140#define ACP_SW0_AUDIO2_TX_DMA_POS 0x00018CC
141#define ACP_SW0_POS_TRACK_AUDIO0_RX_CTRL 0x00018D0
142#define ACP_SW0_AUDIO0_DMA_POS 0x00018D4
143#define ACP_SW0_POS_TRACK_AUDIO1_RX_CTRL 0x00018D8
144#define ACP_SW0_AUDIO1_RX_DMA_POS 0x00018DC
145#define ACP_SW0_POS_TRACK_AUDIO2_RX_CTRL 0x00018E0
146#define ACP_SW0_AUDIO2_RX_DMA_POS 0x00018E4
9f879fb1
VM
147#define ACP_ERROR_INTR_MASK1 0X0001974
148#define ACP_ERROR_INTR_MASK2 0X0001978
149#define ACP_ERROR_INTR_MASK3 0X000197C
150
161bff51
SSK
151/* Registers from ACP_P1_MISC block */
152#define ACP_EXTERNAL_INTR_ENB 0x0001A00
153#define ACP_EXTERNAL_INTR_CNTL 0x0001A04
154#define ACP_EXTERNAL_INTR_CNTL1 0x0001A08
155#define ACP_EXTERNAL_INTR_STAT 0x0001A0C
156#define ACP_EXTERNAL_INTR_STAT1 0x0001A10
157#define ACP_ERROR_STATUS 0x0001A4C
96ebccb2
VM
158#define ACP_SW1_I2S_ERROR_REASON 0x0001A50
159#define ACP_SW1_POS_TRACK_AUDIO0_TX_CTRL 0x0001A6C
160#define ACP_SW1_AUDIO0_TX_DMA_POS 0x0001A70
161#define ACP_SW1_POS_TRACK_AUDIO0_RX_CTRL 0x0001A74
162#define ACP_SW1_AUDIO0_RX_DMA_POS 0x0001A78
161bff51
SSK
163#define ACP_P1_DMIC_I2S_GPIO_INTR_CTRL 0x0001A7C
164#define ACP_P1_DMIC_I2S_GPIO_INTR_STATUS 0x0001A80
165#define ACP_SCRATCH_REG_BASE_ADDR 0x0001A84
96ebccb2
VM
166#define ACP_SW1_POS_TRACK_AUDIO1_TX_CTRL 0x0001A88
167#define ACP_SW1_AUDIO1_TX_DMA_POS 0x0001A8C
168#define ACP_SW1_POS_TRACK_AUDIO2_TX_CTRL 0x0001A90
169#define ACP_SW1_AUDIO2_TX_DMA_POS 0x0001A94
170#define ACP_SW1_POS_TRACK_AUDIO1_RX_CTRL 0x0001A98
171#define ACP_SW1_AUDIO1_RX_DMA_POS 0x0001A9C
172#define ACP_SW1_POS_TRACK_AUDIO2_RX_CTRL 0x0001AA0
173#define ACP_SW1_AUDIO2_RX_DMA_POS 0x0001AA4
9f879fb1
VM
174#define ACP_ERROR_INTR_MASK4 0X0001AEC
175#define ACP_ERROR_INTR_MASK5 0X0001AF0
161bff51
SSK
176
177/* Registers from ACP_AUDIO_BUFFERS block */
96ebccb2
VM
178#define ACP_AUDIO0_RX_RINGBUFADDR 0x0002000
179#define ACP_AUDIO0_RX_RINGBUFSIZE 0x0002004
180#define ACP_AUDIO0_RX_LINKPOSITIONCNTR 0x0002008
181#define ACP_AUDIO0_RX_FIFOADDR 0x000200C
182#define ACP_AUDIO0_RX_FIFOSIZE 0x0002010
183#define ACP_AUDIO0_RX_DMA_SIZE 0x0002014
184#define ACP_AUDIO0_RX_LINEARPOSITIONCNTR_HIGH 0x0002018
185#define ACP_AUDIO0_RX_LINEARPOSITIONCNTR_LOW 0x000201C
186#define ACP_AUDIO0_RX_INTR_WATERMARK_SIZE 0x0002020
187#define ACP_AUDIO0_TX_RINGBUFADDR 0x0002024
188#define ACP_AUDIO0_TX_RINGBUFSIZE 0x0002028
189#define ACP_AUDIO0_TX_LINKPOSITIONCNTR 0x000202C
190#define ACP_AUDIO0_TX_FIFOADDR 0x0002030
191#define ACP_AUDIO0_TX_FIFOSIZE 0x0002034
192#define ACP_AUDIO0_TX_DMA_SIZE 0x0002038
193#define ACP_AUDIO0_TX_LINEARPOSITIONCNTR_HIGH 0x000203C
194#define ACP_AUDIO0_TX_LINEARPOSITIONCNTR_LOW 0x0002040
195#define ACP_AUDIO0_TX_INTR_WATERMARK_SIZE 0x0002044
196#define ACP_AUDIO1_RX_RINGBUFADDR 0x0002048
197#define ACP_AUDIO1_RX_RINGBUFSIZE 0x000204C
198#define ACP_AUDIO1_RX_LINKPOSITIONCNTR 0x0002050
199#define ACP_AUDIO1_RX_FIFOADDR 0x0002054
200#define ACP_AUDIO1_RX_FIFOSIZE 0x0002058
201#define ACP_AUDIO1_RX_DMA_SIZE 0x000205C
202#define ACP_AUDIO1_RX_LINEARPOSITIONCNTR_HIGH 0x0002060
203#define ACP_AUDIO1_RX_LINEARPOSITIONCNTR_LOW 0x0002064
204#define ACP_AUDIO1_RX_INTR_WATERMARK_SIZE 0x0002068
205#define ACP_AUDIO1_TX_RINGBUFADDR 0x000206C
206#define ACP_AUDIO1_TX_RINGBUFSIZE 0x0002070
207#define ACP_AUDIO1_TX_LINKPOSITIONCNTR 0x0002074
208#define ACP_AUDIO1_TX_FIFOADDR 0x0002078
209#define ACP_AUDIO1_TX_FIFOSIZE 0x000207C
210#define ACP_AUDIO1_TX_DMA_SIZE 0x0002080
211#define ACP_AUDIO1_TX_LINEARPOSITIONCNTR_HIGH 0x0002084
212#define ACP_AUDIO1_TX_LINEARPOSITIONCNTR_LOW 0x0002088
213#define ACP_AUDIO1_TX_INTR_WATERMARK_SIZE 0x000208C
214#define ACP_AUDIO2_RX_RINGBUFADDR 0x0002090
215#define ACP_AUDIO2_RX_RINGBUFSIZE 0x0002094
216#define ACP_AUDIO2_RX_LINKPOSITIONCNTR 0x0002098
217#define ACP_AUDIO2_RX_FIFOADDR 0x000209C
218#define ACP_AUDIO2_RX_FIFOSIZE 0x00020A0
219#define ACP_AUDIO2_RX_DMA_SIZE 0x00020A4
220#define ACP_AUDIO2_RX_LINEARPOSITIONCNTR_HIGH 0x00020A8
221#define ACP_AUDIO2_RX_LINEARPOSITIONCNTR_LOW 0x00020AC
222#define ACP_AUDIO2_RX_INTR_WATERMARK_SIZE 0x00020B0
223#define ACP_AUDIO2_TX_RINGBUFADDR 0x00020B4
224#define ACP_AUDIO2_TX_RINGBUFSIZE 0x00020B8
225#define ACP_AUDIO2_TX_LINKPOSITIONCNTR 0x00020BC
226#define ACP_AUDIO2_TX_FIFOADDR 0x00020C0
227#define ACP_AUDIO2_TX_FIFOSIZE 0x00020C4
228#define ACP_AUDIO2_TX_DMA_SIZE 0x00020C8
229#define ACP_AUDIO2_TX_LINEARPOSITIONCNTR_HIGH 0x00020CC
230#define ACP_AUDIO2_TX_LINEARPOSITIONCNTR_LOW 0x00020D0
231#define ACP_AUDIO2_TX_INTR_WATERMARK_SIZE 0x00020D4
161bff51
SSK
232
233/* Registers from ACP_I2S_TDM block */
234#define ACP_I2STDM_IER 0x0002400
235#define ACP_I2STDM_IRER 0x0002404
236#define ACP_I2STDM_RXFRMT 0x0002408
237#define ACP_I2STDM_ITER 0x000240C
238#define ACP_I2STDM_TXFRMT 0x0002410
239#define ACP_I2STDM0_MSTRCLKGEN 0x0002414
240#define ACP_I2STDM1_MSTRCLKGEN 0x0002418
241#define ACP_I2STDM2_MSTRCLKGEN 0x000241C
242#define ACP_I2STDM_REFCLKGEN 0x0002420
243
244/* Registers from ACP_BT_TDM block */
245#define ACP_BTTDM_IER 0x0002800
246#define ACP_BTTDM_IRER 0x0002804
247#define ACP_BTTDM_RXFRMT 0x0002808
248#define ACP_BTTDM_ITER 0x000280C
249#define ACP_BTTDM_TXFRMT 0x0002810
250#define ACP_HSTDM_IER 0x0002814
251#define ACP_HSTDM_IRER 0x0002818
252#define ACP_HSTDM_RXFRMT 0x000281C
253#define ACP_HSTDM_ITER 0x0002820
254#define ACP_HSTDM_TXFRMT 0x0002824
255
256/* Registers from ACP_WOV block */
257#define ACP_WOV_PDM_ENABLE 0x0002C04
258#define ACP_WOV_PDM_DMA_ENABLE 0x0002C08
259#define ACP_WOV_RX_RINGBUFADDR 0x0002C0C
260#define ACP_WOV_RX_RINGBUFSIZE 0x0002C10
261#define ACP_WOV_RX_LINKPOSITIONCNTR 0x0002C14
262#define ACP_WOV_RX_LINEARPOSITIONCNTR_HIGH 0x0002C18
263#define ACP_WOV_RX_LINEARPOSITIONCNTR_LOW 0x0002C1C
264#define ACP_WOV_RX_INTR_WATERMARK_SIZE 0x0002C20
265#define ACP_WOV_PDM_FIFO_FLUSH 0x0002C24
266#define ACP_WOV_PDM_NO_OF_CHANNELS 0x0002C28
267#define ACP_WOV_PDM_DECIMATION_FACTOR 0x0002C2C
268#define ACP_WOV_PDM_VAD_CTRL 0x0002C30
269#define ACP_WOV_WAKE 0x0002C54
270#define ACP_WOV_BUFFER_STATUS 0x0002C58
271#define ACP_WOV_MISC_CTRL 0x0002C5C
272#define ACP_WOV_CLK_CTRL 0x0002C60
273#define ACP_PDM_VAD_DYNAMIC_CLK_GATING_EN 0x0002C64
274#define ACP_WOV_ERROR_STATUS_REGISTER 0x0002C68
275#define ACP_PDM_CLKDIV 0x0002C6C
276
96ebccb2
VM
277/* Registers from ACP_SW0_SWCLK block */
278#define ACP_SW0_EN 0x0003000
279#define ACP_SW0_EN_STATUS 0x0003004
280#define ACP_SW0_FRAMESIZE 0x0003008
281#define ACP_SW0_SSP_COUNTER 0x000300C
282#define ACP_SW0_AUDIO0_TX_EN 0x0003010
283#define ACP_SW0_AUDIO0_TX_EN_STATUS 0x0003014
284#define ACP_SW0_AUDIO0_TX_FRAME_FORMAT 0x0003018
285#define ACP_SW0_AUDIO0_TX_SAMPLEINTERVAL 0x000301C
286#define ACP_SW0_AUDIO0_TX_HCTRL_DP0 0x0003020
287#define ACP_SW0_AUDIO0_TX_HCTRL_DP1 0x0003024
288#define ACP_SW0_AUDIO0_TX_HCTRL_DP2 0x0003028
289#define ACP_SW0_AUDIO0_TX_HCTRL_DP3 0x000302C
290#define ACP_SW0_AUDIO0_TX_OFFSET_DP0 0x0003030
291#define ACP_SW0_AUDIO0_TX_OFFSET_DP1 0x0003034
292#define ACP_SW0_AUDIO0_TX_OFFSET_DP2 0x0003038
293#define ACP_SW0_AUDIO0_TX_OFFSET_DP3 0x000303C
294#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP0 0x0003040
295#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP1 0x0003044
296#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP2 0x0003048
297#define ACP_SW0_AUDIO0_TX_CHANNEL_ENABLE_DP3 0x000304C
298#define ACP_SW0_AUDIO1_TX_EN 0x0003050
299#define ACP_SW0_AUDIO1_TX_EN_STATUS 0x0003054
300#define ACP_SW0_AUDIO1_TX_FRAME_FORMAT 0x0003058
301#define ACP_SW0_AUDIO1_TX_SAMPLEINTERVAL 0x000305C
302#define ACP_SW0_AUDIO1_TX_HCTRL 0x0003060
303#define ACP_SW0_AUDIO1_TX_OFFSET 0x0003064
304#define ACP_SW0_AUDIO1_TX_CHANNEL_ENABLE_DP0 0x0003068
305#define ACP_SW0_AUDIO2_TX_EN 0x000306C
306#define ACP_SW0_AUDIO2_TX_EN_STATUS 0x0003070
307#define ACP_SW0_AUDIO2_TX_FRAME_FORMAT 0x0003074
308#define ACP_SW0_AUDIO2_TX_SAMPLEINTERVAL 0x0003078
309#define ACP_SW0_AUDIO2_TX_HCTRL 0x000307C
310#define ACP_SW0_AUDIO2_TX_OFFSET 0x0003080
311#define ACP_SW0_AUDIO2_TX_CHANNEL_ENABLE_DP0 0x0003084
312#define ACP_SW0_AUDIO0_RX_EN 0x0003088
313#define ACP_SW0_AUDIO0_RX_EN_STATUS 0x000308C
314#define ACP_SW0_AUDIO0_RX_FRAME_FORMAT 0x0003090
315#define ACP_SW0_AUDIO0_RX_SAMPLEINTERVAL 0x0003094
316#define ACP_SW0_AUDIO0_RX_HCTRL_DP0 0x0003098
317#define ACP_SW0_AUDIO0_RX_HCTRL_DP1 0x000309C
318#define ACP_SW0_AUDIO0_RX_HCTRL_DP2 0x0003100
319#define ACP_SW0_AUDIO0_RX_HCTRL_DP3 0x0003104
320#define ACP_SW0_AUDIO0_RX_OFFSET_DP0 0x0003108
321#define ACP_SW0_AUDIO0_RX_OFFSET_DP1 0x000310C
322#define ACP_SW0_AUDIO0_RX_OFFSET_DP2 0x0003110
323#define ACP_SW0_AUDIO0_RX_OFFSET_DP3 0x0003114
324#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP0 0x0003118
325#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP1 0x000311C
326#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP2 0x0003120
327#define ACP_SW0_AUDIO0_RX_CHANNEL_ENABLE_DP3 0x0003124
328#define ACP_SW0_AUDIO1_RX_EN 0x0003128
329#define ACP_SW0_AUDIO1_RX_EN_STATUS 0x000312C
330#define ACP_SW0_AUDIO1_RX_FRAME_FORMAT 0x0003130
331#define ACP_SW0_AUDIO1_RX_SAMPLEINTERVAL 0x0003134
332#define ACP_SW0_AUDIO1_RX_HCTRL 0x0003138
333#define ACP_SW0_AUDIO1_RX_OFFSET 0x000313C
334#define ACP_SW0_AUDIO1_RX_CHANNEL_ENABLE_DP0 0x0003140
335#define ACP_SW0_AUDIO2_RX_EN 0x0003144
336#define ACP_SW0_AUDIO2_RX_EN_STATUS 0x0003148
337#define ACP_SW0_AUDIO2_RX_FRAME_FORMAT 0x000314C
338#define ACP_SW0_AUDIO2_RX_SAMPLEINTERVAL 0x0003150
339#define ACP_SW0_AUDIO2_RX_HCTRL 0x0003154
340#define ACP_SW0_AUDIO2_RX_OFFSET 0x0003158
341#define ACP_SW0_AUDIO2_RX_CHANNEL_ENABLE_DP0 0x000315C
342#define ACP_SW0_BPT_PORT_EN 0x0003160
343#define ACP_SW0_BPT_PORT_EN_STATUS 0x0003164
344#define ACP_SW0_BPT_PORT_FRAME_FORMAT 0x0003168
345#define ACP_SW0_BPT_PORT_SAMPLEINTERVAL 0x000316C
346#define ACP_SW0_BPT_PORT_HCTRL 0x0003170
347#define ACP_SW0_BPT_PORT_OFFSET 0x0003174
348#define ACP_SW0_BPT_PORT_CHANNEL_ENABLE 0x0003178
349#define ACP_SW0_BPT_PORT_FIRST_BYTE_ADDR 0x000317C
350#define ACP_SW0_CLK_RESUME_CTRL 0x0003180
351#define ACP_SW0_CLK_RESUME_DELAY_CNTR 0x0003184
352#define ACP_SW0_BUS_RESET_CTRL 0x0003188
353#define ACP_SW0_PRBS_ERR_STATUS 0x000318C
354#define ACP_SW0_IMM_CMD_UPPER_WORD 0x0003230
355#define ACP_SW0_IMM_CMD_LOWER_QWORD 0x0003234
356#define ACP_SW0_IMM_RESP_UPPER_WORD 0x0003238
357#define ACP_SW0_IMM_RESP_LOWER_QWORD 0x000323C
358#define ACP_SW0_IMM_CMD_STS 0x0003240
359#define ACP_SW0_BRA_BASE_ADDRESS 0x0003244
360#define ACP_SW0_BRA_TRANSFER_SIZE 0x0003248
361#define ACP_SW0_BRA_DMA_BUSY 0x000324C
362#define ACP_SW0_BRA_RESP 0x0003250
363#define ACP_SW0_BRA_RESP_FRAME_ADDR 0x0003254
364#define ACP_SW0_BRA_CURRENT_TRANSFER_SIZE 0x0003258
365#define ACP_SW0_STATECHANGE_STATUS_0TO7 0x000325C
366#define ACP_SW0_STATECHANGE_STATUS_8TO11 0x0003260
367#define ACP_SW0_STATECHANGE_STATUS_MASK_0TO7 0x0003264
368#define ACP_SW0_STATECHANGE_STATUS_MASK_8TO11 0x0003268
369#define ACP_SW0_CLK_FREQUENCY_CTRL 0x000326C
370#define ACP_SW0_ERROR_INTR_MASK 0x0003270
371#define ACP_SW0_PHY_TEST_MODE_DATA_OFF 0x0003274
9f879fb1 372
161bff51 373/* Registers from ACP_P1_AUDIO_BUFFERS block */
96ebccb2
VM
374#define ACP_P1_AUDIO0_RX_RINGBUFADDR 0x0003A00
375#define ACP_P1_AUDIO0_RX_RINGBUFSIZE 0x0003A04
376#define ACP_P1_AUDIO0_RX_LINKPOSITIONCNTR 0x0003A08
377#define ACP_P1_AUDIO0_RX_FIFOADDR 0x0003A0C
378#define ACP_P1_AUDIO0_RX_FIFOSIZE 0x0003A10
379#define ACP_P1_AUDIO0_RX_DMA_SIZE 0x0003A14
380#define ACP_P1_AUDIO0_RX_LINEARPOSITIONCNTR_HIGH 0x0003A18
381#define ACP_P1_AUDIO0_RX_LINEARPOSITIONCNTR_LOW 0x0003A1C
382#define ACP_P1_AUDIO0_RX_INTR_WATERMARK_SIZE 0x0003A20
383#define ACP_P1_AUDIO0_TX_RINGBUFADDR 0x0003A24
384#define ACP_P1_AUDIO0_TX_RINGBUFSIZE 0x0003A28
385#define ACP_P1_AUDIO0_TX_LINKPOSITIONCNTR 0x0003A2C
386#define ACP_P1_AUDIO0_TX_FIFOADDR 0x0003A30
387#define ACP_P1_AUDIO0_TX_FIFOSIZE 0x0003A34
388#define ACP_P1_AUDIO0_TX_DMA_SIZE 0x0003A38
389#define ACP_P1_AUDIO0_TX_LINEARPOSITIONCNTR_HIGH 0x0003A3C
390#define ACP_P1_AUDIO0_TX_LINEARPOSITIONCNTR_LOW 0x0003A40
391#define ACP_P1_AUDIO0_TX_INTR_WATERMARK_SIZE 0x0003A44
392#define ACP_P1_AUDIO1_RX_RINGBUFADDR 0x0003A48
393#define ACP_P1_AUDIO1_RX_RINGBUFSIZE 0x0003A4C
394#define ACP_P1_AUDIO1_RX_LINKPOSITIONCNTR 0x0003A50
395#define ACP_P1_AUDIO1_RX_FIFOADDR 0x0003A54
396#define ACP_P1_AUDIO1_RX_FIFOSIZE 0x0003A58
397#define ACP_P1_AUDIO1_RX_DMA_SIZE 0x0003A5C
398#define ACP_P1_AUDIO1_RX_LINEARPOSITIONCNTR_HIGH 0x0003A60
399#define ACP_P1_AUDIO1_RX_LINEARPOSITIONCNTR_LOW 0x0003A64
400#define ACP_P1_AUDIO1_RX_INTR_WATERMARK_SIZE 0x0003A68
401#define ACP_P1_AUDIO1_TX_RINGBUFADDR 0x0003A6C
402#define ACP_P1_AUDIO1_TX_RINGBUFSIZE 0x0003A70
403#define ACP_P1_AUDIO1_TX_LINKPOSITIONCNTR 0x0003A74
404#define ACP_P1_AUDIO1_TX_FIFOADDR 0x0003A78
405#define ACP_P1_AUDIO1_TX_FIFOSIZE 0x0003A7C
406#define ACP_P1_AUDIO1_TX_DMA_SIZE 0x0003A80
407#define ACP_P1_AUDIO1_TX_LINEARPOSITIONCNTR_HIGH 0x0003A84
408#define ACP_P1_AUDIO1_TX_LINEARPOSITIONCNTR_LOW 0x0003A88
409#define ACP_P1_AUDIO1_TX_INTR_WATERMARK_SIZE 0x0003A8C
410#define ACP_P1_AUDIO2_RX_RINGBUFADDR 0x0003A90
411#define ACP_P1_AUDIO2_RX_RINGBUFSIZE 0x0003A94
412#define ACP_P1_AUDIO2_RX_LINKPOSITIONCNTR 0x0003A98
413#define ACP_P1_AUDIO2_RX_FIFOADDR 0x0003A9C
414#define ACP_P1_AUDIO2_RX_FIFOSIZE 0x0003AA0
415#define ACP_P1_AUDIO2_RX_DMA_SIZE 0x0003AA4
416#define ACP_P1_AUDIO2_RX_LINEARPOSITIONCNTR_HIGH 0x0003AA8
417#define ACP_P1_AUDIO2_RX_LINEARPOSITIONCNTR_LOW 0x0003AAC
418#define ACP_P1_AUDIO2_RX_INTR_WATERMARK_SIZE 0x0003AB0
419#define ACP_P1_AUDIO2_TX_RINGBUFADDR 0x0003AB4
420#define ACP_P1_AUDIO2_TX_RINGBUFSIZE 0x0003AB8
421#define ACP_P1_AUDIO2_TX_LINKPOSITIONCNTR 0x0003ABC
422#define ACP_P1_AUDIO2_TX_FIFOADDR 0x0003AC0
423#define ACP_P1_AUDIO2_TX_FIFOSIZE 0x0003AC4
424#define ACP_P1_AUDIO2_TX_DMA_SIZE 0x0003AC8
425#define ACP_P1_AUDIO2_TX_LINEARPOSITIONCNTR_HIGH 0x0003ACC
426#define ACP_P1_AUDIO2_TX_LINEARPOSITIONCNTR_LOW 0x0003AD0
427#define ACP_P1_AUDIO2_TX_INTR_WATERMARK_SIZE 0x0003AD4
9f879fb1 428
96ebccb2
VM
429/* Registers from ACP_SW1_SWCLK block */
430#define ACP_SW1_EN 0x0003C00
431#define ACP_SW1_EN_STATUS 0x0003C04
432#define ACP_SW1_FRAMESIZE 0x0003C08
433#define ACP_SW1_SSP_COUNTER 0x0003C0C
434#define ACP_SW1_AUDIO1_TX_EN 0x0003C50
435#define ACP_SW1_AUDIO1_TX_EN_STATUS 0x0003C54
436#define ACP_SW1_AUDIO1_TX_FRAME_FORMAT 0x0003C58
437#define ACP_SW1_AUDIO1_TX_SAMPLEINTERVAL 0x0003C5C
438#define ACP_SW1_AUDIO1_TX_HCTRL 0x0003C60
439#define ACP_SW1_AUDIO1_TX_OFFSET 0x0003C64
440#define ACP_SW1_AUDIO1_TX_CHANNEL_ENABLE_DP0 0x0003C68
441#define ACP_SW1_AUDIO1_RX_EN 0x0003D28
442#define ACP_SW1_AUDIO1_RX_EN_STATUS 0x0003D2C
443#define ACP_SW1_AUDIO1_RX_FRAME_FORMAT 0x0003D30
444#define ACP_SW1_AUDIO1_RX_SAMPLEINTERVAL 0x0003D34
445#define ACP_SW1_AUDIO1_RX_HCTRL 0x0003D38
446#define ACP_SW1_AUDIO1_RX_OFFSET 0x0003D3C
447#define ACP_SW1_AUDIO1_RX_CHANNEL_ENABLE_DP0 0x0003D40
448#define ACP_SW1_BPT_PORT_EN 0x0003D60
449#define ACP_SW1_BPT_PORT_EN_STATUS 0x0003D64
450#define ACP_SW1_BPT_PORT_FRAME_FORMAT 0x0003D68
451#define ACP_SW1_BPT_PORT_SAMPLEINTERVAL 0x0003D6C
452#define ACP_SW1_BPT_PORT_HCTRL 0x0003D70
453#define ACP_SW1_BPT_PORT_OFFSET 0x0003D74
454#define ACP_SW1_BPT_PORT_CHANNEL_ENABLE 0x0003D78
455#define ACP_SW1_BPT_PORT_FIRST_BYTE_ADDR 0x0003D7C
456#define ACP_SW1_CLK_RESUME_CTRL 0x0003D80
457#define ACP_SW1_CLK_RESUME_DELAY_CNTR 0x0003D84
458#define ACP_SW1_BUS_RESET_CTRL 0x0003D88
459#define ACP_SW1_PRBS_ERR_STATUS 0x0003D8C
9f879fb1 460
96ebccb2
VM
461/* Registers from ACP_SW1_ACLK block */
462#define ACP_SW1_CORB_BASE_ADDRESS 0x0003E00
463#define ACP_SW1_CORB_WRITE_POINTER 0x0003E04
464#define ACP_SW1_CORB_READ_POINTER 0x0003E08
465#define ACP_SW1_CORB_CONTROL 0x0003E0C
466#define ACP_SW1_CORB_SIZE 0x0003E14
467#define ACP_SW1_RIRB_BASE_ADDRESS 0x0003E18
468#define ACP_SW1_RIRB_WRITE_POINTER 0x0003E1C
469#define ACP_SW1_RIRB_RESPONSE_INTERRUPT_COUNT 0x0003E20
470#define ACP_SW1_RIRB_CONTROL 0x0003E24
471#define ACP_SW1_RIRB_SIZE 0x0003E28
472#define ACP_SW1_RIRB_FIFO_MIN_THDL 0x0003E2C
473#define ACP_SW1_IMM_CMD_UPPER_WORD 0x0003E30
474#define ACP_SW1_IMM_CMD_LOWER_QWORD 0x0003E34
475#define ACP_SW1_IMM_RESP_UPPER_WORD 0x0003E38
476#define ACP_SW1_IMM_RESP_LOWER_QWORD 0x0003E3C
477#define ACP_SW1_IMM_CMD_STS 0x0003E40
478#define ACP_SW1_BRA_BASE_ADDRESS 0x0003E44
479#define ACP_SW1_BRA_TRANSFER_SIZE 0x0003E48
480#define ACP_SW1_BRA_DMA_BUSY 0x0003E4C
481#define ACP_SW1_BRA_RESP 0x0003E50
482#define ACP_SW1_BRA_RESP_FRAME_ADDR 0x0003E54
483#define ACP_SW1_BRA_CURRENT_TRANSFER_SIZE 0x0003E58
484#define ACP_SW1_STATECHANGE_STATUS_0TO7 0x0003E5C
485#define ACP_SW1_STATECHANGE_STATUS_8TO11 0x0003E60
486#define ACP_SW1_STATECHANGE_STATUS_MASK_0TO7 0x0003E64
487#define ACP_SW1_STATECHANGE_STATUS_MASK_8TO11 0x0003E68
488#define ACP_SW1_CLK_FREQUENCY_CTRL 0x0003E6C
489#define ACP_SW1_ERROR_INTR_MASK 0x0003E70
490#define ACP_SW1_PHY_TEST_MODE_DATA_OFF 0x0003E74
161bff51
SSK
491
492/* Registers from ACP_SCRATCH block */
96ebccb2
VM
493#define ACP_SCRATCH_REG_0 0x0010000
494
161bff51 495#endif