acp63_chip_offset_byte.h 30 KB

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