ar6320v2def.h 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829
  1. /*
  2. * Copyright (c) 2013-2018, 2020 The Linux Foundation. All rights reserved.
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for
  5. * any purpose with or without fee is hereby granted, provided that the
  6. * above copyright notice and this permission notice appear in all
  7. * copies.
  8. *
  9. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  10. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  11. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  12. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  13. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  14. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  15. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  16. * PERFORMANCE OF THIS SOFTWARE.
  17. */
  18. #ifndef _AR6320V2DEF_H_
  19. #define _AR6320V2DEF_H_
  20. /* Base Addresses */
  21. #define AR6320V2_RTC_SOC_BASE_ADDRESS 0x00000800
  22. #define AR6320V2_RTC_WMAC_BASE_ADDRESS 0x00001000
  23. #define AR6320V2_MAC_COEX_BASE_ADDRESS 0x0000f000
  24. #define AR6320V2_BT_COEX_BASE_ADDRESS 0x00002000
  25. #define AR6320V2_SOC_PCIE_BASE_ADDRESS 0x00038000
  26. #define AR6320V2_SOC_CORE_BASE_ADDRESS 0x0003a000
  27. #define AR6320V2_WLAN_UART_BASE_ADDRESS 0x0000c000
  28. #define AR6320V2_WLAN_SI_BASE_ADDRESS 0x00010000
  29. #define AR6320V2_WLAN_GPIO_BASE_ADDRESS 0x00005000
  30. #define AR6320V2_WLAN_ANALOG_INTF_BASE_ADDRESS 0x00006000
  31. #define AR6320V2_WLAN_MAC_BASE_ADDRESS 0x00010000
  32. #define AR6320V2_EFUSE_BASE_ADDRESS 0x00024000
  33. #define AR6320V2_FPGA_REG_BASE_ADDRESS 0x00039000
  34. #define AR6320V2_WLAN_UART2_BASE_ADDRESS 0x00054c00
  35. #define AR6320V2_DBI_BASE_ADDRESS 0x0003c000
  36. #define AR6320V2_SCRATCH_3_ADDRESS 0x0028
  37. #define AR6320V2_TARG_DRAM_START 0x00400000
  38. #define AR6320V2_SOC_SYSTEM_SLEEP_OFFSET 0x000000c0
  39. #define AR6320V2_SOC_RESET_CONTROL_OFFSET 0x00000000
  40. #define AR6320V2_SOC_CLOCK_CONTROL_OFFSET 0x00000028
  41. #define AR6320V2_SOC_CLOCK_CONTROL_SI0_CLK_MASK 0x00000001
  42. #define AR6320V2_SOC_RESET_CONTROL_SI0_RST_MASK 0x00000000
  43. #define AR6320V2_WLAN_GPIO_PIN0_ADDRESS 0x00000068
  44. #define AR6320V2_WLAN_GPIO_PIN1_ADDRESS 0x0000006c
  45. #define AR6320V2_WLAN_GPIO_PIN0_CONFIG_MASK 0x00007800
  46. #define AR6320V2_WLAN_GPIO_PIN1_CONFIG_MASK 0x00007800
  47. #define AR6320V2_SOC_CPU_CLOCK_OFFSET 0x00000020
  48. #define AR6320V2_SOC_LPO_CAL_OFFSET 0x000000e0
  49. #define AR6320V2_WLAN_GPIO_PIN10_ADDRESS 0x00000090
  50. #define AR6320V2_WLAN_GPIO_PIN11_ADDRESS 0x00000094
  51. #define AR6320V2_WLAN_GPIO_PIN12_ADDRESS 0x00000098
  52. #define AR6320V2_WLAN_GPIO_PIN13_ADDRESS 0x0000009c
  53. #define AR6320V2_SOC_CPU_CLOCK_STANDARD_LSB 0
  54. #define AR6320V2_SOC_CPU_CLOCK_STANDARD_MASK 0x00000003
  55. #define AR6320V2_SOC_LPO_CAL_ENABLE_LSB 20
  56. #define AR6320V2_SOC_LPO_CAL_ENABLE_MASK 0x00100000
  57. #define AR6320V2_WLAN_SYSTEM_SLEEP_DISABLE_LSB 0
  58. #define AR6320V2_WLAN_SYSTEM_SLEEP_DISABLE_MASK 0x00000001
  59. #define AR6320V2_WLAN_RESET_CONTROL_COLD_RST_MASK 0x00000008
  60. #define AR6320V2_WLAN_RESET_CONTROL_WARM_RST_MASK 0x00000004
  61. #define AR6320V2_SI_CONFIG_BIDIR_OD_DATA_LSB 18
  62. #define AR6320V2_SI_CONFIG_BIDIR_OD_DATA_MASK 0x00040000
  63. #define AR6320V2_SI_CONFIG_I2C_LSB 16
  64. #define AR6320V2_SI_CONFIG_I2C_MASK 0x00010000
  65. #define AR6320V2_SI_CONFIG_POS_SAMPLE_LSB 7
  66. #define AR6320V2_SI_CONFIG_POS_SAMPLE_MASK 0x00000080
  67. #define AR6320V2_SI_CONFIG_INACTIVE_CLK_LSB 4
  68. #define AR6320V2_SI_CONFIG_INACTIVE_CLK_MASK 0x00000010
  69. #define AR6320V2_SI_CONFIG_INACTIVE_DATA_LSB 5
  70. #define AR6320V2_SI_CONFIG_INACTIVE_DATA_MASK 0x00000020
  71. #define AR6320V2_SI_CONFIG_DIVIDER_LSB 0
  72. #define AR6320V2_SI_CONFIG_DIVIDER_MASK 0x0000000f
  73. #define AR6320V2_SI_CONFIG_OFFSET 0x00000000
  74. #define AR6320V2_SI_TX_DATA0_OFFSET 0x00000008
  75. #define AR6320V2_SI_TX_DATA1_OFFSET 0x0000000c
  76. #define AR6320V2_SI_RX_DATA0_OFFSET 0x00000010
  77. #define AR6320V2_SI_RX_DATA1_OFFSET 0x00000014
  78. #define AR6320V2_SI_CS_OFFSET 0x00000004
  79. #define AR6320V2_SI_CS_DONE_ERR_MASK 0x00000400
  80. #define AR6320V2_SI_CS_DONE_INT_MASK 0x00000200
  81. #define AR6320V2_SI_CS_START_LSB 8
  82. #define AR6320V2_SI_CS_START_MASK 0x00000100
  83. #define AR6320V2_SI_CS_RX_CNT_LSB 4
  84. #define AR6320V2_SI_CS_RX_CNT_MASK 0x000000f0
  85. #define AR6320V2_SI_CS_TX_CNT_LSB 0
  86. #define AR6320V2_SI_CS_TX_CNT_MASK 0x0000000f
  87. #define AR6320V2_CE_COUNT 8
  88. #define AR6320V2_SR_WR_INDEX_ADDRESS 0x003c
  89. #define AR6320V2_DST_WATERMARK_ADDRESS 0x0050
  90. #define AR6320V2_RX_MSDU_END_4_FIRST_MSDU_LSB 14
  91. #define AR6320V2_RX_MSDU_END_4_FIRST_MSDU_MASK 0x00004000
  92. #define AR6320V2_RX_MPDU_START_0_RETRY_LSB 14
  93. #define AR6320V2_RX_MPDU_START_0_RETRY_MASK 0x00004000
  94. #define AR6320V2_RX_MPDU_START_0_SEQ_NUM_LSB 16
  95. #define AR6320V2_RX_MPDU_START_0_SEQ_NUM_MASK 0x0fff0000
  96. #define AR6320V2_RX_MPDU_START_2_PN_47_32_LSB 0
  97. #define AR6320V2_RX_MPDU_START_2_PN_47_32_MASK 0x0000ffff
  98. #define AR6320V2_RX_MPDU_START_2_TID_LSB 28
  99. #define AR6320V2_RX_MPDU_START_2_TID_MASK 0xf0000000
  100. #define AR6320V2_RX_MSDU_END_1_EXT_WAPI_PN_63_48_LSB 16
  101. #define AR6320V2_RX_MSDU_END_1_EXT_WAPI_PN_63_48_MASK 0xffff0000
  102. #define AR6320V2_RX_MSDU_END_4_LAST_MSDU_LSB 15
  103. #define AR6320V2_RX_MSDU_END_4_LAST_MSDU_MASK 0x00008000
  104. #define AR6320V2_RX_ATTENTION_0_MCAST_BCAST_LSB 2
  105. #define AR6320V2_RX_ATTENTION_0_MCAST_BCAST_MASK 0x00000004
  106. #define AR6320V2_RX_ATTENTION_0_FRAGMENT_LSB 13
  107. #define AR6320V2_RX_ATTENTION_0_FRAGMENT_MASK 0x00002000
  108. #define AR6320V2_RX_ATTENTION_0_MPDU_LENGTH_ERR_MASK 0x08000000
  109. #define AR6320V2_RX_FRAG_INFO_0_RING2_MORE_COUNT_LSB 16
  110. #define AR6320V2_RX_FRAG_INFO_0_RING2_MORE_COUNT_MASK 0x00ff0000
  111. #define AR6320V2_RX_MSDU_START_0_MSDU_LENGTH_LSB 0
  112. #define AR6320V2_RX_MSDU_START_0_MSDU_LENGTH_MASK 0x00003fff
  113. #define AR6320V2_RX_MSDU_START_2_DECAP_FORMAT_OFFSET 0x00000008
  114. #define AR6320V2_RX_MSDU_START_2_DECAP_FORMAT_LSB 8
  115. #define AR6320V2_RX_MSDU_START_2_DECAP_FORMAT_MASK 0x00000300
  116. #define AR6320V2_RX_MPDU_START_0_ENCRYPTED_LSB 13
  117. #define AR6320V2_RX_MPDU_START_0_ENCRYPTED_MASK 0x00002000
  118. #define AR6320V2_RX_ATTENTION_0_MORE_DATA_MASK 0x00000400
  119. #define AR6320V2_RX_ATTENTION_0_MSDU_DONE_MASK 0x80000000
  120. #define AR6320V2_RX_ATTENTION_0_TCP_UDP_CHKSUM_FAIL_MASK 0x00040000
  121. #define AR6320V2_DST_WR_INDEX_ADDRESS 0x0040
  122. #define AR6320V2_SRC_WATERMARK_ADDRESS 0x004c
  123. #define AR6320V2_SRC_WATERMARK_LOW_MASK 0xffff0000
  124. #define AR6320V2_SRC_WATERMARK_HIGH_MASK 0x0000ffff
  125. #define AR6320V2_DST_WATERMARK_LOW_MASK 0xffff0000
  126. #define AR6320V2_DST_WATERMARK_HIGH_MASK 0x0000ffff
  127. #define AR6320V2_CURRENT_SRRI_ADDRESS 0x0044
  128. #define AR6320V2_CURRENT_DRRI_ADDRESS 0x0048
  129. #define AR6320V2_HOST_IS_SRC_RING_HIGH_WATERMARK_MASK 0x00000002
  130. #define AR6320V2_HOST_IS_SRC_RING_LOW_WATERMARK_MASK 0x00000004
  131. #define AR6320V2_HOST_IS_DST_RING_HIGH_WATERMARK_MASK 0x00000008
  132. #define AR6320V2_HOST_IS_DST_RING_LOW_WATERMARK_MASK 0x00000010
  133. #define AR6320V2_HOST_IS_ADDRESS 0x0030
  134. #define AR6320V2_HOST_IS_COPY_COMPLETE_MASK 0x00000001
  135. #define AR6320V2_HOST_IE_ADDRESS 0x002c
  136. #define AR6320V2_HOST_IE_COPY_COMPLETE_MASK 0x00000001
  137. #define AR6320V2_SR_BA_ADDRESS 0x0000
  138. #define AR6320V2_SR_SIZE_ADDRESS 0x0004
  139. #define AR6320V2_DR_BA_ADDRESS 0x0008
  140. #define AR6320V2_DR_SIZE_ADDRESS 0x000c
  141. #define AR6320V2_MISC_IE_ADDRESS 0x0034
  142. #define AR6320V2_MISC_IS_AXI_ERR_MASK 0x00000400
  143. #define AR6320V2_MISC_IS_DST_ADDR_ERR_MASK 0x00000200
  144. #define AR6320V2_MISC_IS_SRC_LEN_ERR_MASK 0x00000100
  145. #define AR6320V2_MISC_IS_DST_MAX_LEN_VIO_MASK 0x00000080
  146. #define AR6320V2_MISC_IS_DST_RING_OVERFLOW_MASK 0x00000040
  147. #define AR6320V2_MISC_IS_SRC_RING_OVERFLOW_MASK 0x00000020
  148. #define AR6320V2_SRC_WATERMARK_LOW_LSB 16
  149. #define AR6320V2_SRC_WATERMARK_HIGH_LSB 0
  150. #define AR6320V2_DST_WATERMARK_LOW_LSB 16
  151. #define AR6320V2_DST_WATERMARK_HIGH_LSB 0
  152. #define AR6320V2_SOC_GLOBAL_RESET_ADDRESS 0x0008
  153. #define AR6320V2_RTC_STATE_ADDRESS 0x0000
  154. #define AR6320V2_RTC_STATE_COLD_RESET_MASK 0x00002000
  155. #define AR6320V2_RTC_STATE_V_MASK 0x00000007
  156. #define AR6320V2_RTC_STATE_V_LSB 0
  157. #define AR6320V2_RTC_STATE_V_ON 3
  158. #define AR6320V2_FW_IND_EVENT_PENDING 1
  159. #define AR6320V2_FW_IND_INITIALIZED 2
  160. #define AR6320V2_CPU_INTR_ADDRESS 0x0010
  161. #define AR6320V2_SOC_LF_TIMER_CONTROL0_ADDRESS 0x00000050
  162. #define AR6320V2_SOC_LF_TIMER_CONTROL0_ENABLE_MASK 0x00000004
  163. #define AR6320V2_SOC_LF_TIMER_STATUS0_ADDRESS 0x00000054
  164. #define AR6320V2_SOC_RESET_CONTROL_ADDRESS 0x00000000
  165. #define AR6320V2_SOC_RESET_CONTROL_CPU_WARM_RST_MASK 0x00000040
  166. #define AR6320V2_CORE_CTRL_ADDRESS 0x0000
  167. #define AR6320V2_CORE_CTRL_CPU_INTR_MASK 0x00002000
  168. #define AR6320V2_LOCAL_SCRATCH_OFFSET 0x000000c0
  169. #define AR6320V2_CLOCK_GPIO_OFFSET 0xffffffff
  170. #define AR6320V2_CLOCK_GPIO_BT_CLK_OUT_EN_LSB 0
  171. #define AR6320V2_CLOCK_GPIO_BT_CLK_OUT_EN_MASK 0
  172. #define AR6320V2_SOC_CHIP_ID_ADDRESS 0x000000f0
  173. #define AR6320V2_SOC_CHIP_ID_VERSION_MASK 0xfffc0000
  174. #define AR6320V2_SOC_CHIP_ID_VERSION_LSB 18
  175. #define AR6320V2_SOC_CHIP_ID_REVISION_MASK 0x00000f00
  176. #define AR6320V2_SOC_CHIP_ID_REVISION_LSB 8
  177. #if defined(HIF_SDIO)
  178. #define AR6320V2_FW_IND_HELPER 4
  179. #endif
  180. #if defined(HIF_PCI) || defined(HIF_SNOC) || defined(HIF_AHB) || \
  181. defined(HIF_IPCI)
  182. #define AR6320V2_CE_WRAPPER_BASE_ADDRESS 0x00034000
  183. #define AR6320V2_CE0_BASE_ADDRESS 0x00034400
  184. #define AR6320V2_CE1_BASE_ADDRESS 0x00034800
  185. #define AR6320V2_CE2_BASE_ADDRESS 0x00034c00
  186. #define AR6320V2_CE3_BASE_ADDRESS 0x00035000
  187. #define AR6320V2_CE4_BASE_ADDRESS 0x00035400
  188. #define AR6320V2_CE5_BASE_ADDRESS 0x00035800
  189. #define AR6320V2_CE6_BASE_ADDRESS 0x00035c00
  190. #define AR6320V2_CE7_BASE_ADDRESS 0x00036000
  191. #define AR6320V2_WLAN_ANALOG_INTF_PCIE_BASE_ADDRESS 0x00007800
  192. #define AR6320V2_CE_CTRL1_ADDRESS 0x0010
  193. #define AR6320V2_CE_CTRL1_DMAX_LENGTH_MASK 0x0000ffff
  194. #define AR6320V2_CE_WRAPPER_INTERRUPT_SUMMARY_ADDRESS 0x0000
  195. #define AR6320V2_CE_WRAPPER_INTERRUPT_SUMMARY_HOST_MSI_MASK 0x0000ff00
  196. #define AR6320V2_CE_WRAPPER_INTERRUPT_SUMMARY_HOST_MSI_LSB 8
  197. #define AR6320V2_CE_CTRL1_DMAX_LENGTH_LSB 0
  198. #define AR6320V2_CE_CTRL1_SRC_RING_BYTE_SWAP_EN_MASK 0x00010000
  199. #define AR6320V2_CE_CTRL1_DST_RING_BYTE_SWAP_EN_MASK 0x00020000
  200. #define AR6320V2_CE_CTRL1_SRC_RING_BYTE_SWAP_EN_LSB 16
  201. #define AR6320V2_CE_CTRL1_DST_RING_BYTE_SWAP_EN_LSB 17
  202. #define AR6320V2_SOC_RESET_CONTROL_PCIE_RST_SHORT_OVRD_MASK 0x00000020
  203. #define AR6320V2_SOC_RESET_CONTROL_PCIE_RST_SHORT_OVRD_LSB 5
  204. #define AR6320V2_PCIE_SOC_WAKE_RESET 0x00000000
  205. #define AR6320V2_PCIE_SOC_WAKE_ADDRESS 0x0004
  206. #define AR6320V2_PCIE_SOC_WAKE_V_MASK 0x00000001
  207. #define AR6320V2_MUX_ID_MASK 0x0000
  208. #define AR6320V2_TRANSACTION_ID_MASK 0x3fff
  209. #define AR6320V2_PCIE_LOCAL_BASE_ADDRESS 0x80000
  210. #define AR6320V2_FW_IND_HELPER 4
  211. #define AR6320V2_PCIE_INTR_ENABLE_ADDRESS 0x0008
  212. #define AR6320V2_PCIE_INTR_CLR_ADDRESS 0x0014
  213. #define AR6320V2_PCIE_INTR_FIRMWARE_MASK 0x00000400
  214. #define AR6320V2_PCIE_INTR_CE0_MASK 0x00000800
  215. #define AR6320V2_PCIE_INTR_CE_MASK_ALL 0x0007f800
  216. #define AR6320V2_PCIE_INTR_CAUSE_ADDRESS 0x000c
  217. #define AR6320V2_SOC_RESET_CONTROL_CE_RST_MASK 0x00000001
  218. #define AR6320V2_SOC_POWER_REG_OFFSET 0x0000010c
  219. /* Copy Engine Debug */
  220. #define AR6320V2_WLAN_DEBUG_INPUT_SEL_OFFSET 0x0000010c
  221. #define AR6320V2_WLAN_DEBUG_INPUT_SEL_SRC_MSB 3
  222. #define AR6320V2_WLAN_DEBUG_INPUT_SEL_SRC_LSB 0
  223. #define AR6320V2_WLAN_DEBUG_INPUT_SEL_SRC_MASK 0x0000000f
  224. #define AR6320V2_WLAN_DEBUG_CONTROL_OFFSET 0x00000108
  225. #define AR6320V2_WLAN_DEBUG_CONTROL_ENABLE_MSB 0
  226. #define AR6320V2_WLAN_DEBUG_CONTROL_ENABLE_LSB 0
  227. #define AR6320V2_WLAN_DEBUG_CONTROL_ENABLE_MASK 0x00000001
  228. #define AR6320V2_WLAN_DEBUG_OUT_OFFSET 0x00000110
  229. #define AR6320V2_WLAN_DEBUG_OUT_DATA_MSB 19
  230. #define AR6320V2_WLAN_DEBUG_OUT_DATA_LSB 0
  231. #define AR6320V2_WLAN_DEBUG_OUT_DATA_MASK 0x000fffff
  232. #define AR6320V2_AMBA_DEBUG_BUS_OFFSET 0x0000011c
  233. #define AR6320V2_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_MSB 13
  234. #define AR6320V2_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_LSB 8
  235. #define AR6320V2_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_MASK 0x00003f00
  236. #define AR6320V2_AMBA_DEBUG_BUS_SEL_MSB 4
  237. #define AR6320V2_AMBA_DEBUG_BUS_SEL_LSB 0
  238. #define AR6320V2_AMBA_DEBUG_BUS_SEL_MASK 0x0000001f
  239. #define AR6320V2_CE_WRAPPER_DEBUG_OFFSET 0x0008
  240. #define AR6320V2_CE_WRAPPER_DEBUG_SEL_MSB 5
  241. #define AR6320V2_CE_WRAPPER_DEBUG_SEL_LSB 0
  242. #define AR6320V2_CE_WRAPPER_DEBUG_SEL_MASK 0x0000003f
  243. #define AR6320V2_CE_DEBUG_OFFSET 0x0054
  244. #define AR6320V2_CE_DEBUG_SEL_MSB 5
  245. #define AR6320V2_CE_DEBUG_SEL_LSB 0
  246. #define AR6320V2_CE_DEBUG_SEL_MASK 0x0000003f
  247. /* End */
  248. /* PLL start */
  249. #define AR6320V2_EFUSE_OFFSET 0x0000032c
  250. #define AR6320V2_EFUSE_XTAL_SEL_MSB 10
  251. #define AR6320V2_EFUSE_XTAL_SEL_LSB 8
  252. #define AR6320V2_EFUSE_XTAL_SEL_MASK 0x00000700
  253. #define AR6320V2_BB_PLL_CONFIG_OFFSET 0x000002f4
  254. #define AR6320V2_BB_PLL_CONFIG_OUTDIV_MSB 20
  255. #define AR6320V2_BB_PLL_CONFIG_OUTDIV_LSB 18
  256. #define AR6320V2_BB_PLL_CONFIG_OUTDIV_MASK 0x001c0000
  257. #define AR6320V2_BB_PLL_CONFIG_FRAC_MSB 17
  258. #define AR6320V2_BB_PLL_CONFIG_FRAC_LSB 0
  259. #define AR6320V2_BB_PLL_CONFIG_FRAC_MASK 0x0003ffff
  260. #define AR6320V2_WLAN_PLL_SETTLE_TIME_MSB 10
  261. #define AR6320V2_WLAN_PLL_SETTLE_TIME_LSB 0
  262. #define AR6320V2_WLAN_PLL_SETTLE_TIME_MASK 0x000007ff
  263. #define AR6320V2_WLAN_PLL_SETTLE_OFFSET 0x0018
  264. #define AR6320V2_WLAN_PLL_SETTLE_SW_MASK 0x000007ff
  265. #define AR6320V2_WLAN_PLL_SETTLE_RSTMASK 0xffffffff
  266. #define AR6320V2_WLAN_PLL_SETTLE_RESET 0x00000400
  267. #define AR6320V2_WLAN_PLL_CONTROL_NOPWD_MSB 18
  268. #define AR6320V2_WLAN_PLL_CONTROL_NOPWD_LSB 18
  269. #define AR6320V2_WLAN_PLL_CONTROL_NOPWD_MASK 0x00040000
  270. #define AR6320V2_WLAN_PLL_CONTROL_BYPASS_MSB 16
  271. #define AR6320V2_WLAN_PLL_CONTROL_BYPASS_LSB 16
  272. #define AR6320V2_WLAN_PLL_CONTROL_BYPASS_MASK 0x00010000
  273. #define AR6320V2_WLAN_PLL_CONTROL_BYPASS_RESET 0x1
  274. #define AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_MSB 15
  275. #define AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_LSB 14
  276. #define AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_MASK 0x0000c000
  277. #define AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_RESET 0x0
  278. #define AR6320V2_WLAN_PLL_CONTROL_REFDIV_MSB 13
  279. #define AR6320V2_WLAN_PLL_CONTROL_REFDIV_LSB 10
  280. #define AR6320V2_WLAN_PLL_CONTROL_REFDIV_MASK 0x00003c00
  281. #define AR6320V2_WLAN_PLL_CONTROL_REFDIV_RESET 0x0
  282. #define AR6320V2_WLAN_PLL_CONTROL_DIV_MSB 9
  283. #define AR6320V2_WLAN_PLL_CONTROL_DIV_LSB 0
  284. #define AR6320V2_WLAN_PLL_CONTROL_DIV_MASK 0x000003ff
  285. #define AR6320V2_WLAN_PLL_CONTROL_DIV_RESET 0x11
  286. #define AR6320V2_WLAN_PLL_CONTROL_OFFSET 0x0014
  287. #define AR6320V2_WLAN_PLL_CONTROL_SW_MASK 0x001fffff
  288. #define AR6320V2_WLAN_PLL_CONTROL_RSTMASK 0xffffffff
  289. #define AR6320V2_WLAN_PLL_CONTROL_RESET 0x00010011
  290. #define AR6320V2_SOC_CORE_CLK_CTRL_OFFSET 0x00000114
  291. #define AR6320V2_SOC_CORE_CLK_CTRL_DIV_MSB 2
  292. #define AR6320V2_SOC_CORE_CLK_CTRL_DIV_LSB 0
  293. #define AR6320V2_SOC_CORE_CLK_CTRL_DIV_MASK 0x00000007
  294. #define AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_MSB 5
  295. #define AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_LSB 5
  296. #define AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_MASK 0x00000020
  297. #define AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_RESET 0x0
  298. #define AR6320V2_RTC_SYNC_STATUS_OFFSET 0x0244
  299. #define AR6320V2_SOC_CPU_CLOCK_OFFSET 0x00000020
  300. #define AR6320V2_SOC_CPU_CLOCK_STANDARD_MSB 1
  301. #define AR6320V2_SOC_CPU_CLOCK_STANDARD_LSB 0
  302. #define AR6320V2_SOC_CPU_CLOCK_STANDARD_MASK 0x00000003
  303. /* PLL end */
  304. #define AR6320V2_PCIE_INTR_CE_MASK(n) \
  305. (AR6320V2_PCIE_INTR_CE0_MASK << (n))
  306. #endif
  307. #define AR6320V2_DRAM_BASE_ADDRESS AR6320V2_TARG_DRAM_START
  308. #define AR6320V2_FW_INDICATOR_ADDRESS \
  309. (AR6320V2_SOC_CORE_BASE_ADDRESS + AR6320V2_SCRATCH_3_ADDRESS)
  310. #define AR6320V2_SYSTEM_SLEEP_OFFSET AR6320V2_SOC_SYSTEM_SLEEP_OFFSET
  311. #define AR6320V2_WLAN_SYSTEM_SLEEP_OFFSET 0x002c
  312. #define AR6320V2_WLAN_RESET_CONTROL_OFFSET AR6320V2_SOC_RESET_CONTROL_OFFSET
  313. #define AR6320V2_CLOCK_CONTROL_OFFSET AR6320V2_SOC_CLOCK_CONTROL_OFFSET
  314. #define AR6320V2_CLOCK_CONTROL_SI0_CLK_MASK \
  315. AR6320V2_SOC_CLOCK_CONTROL_SI0_CLK_MASK
  316. #define AR6320V2_RESET_CONTROL_MBOX_RST_MASK 0x00000004
  317. #define AR6320V2_RESET_CONTROL_SI0_RST_MASK \
  318. AR6320V2_SOC_RESET_CONTROL_SI0_RST_MASK
  319. #define AR6320V2_GPIO_BASE_ADDRESS AR6320V2_WLAN_GPIO_BASE_ADDRESS
  320. #define AR6320V2_GPIO_PIN0_OFFSET AR6320V2_WLAN_GPIO_PIN0_ADDRESS
  321. #define AR6320V2_GPIO_PIN1_OFFSET AR6320V2_WLAN_GPIO_PIN1_ADDRESS
  322. #define AR6320V2_GPIO_PIN0_CONFIG_MASK AR6320V2_WLAN_GPIO_PIN0_CONFIG_MASK
  323. #define AR6320V2_GPIO_PIN1_CONFIG_MASK AR6320V2_WLAN_GPIO_PIN1_CONFIG_MASK
  324. #define AR6320V2_SI_BASE_ADDRESS 0x00050000
  325. #define AR6320V2_CPU_CLOCK_OFFSET AR6320V2_SOC_CPU_CLOCK_OFFSET
  326. #define AR6320V2_LPO_CAL_OFFSET AR6320V2_SOC_LPO_CAL_OFFSET
  327. #define AR6320V2_GPIO_PIN10_OFFSET AR6320V2_WLAN_GPIO_PIN10_ADDRESS
  328. #define AR6320V2_GPIO_PIN11_OFFSET AR6320V2_WLAN_GPIO_PIN11_ADDRESS
  329. #define AR6320V2_GPIO_PIN12_OFFSET AR6320V2_WLAN_GPIO_PIN12_ADDRESS
  330. #define AR6320V2_GPIO_PIN13_OFFSET AR6320V2_WLAN_GPIO_PIN13_ADDRESS
  331. #define AR6320V2_CPU_CLOCK_STANDARD_LSB AR6320V2_SOC_CPU_CLOCK_STANDARD_LSB
  332. #define AR6320V2_CPU_CLOCK_STANDARD_MASK AR6320V2_SOC_CPU_CLOCK_STANDARD_MASK
  333. #define AR6320V2_LPO_CAL_ENABLE_LSB AR6320V2_SOC_LPO_CAL_ENABLE_LSB
  334. #define AR6320V2_LPO_CAL_ENABLE_MASK AR6320V2_SOC_LPO_CAL_ENABLE_MASK
  335. #define AR6320V2_ANALOG_INTF_BASE_ADDRESS \
  336. AR6320V2_WLAN_ANALOG_INTF_BASE_ADDRESS
  337. #define AR6320V2_MBOX_BASE_ADDRESS 0x00008000
  338. #define AR6320V2_INT_STATUS_ENABLE_ERROR_LSB 7
  339. #define AR6320V2_INT_STATUS_ENABLE_ERROR_MASK 0x00000080
  340. #define AR6320V2_INT_STATUS_ENABLE_CPU_LSB 6
  341. #define AR6320V2_INT_STATUS_ENABLE_CPU_MASK 0x00000040
  342. #define AR6320V2_INT_STATUS_ENABLE_COUNTER_LSB 4
  343. #define AR6320V2_INT_STATUS_ENABLE_COUNTER_MASK 0x00000010
  344. #define AR6320V2_INT_STATUS_ENABLE_MBOX_DATA_LSB 0
  345. #define AR6320V2_INT_STATUS_ENABLE_MBOX_DATA_MASK 0x0000000f
  346. #define AR6320V2_ERROR_STATUS_ENABLE_RX_UNDERFLOW_LSB 17
  347. #define AR6320V2_ERROR_STATUS_ENABLE_RX_UNDERFLOW_MASK 0x00020000
  348. #define AR6320V2_ERROR_STATUS_ENABLE_TX_OVERFLOW_LSB 16
  349. #define AR6320V2_ERROR_STATUS_ENABLE_TX_OVERFLOW_MASK 0x00010000
  350. #define AR6320V2_COUNTER_INT_STATUS_ENABLE_BIT_LSB 24
  351. #define AR6320V2_COUNTER_INT_STATUS_ENABLE_BIT_MASK 0xff000000
  352. #define AR6320V2_INT_STATUS_ENABLE_ADDRESS 0x0828
  353. #define AR6320V2_CPU_INT_STATUS_ENABLE_BIT_LSB 8
  354. #define AR6320V2_CPU_INT_STATUS_ENABLE_BIT_MASK 0x0000ff00
  355. #define AR6320V2_HOST_INT_STATUS_ADDRESS 0x0800
  356. #define AR6320V2_CPU_INT_STATUS_ADDRESS 0x0801
  357. #define AR6320V2_ERROR_INT_STATUS_ADDRESS 0x0802
  358. #define AR6320V2_ERROR_INT_STATUS_WAKEUP_MASK 0x00040000
  359. #define AR6320V2_ERROR_INT_STATUS_WAKEUP_LSB 18
  360. #define AR6320V2_ERROR_INT_STATUS_RX_UNDERFLOW_MASK 0x00020000
  361. #define AR6320V2_ERROR_INT_STATUS_RX_UNDERFLOW_LSB 17
  362. #define AR6320V2_ERROR_INT_STATUS_TX_OVERFLOW_MASK 0x00010000
  363. #define AR6320V2_ERROR_INT_STATUS_TX_OVERFLOW_LSB 16
  364. #define AR6320V2_COUNT_DEC_ADDRESS 0x0840
  365. #define AR6320V2_HOST_INT_STATUS_CPU_MASK 0x00000040
  366. #define AR6320V2_HOST_INT_STATUS_CPU_LSB 6
  367. #define AR6320V2_HOST_INT_STATUS_ERROR_MASK 0x00000080
  368. #define AR6320V2_HOST_INT_STATUS_ERROR_LSB 7
  369. #define AR6320V2_HOST_INT_STATUS_COUNTER_MASK 0x00000010
  370. #define AR6320V2_HOST_INT_STATUS_COUNTER_LSB 4
  371. #define AR6320V2_RX_LOOKAHEAD_VALID_ADDRESS 0x0805
  372. #define AR6320V2_WINDOW_DATA_ADDRESS 0x0874
  373. #define AR6320V2_WINDOW_READ_ADDR_ADDRESS 0x087c
  374. #define AR6320V2_WINDOW_WRITE_ADDR_ADDRESS 0x0878
  375. #define AR6320V2_HOST_INT_STATUS_MBOX_DATA_MASK 0x0f
  376. #define AR6320V2_HOST_INT_STATUS_MBOX_DATA_LSB 0
  377. struct targetdef_s ar6320v2_targetdef = {
  378. .d_RTC_SOC_BASE_ADDRESS = AR6320V2_RTC_SOC_BASE_ADDRESS,
  379. .d_RTC_WMAC_BASE_ADDRESS = AR6320V2_RTC_WMAC_BASE_ADDRESS,
  380. .d_SYSTEM_SLEEP_OFFSET = AR6320V2_WLAN_SYSTEM_SLEEP_OFFSET,
  381. .d_WLAN_SYSTEM_SLEEP_OFFSET = AR6320V2_WLAN_SYSTEM_SLEEP_OFFSET,
  382. .d_WLAN_SYSTEM_SLEEP_DISABLE_LSB =
  383. AR6320V2_WLAN_SYSTEM_SLEEP_DISABLE_LSB,
  384. .d_WLAN_SYSTEM_SLEEP_DISABLE_MASK =
  385. AR6320V2_WLAN_SYSTEM_SLEEP_DISABLE_MASK,
  386. .d_CLOCK_CONTROL_OFFSET = AR6320V2_CLOCK_CONTROL_OFFSET,
  387. .d_CLOCK_CONTROL_SI0_CLK_MASK = AR6320V2_CLOCK_CONTROL_SI0_CLK_MASK,
  388. .d_RESET_CONTROL_OFFSET = AR6320V2_SOC_RESET_CONTROL_OFFSET,
  389. .d_RESET_CONTROL_MBOX_RST_MASK = AR6320V2_RESET_CONTROL_MBOX_RST_MASK,
  390. .d_RESET_CONTROL_SI0_RST_MASK = AR6320V2_RESET_CONTROL_SI0_RST_MASK,
  391. .d_WLAN_RESET_CONTROL_OFFSET = AR6320V2_WLAN_RESET_CONTROL_OFFSET,
  392. .d_WLAN_RESET_CONTROL_COLD_RST_MASK =
  393. AR6320V2_WLAN_RESET_CONTROL_COLD_RST_MASK,
  394. .d_WLAN_RESET_CONTROL_WARM_RST_MASK =
  395. AR6320V2_WLAN_RESET_CONTROL_WARM_RST_MASK,
  396. .d_GPIO_BASE_ADDRESS = AR6320V2_GPIO_BASE_ADDRESS,
  397. .d_GPIO_PIN0_OFFSET = AR6320V2_GPIO_PIN0_OFFSET,
  398. .d_GPIO_PIN1_OFFSET = AR6320V2_GPIO_PIN1_OFFSET,
  399. .d_GPIO_PIN0_CONFIG_MASK = AR6320V2_GPIO_PIN0_CONFIG_MASK,
  400. .d_GPIO_PIN1_CONFIG_MASK = AR6320V2_GPIO_PIN1_CONFIG_MASK,
  401. .d_SI_CONFIG_BIDIR_OD_DATA_LSB = AR6320V2_SI_CONFIG_BIDIR_OD_DATA_LSB,
  402. .d_SI_CONFIG_BIDIR_OD_DATA_MASK =
  403. AR6320V2_SI_CONFIG_BIDIR_OD_DATA_MASK,
  404. .d_SI_CONFIG_I2C_LSB = AR6320V2_SI_CONFIG_I2C_LSB,
  405. .d_SI_CONFIG_I2C_MASK = AR6320V2_SI_CONFIG_I2C_MASK,
  406. .d_SI_CONFIG_POS_SAMPLE_LSB = AR6320V2_SI_CONFIG_POS_SAMPLE_LSB,
  407. .d_SI_CONFIG_POS_SAMPLE_MASK = AR6320V2_SI_CONFIG_POS_SAMPLE_MASK,
  408. .d_SI_CONFIG_INACTIVE_CLK_LSB = AR6320V2_SI_CONFIG_INACTIVE_CLK_LSB,
  409. .d_SI_CONFIG_INACTIVE_CLK_MASK = AR6320V2_SI_CONFIG_INACTIVE_CLK_MASK,
  410. .d_SI_CONFIG_INACTIVE_DATA_LSB = AR6320V2_SI_CONFIG_INACTIVE_DATA_LSB,
  411. .d_SI_CONFIG_INACTIVE_DATA_MASK =
  412. AR6320V2_SI_CONFIG_INACTIVE_DATA_MASK,
  413. .d_SI_CONFIG_DIVIDER_LSB = AR6320V2_SI_CONFIG_DIVIDER_LSB,
  414. .d_SI_CONFIG_DIVIDER_MASK = AR6320V2_SI_CONFIG_DIVIDER_MASK,
  415. .d_SI_BASE_ADDRESS = AR6320V2_SI_BASE_ADDRESS,
  416. .d_SI_CONFIG_OFFSET = AR6320V2_SI_CONFIG_OFFSET,
  417. .d_SI_TX_DATA0_OFFSET = AR6320V2_SI_TX_DATA0_OFFSET,
  418. .d_SI_TX_DATA1_OFFSET = AR6320V2_SI_TX_DATA1_OFFSET,
  419. .d_SI_RX_DATA0_OFFSET = AR6320V2_SI_RX_DATA0_OFFSET,
  420. .d_SI_RX_DATA1_OFFSET = AR6320V2_SI_RX_DATA1_OFFSET,
  421. .d_SI_CS_OFFSET = AR6320V2_SI_CS_OFFSET,
  422. .d_SI_CS_DONE_ERR_MASK = AR6320V2_SI_CS_DONE_ERR_MASK,
  423. .d_SI_CS_DONE_INT_MASK = AR6320V2_SI_CS_DONE_INT_MASK,
  424. .d_SI_CS_START_LSB = AR6320V2_SI_CS_START_LSB,
  425. .d_SI_CS_START_MASK = AR6320V2_SI_CS_START_MASK,
  426. .d_SI_CS_RX_CNT_LSB = AR6320V2_SI_CS_RX_CNT_LSB,
  427. .d_SI_CS_RX_CNT_MASK = AR6320V2_SI_CS_RX_CNT_MASK,
  428. .d_SI_CS_TX_CNT_LSB = AR6320V2_SI_CS_TX_CNT_LSB,
  429. .d_SI_CS_TX_CNT_MASK = AR6320V2_SI_CS_TX_CNT_MASK,
  430. .d_BOARD_DATA_SZ = AR6320_BOARD_DATA_SZ,
  431. .d_BOARD_EXT_DATA_SZ = AR6320_BOARD_EXT_DATA_SZ,
  432. .d_MBOX_BASE_ADDRESS = AR6320V2_MBOX_BASE_ADDRESS,
  433. .d_LOCAL_SCRATCH_OFFSET = AR6320V2_LOCAL_SCRATCH_OFFSET,
  434. .d_CPU_CLOCK_OFFSET = AR6320V2_CPU_CLOCK_OFFSET,
  435. .d_LPO_CAL_OFFSET = AR6320V2_LPO_CAL_OFFSET,
  436. .d_GPIO_PIN10_OFFSET = AR6320V2_GPIO_PIN10_OFFSET,
  437. .d_GPIO_PIN11_OFFSET = AR6320V2_GPIO_PIN11_OFFSET,
  438. .d_GPIO_PIN12_OFFSET = AR6320V2_GPIO_PIN12_OFFSET,
  439. .d_GPIO_PIN13_OFFSET = AR6320V2_GPIO_PIN13_OFFSET,
  440. .d_CLOCK_GPIO_OFFSET = AR6320V2_CLOCK_GPIO_OFFSET,
  441. .d_CPU_CLOCK_STANDARD_LSB = AR6320V2_CPU_CLOCK_STANDARD_LSB,
  442. .d_CPU_CLOCK_STANDARD_MASK = AR6320V2_CPU_CLOCK_STANDARD_MASK,
  443. .d_LPO_CAL_ENABLE_LSB = AR6320V2_LPO_CAL_ENABLE_LSB,
  444. .d_LPO_CAL_ENABLE_MASK = AR6320V2_LPO_CAL_ENABLE_MASK,
  445. .d_CLOCK_GPIO_BT_CLK_OUT_EN_LSB =
  446. AR6320V2_CLOCK_GPIO_BT_CLK_OUT_EN_LSB,
  447. .d_CLOCK_GPIO_BT_CLK_OUT_EN_MASK =
  448. AR6320V2_CLOCK_GPIO_BT_CLK_OUT_EN_MASK,
  449. .d_ANALOG_INTF_BASE_ADDRESS = AR6320V2_ANALOG_INTF_BASE_ADDRESS,
  450. .d_WLAN_MAC_BASE_ADDRESS = AR6320V2_WLAN_MAC_BASE_ADDRESS,
  451. .d_FW_INDICATOR_ADDRESS = AR6320V2_FW_INDICATOR_ADDRESS,
  452. .d_DRAM_BASE_ADDRESS = AR6320V2_DRAM_BASE_ADDRESS,
  453. .d_SOC_CORE_BASE_ADDRESS = AR6320V2_SOC_CORE_BASE_ADDRESS,
  454. .d_CORE_CTRL_ADDRESS = AR6320V2_CORE_CTRL_ADDRESS,
  455. #if defined(HIF_PCI) || defined(HIF_SNOC) || defined(HIF_AHB) || \
  456. defined(HIF_IPCI)
  457. .d_MSI_NUM_REQUEST = MSI_NUM_REQUEST,
  458. .d_MSI_ASSIGN_FW = MSI_ASSIGN_FW,
  459. #endif
  460. .d_CORE_CTRL_CPU_INTR_MASK = AR6320V2_CORE_CTRL_CPU_INTR_MASK,
  461. .d_SR_WR_INDEX_ADDRESS = AR6320V2_SR_WR_INDEX_ADDRESS,
  462. .d_DST_WATERMARK_ADDRESS = AR6320V2_DST_WATERMARK_ADDRESS,
  463. /* htt_rx.c */
  464. .d_RX_MSDU_END_4_FIRST_MSDU_MASK =
  465. AR6320V2_RX_MSDU_END_4_FIRST_MSDU_MASK,
  466. .d_RX_MSDU_END_4_FIRST_MSDU_LSB =
  467. AR6320V2_RX_MSDU_END_4_FIRST_MSDU_LSB,
  468. .d_RX_MPDU_START_0_RETRY_MASK =
  469. AR6320V2_RX_MPDU_START_0_RETRY_MASK,
  470. .d_RX_MPDU_START_0_SEQ_NUM_MASK =
  471. AR6320V2_RX_MPDU_START_0_SEQ_NUM_MASK,
  472. .d_RX_MPDU_START_0_SEQ_NUM_MASK =
  473. AR6320V2_RX_MPDU_START_0_SEQ_NUM_MASK,
  474. .d_RX_MPDU_START_0_SEQ_NUM_LSB = AR6320V2_RX_MPDU_START_0_SEQ_NUM_LSB,
  475. .d_RX_MPDU_START_2_PN_47_32_LSB =
  476. AR6320V2_RX_MPDU_START_2_PN_47_32_LSB,
  477. .d_RX_MPDU_START_2_PN_47_32_MASK =
  478. AR6320V2_RX_MPDU_START_2_PN_47_32_MASK,
  479. .d_RX_MPDU_START_2_TID_LSB =
  480. AR6320V2_RX_MPDU_START_2_TID_LSB,
  481. .d_RX_MPDU_START_2_TID_MASK =
  482. AR6320V2_RX_MPDU_START_2_TID_MASK,
  483. .d_RX_MSDU_END_1_EXT_WAPI_PN_63_48_MASK =
  484. AR6320V2_RX_MSDU_END_1_EXT_WAPI_PN_63_48_MASK,
  485. .d_RX_MSDU_END_1_EXT_WAPI_PN_63_48_LSB =
  486. AR6320V2_RX_MSDU_END_1_EXT_WAPI_PN_63_48_LSB,
  487. .d_RX_MSDU_END_4_LAST_MSDU_MASK =
  488. AR6320V2_RX_MSDU_END_4_LAST_MSDU_MASK,
  489. .d_RX_MSDU_END_4_LAST_MSDU_LSB = AR6320V2_RX_MSDU_END_4_LAST_MSDU_LSB,
  490. .d_RX_ATTENTION_0_MCAST_BCAST_MASK =
  491. AR6320V2_RX_ATTENTION_0_MCAST_BCAST_MASK,
  492. .d_RX_ATTENTION_0_MCAST_BCAST_LSB =
  493. AR6320V2_RX_ATTENTION_0_MCAST_BCAST_LSB,
  494. .d_RX_ATTENTION_0_FRAGMENT_MASK =
  495. AR6320V2_RX_ATTENTION_0_FRAGMENT_MASK,
  496. .d_RX_ATTENTION_0_FRAGMENT_LSB = AR6320V2_RX_ATTENTION_0_FRAGMENT_LSB,
  497. .d_RX_ATTENTION_0_MPDU_LENGTH_ERR_MASK =
  498. AR6320V2_RX_ATTENTION_0_MPDU_LENGTH_ERR_MASK,
  499. .d_RX_FRAG_INFO_0_RING2_MORE_COUNT_MASK =
  500. AR6320V2_RX_FRAG_INFO_0_RING2_MORE_COUNT_MASK,
  501. .d_RX_FRAG_INFO_0_RING2_MORE_COUNT_LSB =
  502. AR6320V2_RX_FRAG_INFO_0_RING2_MORE_COUNT_LSB,
  503. .d_RX_MSDU_START_0_MSDU_LENGTH_MASK =
  504. AR6320V2_RX_MSDU_START_0_MSDU_LENGTH_MASK,
  505. .d_RX_MSDU_START_0_MSDU_LENGTH_LSB =
  506. AR6320V2_RX_MSDU_START_0_MSDU_LENGTH_LSB,
  507. .d_RX_MSDU_START_2_DECAP_FORMAT_OFFSET =
  508. AR6320V2_RX_MSDU_START_2_DECAP_FORMAT_OFFSET,
  509. .d_RX_MSDU_START_2_DECAP_FORMAT_MASK =
  510. AR6320V2_RX_MSDU_START_2_DECAP_FORMAT_MASK,
  511. .d_RX_MSDU_START_2_DECAP_FORMAT_LSB =
  512. AR6320V2_RX_MSDU_START_2_DECAP_FORMAT_LSB,
  513. .d_RX_MPDU_START_0_ENCRYPTED_MASK =
  514. AR6320V2_RX_MPDU_START_0_ENCRYPTED_MASK,
  515. .d_RX_MPDU_START_0_ENCRYPTED_LSB =
  516. AR6320V2_RX_MPDU_START_0_ENCRYPTED_LSB,
  517. .d_RX_ATTENTION_0_MORE_DATA_MASK =
  518. AR6320V2_RX_ATTENTION_0_MORE_DATA_MASK,
  519. .d_RX_ATTENTION_0_MSDU_DONE_MASK =
  520. AR6320V2_RX_ATTENTION_0_MSDU_DONE_MASK,
  521. .d_RX_ATTENTION_0_TCP_UDP_CHKSUM_FAIL_MASK =
  522. AR6320V2_RX_ATTENTION_0_TCP_UDP_CHKSUM_FAIL_MASK,
  523. #if defined(HIF_PCI) || defined(HIF_SNOC) || defined(HIF_AHB) || \
  524. defined(HIF_IPCI)
  525. .d_CE_COUNT = AR6320V2_CE_COUNT,
  526. .d_MSI_ASSIGN_CE_INITIAL = MSI_ASSIGN_CE_INITIAL,
  527. .d_PCIE_INTR_ENABLE_ADDRESS = AR6320V2_PCIE_INTR_ENABLE_ADDRESS,
  528. .d_PCIE_INTR_CLR_ADDRESS = AR6320V2_PCIE_INTR_CLR_ADDRESS,
  529. .d_PCIE_INTR_FIRMWARE_MASK = AR6320V2_PCIE_INTR_FIRMWARE_MASK,
  530. .d_PCIE_INTR_CE_MASK_ALL = AR6320V2_PCIE_INTR_CE_MASK_ALL,
  531. /* PLL start */
  532. .d_EFUSE_OFFSET = AR6320V2_EFUSE_OFFSET,
  533. .d_EFUSE_XTAL_SEL_MSB = AR6320V2_EFUSE_XTAL_SEL_MSB,
  534. .d_EFUSE_XTAL_SEL_LSB = AR6320V2_EFUSE_XTAL_SEL_LSB,
  535. .d_EFUSE_XTAL_SEL_MASK = AR6320V2_EFUSE_XTAL_SEL_MASK,
  536. .d_BB_PLL_CONFIG_OFFSET = AR6320V2_BB_PLL_CONFIG_OFFSET,
  537. .d_BB_PLL_CONFIG_OUTDIV_MSB = AR6320V2_BB_PLL_CONFIG_OUTDIV_MSB,
  538. .d_BB_PLL_CONFIG_OUTDIV_LSB = AR6320V2_BB_PLL_CONFIG_OUTDIV_LSB,
  539. .d_BB_PLL_CONFIG_OUTDIV_MASK = AR6320V2_BB_PLL_CONFIG_OUTDIV_MASK,
  540. .d_BB_PLL_CONFIG_FRAC_MSB = AR6320V2_BB_PLL_CONFIG_FRAC_MSB,
  541. .d_BB_PLL_CONFIG_FRAC_LSB = AR6320V2_BB_PLL_CONFIG_FRAC_LSB,
  542. .d_BB_PLL_CONFIG_FRAC_MASK = AR6320V2_BB_PLL_CONFIG_FRAC_MASK,
  543. .d_WLAN_PLL_SETTLE_TIME_MSB = AR6320V2_WLAN_PLL_SETTLE_TIME_MSB,
  544. .d_WLAN_PLL_SETTLE_TIME_LSB = AR6320V2_WLAN_PLL_SETTLE_TIME_LSB,
  545. .d_WLAN_PLL_SETTLE_TIME_MASK = AR6320V2_WLAN_PLL_SETTLE_TIME_MASK,
  546. .d_WLAN_PLL_SETTLE_OFFSET = AR6320V2_WLAN_PLL_SETTLE_OFFSET,
  547. .d_WLAN_PLL_SETTLE_SW_MASK = AR6320V2_WLAN_PLL_SETTLE_SW_MASK,
  548. .d_WLAN_PLL_SETTLE_RSTMASK = AR6320V2_WLAN_PLL_SETTLE_RSTMASK,
  549. .d_WLAN_PLL_SETTLE_RESET = AR6320V2_WLAN_PLL_SETTLE_RESET,
  550. .d_WLAN_PLL_CONTROL_NOPWD_MSB = AR6320V2_WLAN_PLL_CONTROL_NOPWD_MSB,
  551. .d_WLAN_PLL_CONTROL_NOPWD_LSB = AR6320V2_WLAN_PLL_CONTROL_NOPWD_LSB,
  552. .d_WLAN_PLL_CONTROL_NOPWD_MASK = AR6320V2_WLAN_PLL_CONTROL_NOPWD_MASK,
  553. .d_WLAN_PLL_CONTROL_BYPASS_MSB = AR6320V2_WLAN_PLL_CONTROL_BYPASS_MSB,
  554. .d_WLAN_PLL_CONTROL_BYPASS_LSB = AR6320V2_WLAN_PLL_CONTROL_BYPASS_LSB,
  555. .d_WLAN_PLL_CONTROL_BYPASS_MASK =
  556. AR6320V2_WLAN_PLL_CONTROL_BYPASS_MASK,
  557. .d_WLAN_PLL_CONTROL_BYPASS_RESET =
  558. AR6320V2_WLAN_PLL_CONTROL_BYPASS_RESET,
  559. .d_WLAN_PLL_CONTROL_CLK_SEL_MSB =
  560. AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_MSB,
  561. .d_WLAN_PLL_CONTROL_CLK_SEL_LSB =
  562. AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_LSB,
  563. .d_WLAN_PLL_CONTROL_CLK_SEL_MASK =
  564. AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_MASK,
  565. .d_WLAN_PLL_CONTROL_CLK_SEL_RESET =
  566. AR6320V2_WLAN_PLL_CONTROL_CLK_SEL_RESET,
  567. .d_WLAN_PLL_CONTROL_REFDIV_MSB = AR6320V2_WLAN_PLL_CONTROL_REFDIV_MSB,
  568. .d_WLAN_PLL_CONTROL_REFDIV_LSB = AR6320V2_WLAN_PLL_CONTROL_REFDIV_LSB,
  569. .d_WLAN_PLL_CONTROL_REFDIV_MASK =
  570. AR6320V2_WLAN_PLL_CONTROL_REFDIV_MASK,
  571. .d_WLAN_PLL_CONTROL_REFDIV_RESET =
  572. AR6320V2_WLAN_PLL_CONTROL_REFDIV_RESET,
  573. .d_WLAN_PLL_CONTROL_DIV_MSB = AR6320V2_WLAN_PLL_CONTROL_DIV_MSB,
  574. .d_WLAN_PLL_CONTROL_DIV_LSB = AR6320V2_WLAN_PLL_CONTROL_DIV_LSB,
  575. .d_WLAN_PLL_CONTROL_DIV_MASK = AR6320V2_WLAN_PLL_CONTROL_DIV_MASK,
  576. .d_WLAN_PLL_CONTROL_DIV_RESET = AR6320V2_WLAN_PLL_CONTROL_DIV_RESET,
  577. .d_WLAN_PLL_CONTROL_OFFSET = AR6320V2_WLAN_PLL_CONTROL_OFFSET,
  578. .d_WLAN_PLL_CONTROL_SW_MASK = AR6320V2_WLAN_PLL_CONTROL_SW_MASK,
  579. .d_WLAN_PLL_CONTROL_RSTMASK = AR6320V2_WLAN_PLL_CONTROL_RSTMASK,
  580. .d_WLAN_PLL_CONTROL_RESET = AR6320V2_WLAN_PLL_CONTROL_RESET,
  581. .d_SOC_CORE_CLK_CTRL_OFFSET = AR6320V2_SOC_CORE_CLK_CTRL_OFFSET,
  582. .d_SOC_CORE_CLK_CTRL_DIV_MSB = AR6320V2_SOC_CORE_CLK_CTRL_DIV_MSB,
  583. .d_SOC_CORE_CLK_CTRL_DIV_LSB = AR6320V2_SOC_CORE_CLK_CTRL_DIV_LSB,
  584. .d_SOC_CORE_CLK_CTRL_DIV_MASK = AR6320V2_SOC_CORE_CLK_CTRL_DIV_MASK,
  585. .d_RTC_SYNC_STATUS_PLL_CHANGING_MSB =
  586. AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_MSB,
  587. .d_RTC_SYNC_STATUS_PLL_CHANGING_LSB =
  588. AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_LSB,
  589. .d_RTC_SYNC_STATUS_PLL_CHANGING_MASK =
  590. AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_MASK,
  591. .d_RTC_SYNC_STATUS_PLL_CHANGING_RESET =
  592. AR6320V2_RTC_SYNC_STATUS_PLL_CHANGING_RESET,
  593. .d_RTC_SYNC_STATUS_OFFSET = AR6320V2_RTC_SYNC_STATUS_OFFSET,
  594. .d_SOC_CPU_CLOCK_OFFSET = AR6320V2_SOC_CPU_CLOCK_OFFSET,
  595. .d_SOC_CPU_CLOCK_STANDARD_MSB = AR6320V2_SOC_CPU_CLOCK_STANDARD_MSB,
  596. .d_SOC_CPU_CLOCK_STANDARD_LSB = AR6320V2_SOC_CPU_CLOCK_STANDARD_LSB,
  597. .d_SOC_CPU_CLOCK_STANDARD_MASK = AR6320V2_SOC_CPU_CLOCK_STANDARD_MASK,
  598. /* PLL end */
  599. .d_SOC_POWER_REG_OFFSET = AR6320V2_SOC_POWER_REG_OFFSET,
  600. .d_PCIE_INTR_CAUSE_ADDRESS = AR6320V2_PCIE_INTR_CAUSE_ADDRESS,
  601. .d_SOC_RESET_CONTROL_ADDRESS = AR6320V2_SOC_RESET_CONTROL_ADDRESS,
  602. .d_SOC_RESET_CONTROL_PCIE_RST_SHORT_OVRD_MASK =
  603. AR6320V2_SOC_RESET_CONTROL_PCIE_RST_SHORT_OVRD_MASK,
  604. .d_SOC_RESET_CONTROL_PCIE_RST_SHORT_OVRD_LSB =
  605. AR6320V2_SOC_RESET_CONTROL_PCIE_RST_SHORT_OVRD_LSB,
  606. .d_SOC_RESET_CONTROL_CE_RST_MASK =
  607. AR6320V2_SOC_RESET_CONTROL_CE_RST_MASK,
  608. .d_WLAN_DEBUG_INPUT_SEL_OFFSET = AR6320V2_WLAN_DEBUG_INPUT_SEL_OFFSET,
  609. .d_WLAN_DEBUG_INPUT_SEL_SRC_MSB =
  610. AR6320V2_WLAN_DEBUG_INPUT_SEL_SRC_MSB,
  611. .d_WLAN_DEBUG_INPUT_SEL_SRC_LSB =
  612. AR6320V2_WLAN_DEBUG_INPUT_SEL_SRC_LSB,
  613. .d_WLAN_DEBUG_INPUT_SEL_SRC_MASK =
  614. AR6320V2_WLAN_DEBUG_INPUT_SEL_SRC_MASK,
  615. .d_WLAN_DEBUG_CONTROL_OFFSET = AR6320V2_WLAN_DEBUG_CONTROL_OFFSET,
  616. .d_WLAN_DEBUG_CONTROL_ENABLE_MSB =
  617. AR6320V2_WLAN_DEBUG_CONTROL_ENABLE_MSB,
  618. .d_WLAN_DEBUG_CONTROL_ENABLE_LSB =
  619. AR6320V2_WLAN_DEBUG_CONTROL_ENABLE_LSB,
  620. .d_WLAN_DEBUG_CONTROL_ENABLE_MASK =
  621. AR6320V2_WLAN_DEBUG_CONTROL_ENABLE_MASK,
  622. .d_WLAN_DEBUG_OUT_OFFSET = AR6320V2_WLAN_DEBUG_OUT_OFFSET,
  623. .d_WLAN_DEBUG_OUT_DATA_MSB = AR6320V2_WLAN_DEBUG_OUT_DATA_MSB,
  624. .d_WLAN_DEBUG_OUT_DATA_LSB = AR6320V2_WLAN_DEBUG_OUT_DATA_LSB,
  625. .d_WLAN_DEBUG_OUT_DATA_MASK = AR6320V2_WLAN_DEBUG_OUT_DATA_MASK,
  626. .d_AMBA_DEBUG_BUS_OFFSET = AR6320V2_AMBA_DEBUG_BUS_OFFSET,
  627. .d_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_MSB =
  628. AR6320V2_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_MSB,
  629. .d_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_LSB =
  630. AR6320V2_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_LSB,
  631. .d_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_MASK =
  632. AR6320V2_AMBA_DEBUG_BUS_PCIE_DEBUG_SEL_MASK,
  633. .d_AMBA_DEBUG_BUS_SEL_MSB = AR6320V2_AMBA_DEBUG_BUS_SEL_MSB,
  634. .d_AMBA_DEBUG_BUS_SEL_LSB = AR6320V2_AMBA_DEBUG_BUS_SEL_LSB,
  635. .d_AMBA_DEBUG_BUS_SEL_MASK = AR6320V2_AMBA_DEBUG_BUS_SEL_MASK,
  636. #endif
  637. .d_SOC_RESET_CONTROL_CPU_WARM_RST_MASK =
  638. AR6320V2_SOC_RESET_CONTROL_CPU_WARM_RST_MASK,
  639. .d_CPU_INTR_ADDRESS = AR6320V2_CPU_INTR_ADDRESS,
  640. .d_SOC_LF_TIMER_CONTROL0_ADDRESS =
  641. AR6320V2_SOC_LF_TIMER_CONTROL0_ADDRESS,
  642. .d_SOC_LF_TIMER_CONTROL0_ENABLE_MASK =
  643. AR6320V2_SOC_LF_TIMER_CONTROL0_ENABLE_MASK,
  644. .d_SOC_LF_TIMER_STATUS0_ADDRESS =
  645. AR6320V2_SOC_LF_TIMER_STATUS0_ADDRESS,
  646. /* chip id start */
  647. .d_SOC_CHIP_ID_ADDRESS = AR6320V2_SOC_CHIP_ID_ADDRESS,
  648. .d_SOC_CHIP_ID_VERSION_MASK = AR6320V2_SOC_CHIP_ID_VERSION_MASK,
  649. .d_SOC_CHIP_ID_VERSION_LSB = AR6320V2_SOC_CHIP_ID_VERSION_LSB,
  650. .d_SOC_CHIP_ID_REVISION_MASK = AR6320V2_SOC_CHIP_ID_REVISION_MASK,
  651. .d_SOC_CHIP_ID_REVISION_LSB = AR6320V2_SOC_CHIP_ID_REVISION_LSB,
  652. /* chip id end */
  653. };
  654. struct hostdef_s ar6320v2_hostdef = {
  655. .d_INT_STATUS_ENABLE_ERROR_LSB = AR6320V2_INT_STATUS_ENABLE_ERROR_LSB,
  656. .d_INT_STATUS_ENABLE_ERROR_MASK =
  657. AR6320V2_INT_STATUS_ENABLE_ERROR_MASK,
  658. .d_INT_STATUS_ENABLE_CPU_LSB = AR6320V2_INT_STATUS_ENABLE_CPU_LSB,
  659. .d_INT_STATUS_ENABLE_CPU_MASK = AR6320V2_INT_STATUS_ENABLE_CPU_MASK,
  660. .d_INT_STATUS_ENABLE_COUNTER_LSB =
  661. AR6320V2_INT_STATUS_ENABLE_COUNTER_LSB,
  662. .d_INT_STATUS_ENABLE_COUNTER_MASK =
  663. AR6320V2_INT_STATUS_ENABLE_COUNTER_MASK,
  664. .d_INT_STATUS_ENABLE_MBOX_DATA_LSB =
  665. AR6320V2_INT_STATUS_ENABLE_MBOX_DATA_LSB,
  666. .d_INT_STATUS_ENABLE_MBOX_DATA_MASK =
  667. AR6320V2_INT_STATUS_ENABLE_MBOX_DATA_MASK,
  668. .d_ERROR_STATUS_ENABLE_RX_UNDERFLOW_LSB =
  669. AR6320V2_ERROR_STATUS_ENABLE_RX_UNDERFLOW_LSB,
  670. .d_ERROR_STATUS_ENABLE_RX_UNDERFLOW_MASK =
  671. AR6320V2_ERROR_STATUS_ENABLE_RX_UNDERFLOW_MASK,
  672. .d_ERROR_STATUS_ENABLE_TX_OVERFLOW_LSB =
  673. AR6320V2_ERROR_STATUS_ENABLE_TX_OVERFLOW_LSB,
  674. .d_ERROR_STATUS_ENABLE_TX_OVERFLOW_MASK =
  675. AR6320V2_ERROR_STATUS_ENABLE_TX_OVERFLOW_MASK,
  676. .d_COUNTER_INT_STATUS_ENABLE_BIT_LSB =
  677. AR6320V2_COUNTER_INT_STATUS_ENABLE_BIT_LSB,
  678. .d_COUNTER_INT_STATUS_ENABLE_BIT_MASK =
  679. AR6320V2_COUNTER_INT_STATUS_ENABLE_BIT_MASK,
  680. .d_INT_STATUS_ENABLE_ADDRESS = AR6320V2_INT_STATUS_ENABLE_ADDRESS,
  681. .d_CPU_INT_STATUS_ENABLE_BIT_LSB =
  682. AR6320V2_CPU_INT_STATUS_ENABLE_BIT_LSB,
  683. .d_CPU_INT_STATUS_ENABLE_BIT_MASK =
  684. AR6320V2_CPU_INT_STATUS_ENABLE_BIT_MASK,
  685. .d_HOST_INT_STATUS_ADDRESS = AR6320V2_HOST_INT_STATUS_ADDRESS,
  686. .d_CPU_INT_STATUS_ADDRESS = AR6320V2_CPU_INT_STATUS_ADDRESS,
  687. .d_ERROR_INT_STATUS_ADDRESS = AR6320V2_ERROR_INT_STATUS_ADDRESS,
  688. .d_ERROR_INT_STATUS_WAKEUP_MASK =
  689. AR6320V2_ERROR_INT_STATUS_WAKEUP_MASK,
  690. .d_ERROR_INT_STATUS_WAKEUP_LSB = AR6320V2_ERROR_INT_STATUS_WAKEUP_LSB,
  691. .d_ERROR_INT_STATUS_RX_UNDERFLOW_MASK =
  692. AR6320V2_ERROR_INT_STATUS_RX_UNDERFLOW_MASK,
  693. .d_ERROR_INT_STATUS_RX_UNDERFLOW_LSB =
  694. AR6320V2_ERROR_INT_STATUS_RX_UNDERFLOW_LSB,
  695. .d_ERROR_INT_STATUS_TX_OVERFLOW_MASK =
  696. AR6320V2_ERROR_INT_STATUS_TX_OVERFLOW_MASK,
  697. .d_ERROR_INT_STATUS_TX_OVERFLOW_LSB =
  698. AR6320V2_ERROR_INT_STATUS_TX_OVERFLOW_LSB,
  699. .d_COUNT_DEC_ADDRESS = AR6320V2_COUNT_DEC_ADDRESS,
  700. .d_HOST_INT_STATUS_CPU_MASK = AR6320V2_HOST_INT_STATUS_CPU_MASK,
  701. .d_HOST_INT_STATUS_CPU_LSB = AR6320V2_HOST_INT_STATUS_CPU_LSB,
  702. .d_HOST_INT_STATUS_ERROR_MASK = AR6320V2_HOST_INT_STATUS_ERROR_MASK,
  703. .d_HOST_INT_STATUS_ERROR_LSB = AR6320V2_HOST_INT_STATUS_ERROR_LSB,
  704. .d_HOST_INT_STATUS_COUNTER_MASK =
  705. AR6320V2_HOST_INT_STATUS_COUNTER_MASK,
  706. .d_HOST_INT_STATUS_COUNTER_LSB = AR6320V2_HOST_INT_STATUS_COUNTER_LSB,
  707. .d_RX_LOOKAHEAD_VALID_ADDRESS = AR6320V2_RX_LOOKAHEAD_VALID_ADDRESS,
  708. .d_WINDOW_DATA_ADDRESS = AR6320V2_WINDOW_DATA_ADDRESS,
  709. .d_WINDOW_READ_ADDR_ADDRESS = AR6320V2_WINDOW_READ_ADDR_ADDRESS,
  710. .d_WINDOW_WRITE_ADDR_ADDRESS = AR6320V2_WINDOW_WRITE_ADDR_ADDRESS,
  711. .d_SOC_GLOBAL_RESET_ADDRESS = AR6320V2_SOC_GLOBAL_RESET_ADDRESS,
  712. .d_RTC_STATE_ADDRESS = AR6320V2_RTC_STATE_ADDRESS,
  713. .d_RTC_STATE_COLD_RESET_MASK = AR6320V2_RTC_STATE_COLD_RESET_MASK,
  714. .d_RTC_STATE_V_MASK = AR6320V2_RTC_STATE_V_MASK,
  715. .d_RTC_STATE_V_LSB = AR6320V2_RTC_STATE_V_LSB,
  716. .d_FW_IND_EVENT_PENDING = AR6320V2_FW_IND_EVENT_PENDING,
  717. .d_FW_IND_INITIALIZED = AR6320V2_FW_IND_INITIALIZED,
  718. .d_RTC_STATE_V_ON = AR6320V2_RTC_STATE_V_ON,
  719. #if defined(SDIO_3_0)
  720. .d_HOST_INT_STATUS_MBOX_DATA_MASK =
  721. AR6320V2_HOST_INT_STATUS_MBOX_DATA_MASK,
  722. .d_HOST_INT_STATUS_MBOX_DATA_LSB =
  723. AR6320V2_HOST_INT_STATUS_MBOX_DATA_LSB,
  724. #endif
  725. #if defined(HIF_PCI) || defined(HIF_SNOC) || defined(HIF_AHB) || \
  726. defined(HIF_IPCI)
  727. .d_FW_IND_HELPER = AR6320V2_FW_IND_HELPER,
  728. .d_MUX_ID_MASK = AR6320V2_MUX_ID_MASK,
  729. .d_TRANSACTION_ID_MASK = AR6320V2_TRANSACTION_ID_MASK,
  730. .d_PCIE_LOCAL_BASE_ADDRESS = AR6320V2_PCIE_LOCAL_BASE_ADDRESS,
  731. .d_PCIE_SOC_WAKE_RESET = AR6320V2_PCIE_SOC_WAKE_RESET,
  732. .d_PCIE_SOC_WAKE_ADDRESS = AR6320V2_PCIE_SOC_WAKE_ADDRESS,
  733. .d_PCIE_SOC_WAKE_V_MASK = AR6320V2_PCIE_SOC_WAKE_V_MASK,
  734. .d_PCIE_SOC_RDY_STATUS_ADDRESS = PCIE_SOC_RDY_STATUS_ADDRESS,
  735. .d_PCIE_SOC_RDY_STATUS_BAR_MASK = PCIE_SOC_RDY_STATUS_BAR_MASK,
  736. .d_SOC_PCIE_BASE_ADDRESS = SOC_PCIE_BASE_ADDRESS,
  737. .d_MSI_MAGIC_ADR_ADDRESS = MSI_MAGIC_ADR_ADDRESS,
  738. .d_MSI_MAGIC_ADDRESS = MSI_MAGIC_ADDRESS,
  739. .d_HOST_CE_COUNT = 8,
  740. .d_ENABLE_MSI = 0,
  741. #endif
  742. #if defined(HIF_SDIO)
  743. .d_FW_IND_HELPER = AR6320V2_FW_IND_HELPER,
  744. #endif
  745. };
  746. #if defined(HIF_PCI) || defined(HIF_SNOC) || defined(HIF_AHB) || \
  747. defined(HIF_IPCI)
  748. struct ce_reg_def ar6320v2_ce_targetdef = {
  749. /* copy_engine.c */
  750. .d_DST_WR_INDEX_ADDRESS = AR6320V2_DST_WR_INDEX_ADDRESS,
  751. .d_SRC_WATERMARK_ADDRESS = AR6320V2_SRC_WATERMARK_ADDRESS,
  752. .d_SRC_WATERMARK_LOW_MASK = AR6320V2_SRC_WATERMARK_LOW_MASK,
  753. .d_SRC_WATERMARK_HIGH_MASK = AR6320V2_SRC_WATERMARK_HIGH_MASK,
  754. .d_DST_WATERMARK_LOW_MASK = AR6320V2_DST_WATERMARK_LOW_MASK,
  755. .d_DST_WATERMARK_HIGH_MASK = AR6320V2_DST_WATERMARK_HIGH_MASK,
  756. .d_CURRENT_SRRI_ADDRESS = AR6320V2_CURRENT_SRRI_ADDRESS,
  757. .d_CURRENT_DRRI_ADDRESS = AR6320V2_CURRENT_DRRI_ADDRESS,
  758. .d_HOST_IS_SRC_RING_HIGH_WATERMARK_MASK =
  759. AR6320V2_HOST_IS_SRC_RING_HIGH_WATERMARK_MASK,
  760. .d_HOST_IS_SRC_RING_LOW_WATERMARK_MASK =
  761. AR6320V2_HOST_IS_SRC_RING_LOW_WATERMARK_MASK,
  762. .d_HOST_IS_DST_RING_HIGH_WATERMARK_MASK =
  763. AR6320V2_HOST_IS_DST_RING_HIGH_WATERMARK_MASK,
  764. .d_HOST_IS_DST_RING_LOW_WATERMARK_MASK =
  765. AR6320V2_HOST_IS_DST_RING_LOW_WATERMARK_MASK,
  766. .d_HOST_IS_ADDRESS = AR6320V2_HOST_IS_ADDRESS,
  767. .d_HOST_IS_COPY_COMPLETE_MASK = AR6320V2_HOST_IS_COPY_COMPLETE_MASK,
  768. .d_CE_WRAPPER_BASE_ADDRESS = AR6320V2_CE_WRAPPER_BASE_ADDRESS,
  769. .d_CE_WRAPPER_INTERRUPT_SUMMARY_ADDRESS =
  770. AR6320V2_CE_WRAPPER_INTERRUPT_SUMMARY_ADDRESS,
  771. .d_HOST_IE_ADDRESS = AR6320V2_HOST_IE_ADDRESS,
  772. .d_HOST_IE_COPY_COMPLETE_MASK = AR6320V2_HOST_IE_COPY_COMPLETE_MASK,
  773. .d_SR_BA_ADDRESS = AR6320V2_SR_BA_ADDRESS,
  774. .d_SR_SIZE_ADDRESS = AR6320V2_SR_SIZE_ADDRESS,
  775. .d_CE_CTRL1_ADDRESS = AR6320V2_CE_CTRL1_ADDRESS,
  776. .d_CE_CTRL1_DMAX_LENGTH_MASK = AR6320V2_CE_CTRL1_DMAX_LENGTH_MASK,
  777. .d_DR_BA_ADDRESS = AR6320V2_DR_BA_ADDRESS,
  778. .d_DR_SIZE_ADDRESS = AR6320V2_DR_SIZE_ADDRESS,
  779. .d_MISC_IE_ADDRESS = AR6320V2_MISC_IE_ADDRESS,
  780. .d_MISC_IS_AXI_ERR_MASK = AR6320V2_MISC_IS_AXI_ERR_MASK,
  781. .d_MISC_IS_DST_ADDR_ERR_MASK = AR6320V2_MISC_IS_DST_ADDR_ERR_MASK,
  782. .d_MISC_IS_SRC_LEN_ERR_MASK = AR6320V2_MISC_IS_SRC_LEN_ERR_MASK,
  783. .d_MISC_IS_DST_MAX_LEN_VIO_MASK =
  784. AR6320V2_MISC_IS_DST_MAX_LEN_VIO_MASK,
  785. .d_MISC_IS_DST_RING_OVERFLOW_MASK =
  786. AR6320V2_MISC_IS_DST_RING_OVERFLOW_MASK,
  787. .d_MISC_IS_SRC_RING_OVERFLOW_MASK =
  788. AR6320V2_MISC_IS_SRC_RING_OVERFLOW_MASK,
  789. .d_SRC_WATERMARK_LOW_LSB = AR6320V2_SRC_WATERMARK_LOW_LSB,
  790. .d_SRC_WATERMARK_HIGH_LSB = AR6320V2_SRC_WATERMARK_HIGH_LSB,
  791. .d_DST_WATERMARK_LOW_LSB = AR6320V2_DST_WATERMARK_LOW_LSB,
  792. .d_DST_WATERMARK_HIGH_LSB = AR6320V2_DST_WATERMARK_HIGH_LSB,
  793. .d_CE_WRAPPER_INTERRUPT_SUMMARY_HOST_MSI_MASK =
  794. AR6320V2_CE_WRAPPER_INTERRUPT_SUMMARY_HOST_MSI_MASK,
  795. .d_CE_WRAPPER_INTERRUPT_SUMMARY_HOST_MSI_LSB =
  796. AR6320V2_CE_WRAPPER_INTERRUPT_SUMMARY_HOST_MSI_LSB,
  797. .d_CE_CTRL1_DMAX_LENGTH_LSB = AR6320V2_CE_CTRL1_DMAX_LENGTH_LSB,
  798. .d_CE_CTRL1_SRC_RING_BYTE_SWAP_EN_MASK =
  799. AR6320V2_CE_CTRL1_SRC_RING_BYTE_SWAP_EN_MASK,
  800. .d_CE_CTRL1_DST_RING_BYTE_SWAP_EN_MASK =
  801. AR6320V2_CE_CTRL1_DST_RING_BYTE_SWAP_EN_MASK,
  802. .d_CE_CTRL1_SRC_RING_BYTE_SWAP_EN_LSB =
  803. AR6320V2_CE_CTRL1_SRC_RING_BYTE_SWAP_EN_LSB,
  804. .d_CE_CTRL1_DST_RING_BYTE_SWAP_EN_LSB =
  805. AR6320V2_CE_CTRL1_DST_RING_BYTE_SWAP_EN_LSB,
  806. .d_CE_WRAPPER_DEBUG_OFFSET = AR6320V2_CE_WRAPPER_DEBUG_OFFSET,
  807. .d_CE_WRAPPER_DEBUG_SEL_MSB = AR6320V2_CE_WRAPPER_DEBUG_SEL_MSB,
  808. .d_CE_WRAPPER_DEBUG_SEL_LSB = AR6320V2_CE_WRAPPER_DEBUG_SEL_LSB,
  809. .d_CE_WRAPPER_DEBUG_SEL_MASK = AR6320V2_CE_WRAPPER_DEBUG_SEL_MASK,
  810. .d_CE_DEBUG_OFFSET = AR6320V2_CE_DEBUG_OFFSET,
  811. .d_CE_DEBUG_SEL_MSB = AR6320V2_CE_DEBUG_SEL_MSB,
  812. .d_CE_DEBUG_SEL_LSB = AR6320V2_CE_DEBUG_SEL_LSB,
  813. .d_CE_DEBUG_SEL_MASK = AR6320V2_CE_DEBUG_SEL_MASK,
  814. .d_CE0_BASE_ADDRESS = AR6320V2_CE0_BASE_ADDRESS,
  815. .d_CE1_BASE_ADDRESS = AR6320V2_CE1_BASE_ADDRESS,
  816. };
  817. #endif
  818. #endif