halmac_rx_desc_chip.h 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698
  1. /******************************************************************************
  2. *
  3. * Copyright(c) 2016 - 2018 Realtek Corporation. All rights reserved.
  4. *
  5. * This program is free software; you can redistribute it and/or modify it
  6. * under the terms of version 2 of the GNU General Public License as
  7. * published by the Free Software Foundation.
  8. *
  9. * This program is distributed in the hope that it will be useful, but WITHOUT
  10. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11. * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
  12. * more details.
  13. *
  14. ******************************************************************************/
  15. #ifndef _HALMAC_RX_DESC_CHIP_H_
  16. #define _HALMAC_RX_DESC_CHIP_H_
  17. #if (HALMAC_8814A_SUPPORT)
  18. /*RXDESC_WORD0*/
  19. #define GET_RX_DESC_EOR_8814A(rxdesc) GET_RX_DESC_EOR(rxdesc)
  20. #define GET_RX_DESC_PHYPKTIDC_8814A(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  21. #define GET_RX_DESC_SWDEC_8814A(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  22. #define GET_RX_DESC_PHYST_8814A(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  23. #define GET_RX_DESC_SHIFT_8814A(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  24. #define GET_RX_DESC_QOS_8814A(rxdesc) GET_RX_DESC_QOS(rxdesc)
  25. #define GET_RX_DESC_SECURITY_8814A(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  26. #define GET_RX_DESC_DRV_INFO_SIZE_8814A(rxdesc) \
  27. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  28. #define GET_RX_DESC_ICV_ERR_8814A(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  29. #define GET_RX_DESC_CRC32_8814A(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  30. #define GET_RX_DESC_PKT_LEN_8814A(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  31. /*RXDESC_WORD1*/
  32. #define GET_RX_DESC_BC_8814A(rxdesc) GET_RX_DESC_BC(rxdesc)
  33. #define GET_RX_DESC_MC_8814A(rxdesc) GET_RX_DESC_MC(rxdesc)
  34. #define GET_RX_DESC_TY_PE_8814A(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  35. #define GET_RX_DESC_MF_8814A(rxdesc) GET_RX_DESC_MF(rxdesc)
  36. #define GET_RX_DESC_MD_8814A(rxdesc) GET_RX_DESC_MD(rxdesc)
  37. #define GET_RX_DESC_PWR_8814A(rxdesc) GET_RX_DESC_PWR(rxdesc)
  38. #define GET_RX_DESC_PAM_8814A(rxdesc) GET_RX_DESC_PAM(rxdesc)
  39. #define GET_RX_DESC_CHK_VLD_8814A(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  40. #define GET_RX_DESC_RX_IS_TCP_UDP_8814A(rxdesc) \
  41. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  42. #define GET_RX_DESC_RX_IPV_8814A(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  43. #define GET_RX_DESC_CHKERR_8814A(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  44. #define GET_RX_DESC_PAGGR_8814A(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  45. #define GET_RX_DESC_RXID_MATCH_8814A(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  46. #define GET_RX_DESC_AMSDU_8814A(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  47. #define GET_RX_DESC_MACID_VLD_8814A(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  48. #define GET_RX_DESC_TID_8814A(rxdesc) GET_RX_DESC_TID(rxdesc)
  49. #define GET_RX_DESC_MACID_8814A(rxdesc) GET_RX_DESC_MACID(rxdesc)
  50. /*RXDESC_WORD2*/
  51. #define GET_RX_DESC_FCS_OK_8814A(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  52. #define GET_RX_DESC_C2H_8814A(rxdesc) GET_RX_DESC_C2H(rxdesc)
  53. #define GET_RX_DESC_HWRSVD_8814A(rxdesc) GET_RX_DESC_HWRSVD(rxdesc)
  54. #define GET_RX_DESC_WLANHD_IV_LEN_8814A(rxdesc) \
  55. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  56. #define GET_RX_DESC_RX_IS_QOS_8814A(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  57. #define GET_RX_DESC_FRAG_8814A(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  58. #define GET_RX_DESC_SEQ_8814A(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  59. /*RXDESC_WORD3*/
  60. #define GET_RX_DESC_MAGIC_WAKE_8814A(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  61. #define GET_RX_DESC_UNICAST_WAKE_8814A(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  62. #define GET_RX_DESC_PATTERN_MATCH_8814A(rxdesc) \
  63. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  64. #define GET_RX_DESC_DMA_AGG_NUM_8814A(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  65. #define GET_RX_DESC_BSSID_FIT_1_0_8814A(rxdesc) \
  66. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  67. #define GET_RX_DESC_EOSP_8814A(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  68. #define GET_RX_DESC_HTC_8814A(rxdesc) GET_RX_DESC_HTC(rxdesc)
  69. #define GET_RX_DESC_BSSID_FIT_4_2_8814A(rxdesc) \
  70. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  71. #define GET_RX_DESC_RX_RATE_8814A(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  72. /*RXDESC_WORD4*/
  73. #define GET_RX_DESC_A1_FIT_8814A(rxdesc) GET_RX_DESC_A1_FIT(rxdesc)
  74. #define GET_RX_DESC_MACID_RPT_BUFF_8814A(rxdesc) \
  75. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  76. #define GET_RX_DESC_RX_PRE_NDP_VLD_8814A(rxdesc) \
  77. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  78. #define GET_RX_DESC_RX_SCRAMBLER_8814A(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  79. #define GET_RX_DESC_RX_EOF_8814A(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  80. #define GET_RX_DESC_PATTERN_IDX_8814A(rxdesc) GET_RX_DESC_PATTERN_IDX(rxdesc)
  81. /*RXDESC_WORD5*/
  82. #define GET_RX_DESC_TSFL_8814A(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  83. #endif
  84. #if (HALMAC_8822B_SUPPORT)
  85. /*RXDESC_WORD0*/
  86. #define GET_RX_DESC_EOR_8822B(rxdesc) GET_RX_DESC_EOR(rxdesc)
  87. #define GET_RX_DESC_PHYPKTIDC_8822B(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  88. #define GET_RX_DESC_SWDEC_8822B(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  89. #define GET_RX_DESC_PHYST_8822B(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  90. #define GET_RX_DESC_SHIFT_8822B(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  91. #define GET_RX_DESC_QOS_8822B(rxdesc) GET_RX_DESC_QOS(rxdesc)
  92. #define GET_RX_DESC_SECURITY_8822B(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  93. #define GET_RX_DESC_DRV_INFO_SIZE_8822B(rxdesc) \
  94. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  95. #define GET_RX_DESC_ICV_ERR_8822B(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  96. #define GET_RX_DESC_CRC32_8822B(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  97. #define GET_RX_DESC_PKT_LEN_8822B(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  98. /*RXDESC_WORD1*/
  99. #define GET_RX_DESC_BC_8822B(rxdesc) GET_RX_DESC_BC(rxdesc)
  100. #define GET_RX_DESC_MC_8822B(rxdesc) GET_RX_DESC_MC(rxdesc)
  101. #define GET_RX_DESC_TY_PE_8822B(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  102. #define GET_RX_DESC_MF_8822B(rxdesc) GET_RX_DESC_MF(rxdesc)
  103. #define GET_RX_DESC_MD_8822B(rxdesc) GET_RX_DESC_MD(rxdesc)
  104. #define GET_RX_DESC_PWR_8822B(rxdesc) GET_RX_DESC_PWR(rxdesc)
  105. #define GET_RX_DESC_PAM_8822B(rxdesc) GET_RX_DESC_PAM(rxdesc)
  106. #define GET_RX_DESC_CHK_VLD_8822B(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  107. #define GET_RX_DESC_RX_IS_TCP_UDP_8822B(rxdesc) \
  108. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  109. #define GET_RX_DESC_RX_IPV_8822B(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  110. #define GET_RX_DESC_CHKERR_8822B(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  111. #define GET_RX_DESC_PAGGR_8822B(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  112. #define GET_RX_DESC_RXID_MATCH_8822B(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  113. #define GET_RX_DESC_AMSDU_8822B(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  114. #define GET_RX_DESC_MACID_VLD_8822B(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  115. #define GET_RX_DESC_TID_8822B(rxdesc) GET_RX_DESC_TID(rxdesc)
  116. #define GET_RX_DESC_MACID_8822B(rxdesc) GET_RX_DESC_MACID(rxdesc)
  117. /*RXDESC_WORD2*/
  118. #define GET_RX_DESC_FCS_OK_8822B(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  119. #define GET_RX_DESC_PPDU_CNT_8822B(rxdesc) GET_RX_DESC_PPDU_CNT(rxdesc)
  120. #define GET_RX_DESC_C2H_8822B(rxdesc) GET_RX_DESC_C2H(rxdesc)
  121. #define GET_RX_DESC_HWRSVD_8822B(rxdesc) GET_RX_DESC_HWRSVD(rxdesc)
  122. #define GET_RX_DESC_WLANHD_IV_LEN_8822B(rxdesc) \
  123. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  124. #define GET_RX_DESC_RX_IS_QOS_8822B(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  125. #define GET_RX_DESC_FRAG_8822B(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  126. #define GET_RX_DESC_SEQ_8822B(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  127. /*RXDESC_WORD3*/
  128. #define GET_RX_DESC_MAGIC_WAKE_8822B(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  129. #define GET_RX_DESC_UNICAST_WAKE_8822B(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  130. #define GET_RX_DESC_PATTERN_MATCH_8822B(rxdesc) \
  131. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  132. #define GET_RX_DESC_RXPAYLOAD_MATCH_8822B(rxdesc) \
  133. GET_RX_DESC_RXPAYLOAD_MATCH(rxdesc)
  134. #define GET_RX_DESC_RXPAYLOAD_ID_8822B(rxdesc) GET_RX_DESC_RXPAYLOAD_ID(rxdesc)
  135. #define GET_RX_DESC_DMA_AGG_NUM_8822B(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  136. #define GET_RX_DESC_BSSID_FIT_1_0_8822B(rxdesc) \
  137. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  138. #define GET_RX_DESC_EOSP_8822B(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  139. #define GET_RX_DESC_HTC_8822B(rxdesc) GET_RX_DESC_HTC(rxdesc)
  140. #define GET_RX_DESC_BSSID_FIT_4_2_8822B(rxdesc) \
  141. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  142. #define GET_RX_DESC_RX_RATE_8822B(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  143. /*RXDESC_WORD4*/
  144. #define GET_RX_DESC_A1_FIT_8822B(rxdesc) GET_RX_DESC_A1_FIT(rxdesc)
  145. #define GET_RX_DESC_MACID_RPT_BUFF_8822B(rxdesc) \
  146. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  147. #define GET_RX_DESC_RX_PRE_NDP_VLD_8822B(rxdesc) \
  148. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  149. #define GET_RX_DESC_RX_SCRAMBLER_8822B(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  150. #define GET_RX_DESC_RX_EOF_8822B(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  151. #define GET_RX_DESC_PATTERN_IDX_8822B(rxdesc) GET_RX_DESC_PATTERN_IDX(rxdesc)
  152. /*RXDESC_WORD5*/
  153. #define GET_RX_DESC_TSFL_8822B(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  154. #endif
  155. #if (HALMAC_8197F_SUPPORT)
  156. /*RXDESC_WORD0*/
  157. #define GET_RX_DESC_EOR_8197F(rxdesc) GET_RX_DESC_EOR(rxdesc)
  158. #define GET_RX_DESC_PHYPKTIDC_8197F(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  159. #define GET_RX_DESC_SWDEC_8197F(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  160. #define GET_RX_DESC_PHYST_8197F(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  161. #define GET_RX_DESC_SHIFT_8197F(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  162. #define GET_RX_DESC_QOS_8197F(rxdesc) GET_RX_DESC_QOS(rxdesc)
  163. #define GET_RX_DESC_SECURITY_8197F(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  164. #define GET_RX_DESC_DRV_INFO_SIZE_8197F(rxdesc) \
  165. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  166. #define GET_RX_DESC_ICV_ERR_8197F(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  167. #define GET_RX_DESC_CRC32_8197F(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  168. #define GET_RX_DESC_PKT_LEN_8197F(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  169. /*RXDESC_WORD1*/
  170. #define GET_RX_DESC_BC_8197F(rxdesc) GET_RX_DESC_BC(rxdesc)
  171. #define GET_RX_DESC_MC_8197F(rxdesc) GET_RX_DESC_MC(rxdesc)
  172. #define GET_RX_DESC_TY_PE_8197F(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  173. #define GET_RX_DESC_MF_8197F(rxdesc) GET_RX_DESC_MF(rxdesc)
  174. #define GET_RX_DESC_MD_8197F(rxdesc) GET_RX_DESC_MD(rxdesc)
  175. #define GET_RX_DESC_PWR_8197F(rxdesc) GET_RX_DESC_PWR(rxdesc)
  176. #define GET_RX_DESC_PAM_8197F(rxdesc) GET_RX_DESC_PAM(rxdesc)
  177. #define GET_RX_DESC_CHK_VLD_8197F(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  178. #define GET_RX_DESC_RX_IS_TCP_UDP_8197F(rxdesc) \
  179. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  180. #define GET_RX_DESC_RX_IPV_8197F(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  181. #define GET_RX_DESC_CHKERR_8197F(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  182. #define GET_RX_DESC_PAGGR_8197F(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  183. #define GET_RX_DESC_RXID_MATCH_8197F(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  184. #define GET_RX_DESC_AMSDU_8197F(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  185. #define GET_RX_DESC_MACID_VLD_8197F(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  186. #define GET_RX_DESC_TID_8197F(rxdesc) GET_RX_DESC_TID(rxdesc)
  187. #define GET_RX_DESC_MACID_8197F(rxdesc) GET_RX_DESC_MACID(rxdesc)
  188. /*RXDESC_WORD2*/
  189. #define GET_RX_DESC_FCS_OK_8197F(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  190. #define GET_RX_DESC_C2H_8197F(rxdesc) GET_RX_DESC_C2H(rxdesc)
  191. #define GET_RX_DESC_HWRSVD_8197F(rxdesc) GET_RX_DESC_HWRSVD(rxdesc)
  192. #define GET_RX_DESC_WLANHD_IV_LEN_8197F(rxdesc) \
  193. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  194. #define GET_RX_DESC_RX_IS_QOS_8197F(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  195. #define GET_RX_DESC_FRAG_8197F(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  196. #define GET_RX_DESC_SEQ_8197F(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  197. /*RXDESC_WORD3*/
  198. #define GET_RX_DESC_MAGIC_WAKE_8197F(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  199. #define GET_RX_DESC_UNICAST_WAKE_8197F(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  200. #define GET_RX_DESC_PATTERN_MATCH_8197F(rxdesc) \
  201. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  202. #define GET_RX_DESC_DMA_AGG_NUM_8197F(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  203. #define GET_RX_DESC_BSSID_FIT_1_0_8197F(rxdesc) \
  204. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  205. #define GET_RX_DESC_EOSP_8197F(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  206. #define GET_RX_DESC_HTC_8197F(rxdesc) GET_RX_DESC_HTC(rxdesc)
  207. #define GET_RX_DESC_BSSID_FIT_4_2_8197F(rxdesc) \
  208. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  209. #define GET_RX_DESC_RX_RATE_8197F(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  210. /*RXDESC_WORD4*/
  211. #define GET_RX_DESC_A1_FIT_8197F(rxdesc) GET_RX_DESC_A1_FIT(rxdesc)
  212. #define GET_RX_DESC_MACID_RPT_BUFF_8197F(rxdesc) \
  213. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  214. #define GET_RX_DESC_RX_PRE_NDP_VLD_8197F(rxdesc) \
  215. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  216. #define GET_RX_DESC_RX_SCRAMBLER_8197F(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  217. #define GET_RX_DESC_RX_EOF_8197F(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  218. #define GET_RX_DESC_FC_POWER_8197F(rxdesc) GET_RX_DESC_FC_POWER(rxdesc)
  219. #define GET_RX_DESC_PATTERN_IDX_8197F(rxdesc) GET_RX_DESC_PATTERN_IDX_V1(rxdesc)
  220. /*RXDESC_WORD5*/
  221. #define GET_RX_DESC_TSFL_8197F(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  222. #endif
  223. #if (HALMAC_8821C_SUPPORT)
  224. /*RXDESC_WORD0*/
  225. #define GET_RX_DESC_EOR_8821C(rxdesc) GET_RX_DESC_EOR(rxdesc)
  226. #define GET_RX_DESC_PHYPKTIDC_8821C(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  227. #define GET_RX_DESC_SWDEC_8821C(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  228. #define GET_RX_DESC_PHYST_8821C(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  229. #define GET_RX_DESC_SHIFT_8821C(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  230. #define GET_RX_DESC_QOS_8821C(rxdesc) GET_RX_DESC_QOS(rxdesc)
  231. #define GET_RX_DESC_SECURITY_8821C(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  232. #define GET_RX_DESC_DRV_INFO_SIZE_8821C(rxdesc) \
  233. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  234. #define GET_RX_DESC_ICV_ERR_8821C(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  235. #define GET_RX_DESC_CRC32_8821C(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  236. #define GET_RX_DESC_PKT_LEN_8821C(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  237. /*RXDESC_WORD1*/
  238. #define GET_RX_DESC_BC_8821C(rxdesc) GET_RX_DESC_BC(rxdesc)
  239. #define GET_RX_DESC_MC_8821C(rxdesc) GET_RX_DESC_MC(rxdesc)
  240. #define GET_RX_DESC_TY_PE_8821C(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  241. #define GET_RX_DESC_MF_8821C(rxdesc) GET_RX_DESC_MF(rxdesc)
  242. #define GET_RX_DESC_MD_8821C(rxdesc) GET_RX_DESC_MD(rxdesc)
  243. #define GET_RX_DESC_PWR_8821C(rxdesc) GET_RX_DESC_PWR(rxdesc)
  244. #define GET_RX_DESC_PAM_8821C(rxdesc) GET_RX_DESC_PAM(rxdesc)
  245. #define GET_RX_DESC_CHK_VLD_8821C(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  246. #define GET_RX_DESC_RX_IS_TCP_UDP_8821C(rxdesc) \
  247. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  248. #define GET_RX_DESC_RX_IPV_8821C(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  249. #define GET_RX_DESC_CHKERR_8821C(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  250. #define GET_RX_DESC_PAGGR_8821C(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  251. #define GET_RX_DESC_RXID_MATCH_8821C(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  252. #define GET_RX_DESC_AMSDU_8821C(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  253. #define GET_RX_DESC_MACID_VLD_8821C(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  254. #define GET_RX_DESC_TID_8821C(rxdesc) GET_RX_DESC_TID(rxdesc)
  255. #define GET_RX_DESC_MACID_8821C(rxdesc) GET_RX_DESC_MACID(rxdesc)
  256. /*RXDESC_WORD2*/
  257. #define GET_RX_DESC_FCS_OK_8821C(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  258. #define GET_RX_DESC_PPDU_CNT_8821C(rxdesc) GET_RX_DESC_PPDU_CNT(rxdesc)
  259. #define GET_RX_DESC_C2H_8821C(rxdesc) GET_RX_DESC_C2H(rxdesc)
  260. #define GET_RX_DESC_HWRSVD_8821C(rxdesc) GET_RX_DESC_HWRSVD(rxdesc)
  261. #define GET_RX_DESC_WLANHD_IV_LEN_8821C(rxdesc) \
  262. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  263. #define GET_RX_DESC_RX_IS_QOS_8821C(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  264. #define GET_RX_DESC_FRAG_8821C(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  265. #define GET_RX_DESC_SEQ_8821C(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  266. /*RXDESC_WORD3*/
  267. #define GET_RX_DESC_MAGIC_WAKE_8821C(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  268. #define GET_RX_DESC_UNICAST_WAKE_8821C(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  269. #define GET_RX_DESC_PATTERN_MATCH_8821C(rxdesc) \
  270. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  271. #define GET_RX_DESC_RXPAYLOAD_MATCH_8821C(rxdesc) \
  272. GET_RX_DESC_RXPAYLOAD_MATCH(rxdesc)
  273. #define GET_RX_DESC_RXPAYLOAD_ID_8821C(rxdesc) GET_RX_DESC_RXPAYLOAD_ID(rxdesc)
  274. #define GET_RX_DESC_DMA_AGG_NUM_8821C(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  275. #define GET_RX_DESC_BSSID_FIT_1_0_8821C(rxdesc) \
  276. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  277. #define GET_RX_DESC_EOSP_8821C(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  278. #define GET_RX_DESC_HTC_8821C(rxdesc) GET_RX_DESC_HTC(rxdesc)
  279. #define GET_RX_DESC_BSSID_FIT_4_2_8821C(rxdesc) \
  280. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  281. #define GET_RX_DESC_RX_RATE_8821C(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  282. /*RXDESC_WORD4*/
  283. #define GET_RX_DESC_A1_FIT_8821C(rxdesc) GET_RX_DESC_A1_FIT(rxdesc)
  284. #define GET_RX_DESC_MACID_RPT_BUFF_8821C(rxdesc) \
  285. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  286. #define GET_RX_DESC_RX_PRE_NDP_VLD_8821C(rxdesc) \
  287. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  288. #define GET_RX_DESC_RX_SCRAMBLER_8821C(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  289. #define GET_RX_DESC_RX_EOF_8821C(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  290. #define GET_RX_DESC_PATTERN_IDX_8821C(rxdesc) GET_RX_DESC_PATTERN_IDX(rxdesc)
  291. /*RXDESC_WORD5*/
  292. #define GET_RX_DESC_TSFL_8821C(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  293. #endif
  294. #if (HALMAC_8814B_SUPPORT)
  295. /*RXDESC_WORD0*/
  296. #define GET_RX_DESC_EVT_PKT_8814B(rxdesc) GET_RX_DESC_EVT_PKT(rxdesc)
  297. #define GET_RX_DESC_SWDEC_8814B(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  298. #define GET_RX_DESC_PHYST_8814B(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  299. #define GET_RX_DESC_SHIFT_8814B(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  300. #define GET_RX_DESC_QOS_8814B(rxdesc) GET_RX_DESC_QOS(rxdesc)
  301. #define GET_RX_DESC_SECURITY_8814B(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  302. #define GET_RX_DESC_DRV_INFO_SIZE_8814B(rxdesc) \
  303. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  304. #define GET_RX_DESC_ICV_ERR_8814B(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  305. #define GET_RX_DESC_CRC32_8814B(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  306. #define GET_RX_DESC_PKT_LEN_8814B(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  307. /*RXDESC_WORD1*/
  308. #define GET_RX_DESC_BC_8814B(rxdesc) GET_RX_DESC_BC(rxdesc)
  309. #define GET_RX_DESC_MC_8814B(rxdesc) GET_RX_DESC_MC(rxdesc)
  310. #define GET_RX_DESC_TYPE_8814B(rxdesc) GET_RX_DESC_TYPE(rxdesc)
  311. #define GET_RX_DESC_MF_8814B(rxdesc) GET_RX_DESC_MF(rxdesc)
  312. #define GET_RX_DESC_MD_8814B(rxdesc) GET_RX_DESC_MD(rxdesc)
  313. #define GET_RX_DESC_PWR_8814B(rxdesc) GET_RX_DESC_PWR(rxdesc)
  314. #define GET_RX_DESC_A1_MATCH_8814B(rxdesc) GET_RX_DESC_A1_MATCH(rxdesc)
  315. #define GET_RX_DESC_TCP_CHKSUM_VLD_8814B(rxdesc) \
  316. GET_RX_DESC_TCP_CHKSUM_VLD(rxdesc)
  317. #define GET_RX_DESC_RX_IS_TCP_UDP_8814B(rxdesc) \
  318. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  319. #define GET_RX_DESC_RX_IPV_8814B(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  320. #define GET_RX_DESC_TCP_CHKSUM_ERR_8814B(rxdesc) \
  321. GET_RX_DESC_TCP_CHKSUM_ERR(rxdesc)
  322. #define GET_RX_DESC_PHY_PKT_IDC_8814B(rxdesc) GET_RX_DESC_PHY_PKT_IDC(rxdesc)
  323. #define GET_RX_DESC_FW_FIFO_FULL_8814B(rxdesc) GET_RX_DESC_FW_FIFO_FULL(rxdesc)
  324. #define GET_RX_DESC_AMPDU_8814B(rxdesc) GET_RX_DESC_AMPDU(rxdesc)
  325. #define GET_RX_DESC_RXCMD_IDC_8814B(rxdesc) GET_RX_DESC_RXCMD_IDC(rxdesc)
  326. #define GET_RX_DESC_AMSDU_8814B(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  327. #define GET_RX_DESC_TID_8814B(rxdesc) GET_RX_DESC_TID(rxdesc)
  328. /*RXDESC_WORD2*/
  329. #define GET_RX_DESC_AMSDU_CUT_8814B(rxdesc) GET_RX_DESC_AMSDU_CUT(rxdesc)
  330. #define GET_RX_DESC_PPDU_CNT_8814B(rxdesc) GET_RX_DESC_PPDU_CNT(rxdesc)
  331. #define GET_RX_DESC_C2H_8814B(rxdesc) GET_RX_DESC_C2H(rxdesc)
  332. #define GET_RX_DESC_WLANHD_IV_LEN_8814B(rxdesc) \
  333. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  334. #define GET_RX_DESC_LAST_MSDU_8814B(rxdesc) GET_RX_DESC_LAST_MSDU(rxdesc)
  335. #define GET_RX_DESC_EXT_SEC_TYPE_8814B(rxdesc) GET_RX_DESC_EXT_SEC_TYPE(rxdesc)
  336. #define GET_RX_DESC_FRAG_8814B(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  337. #define GET_RX_DESC_SEQ_8814B(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  338. /*RXDESC_WORD3*/
  339. #define GET_RX_DESC_MAGIC_WAKE_8814B(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  340. #define GET_RX_DESC_UNICAST_WAKE_8814B(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  341. #define GET_RX_DESC_PATTERN_WAKE_8814B(rxdesc) GET_RX_DESC_PATTERN_WAKE(rxdesc)
  342. #define GET_RX_DESC_RXPAYLOAD_MATCH_8814B(rxdesc) \
  343. GET_RX_DESC_RXPAYLOAD_MATCH(rxdesc)
  344. #define GET_RX_DESC_RXPAYLOAD_ID_8814B(rxdesc) GET_RX_DESC_RXPAYLOAD_ID(rxdesc)
  345. #define GET_RX_DESC_DMA_AGG_NUM_8814B(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  346. #define GET_RX_DESC_BSSID_FIT_8814B(rxdesc) GET_RX_DESC_BSSID_FIT(rxdesc)
  347. #define GET_RX_DESC_HTC_8814B(rxdesc) GET_RX_DESC_HTC(rxdesc)
  348. #define GET_RX_DESC_AMPDU_END_PKT_8814B(rxdesc) \
  349. GET_RX_DESC_AMPDU_END_PKT(rxdesc)
  350. #define GET_RX_DESC_ADDRESS_CAM_VLD_8814B(rxdesc) \
  351. GET_RX_DESC_ADDRESS_CAM_VLD(rxdesc)
  352. #define GET_RX_DESC_EOSP_8814B(rxdesc) GET_RX_DESC_EOSP_V1(rxdesc)
  353. #define GET_RX_DESC_RX_RATE_8814B(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  354. /*RXDESC_WORD4*/
  355. #define GET_RX_DESC_ADDRESS_CAM_8814B(rxdesc) GET_RX_DESC_ADDRESS_CAM(rxdesc)
  356. #define GET_RX_DESC_MACID_VLD_8814B(rxdesc) GET_RX_DESC_MACID_VLD_V1(rxdesc)
  357. #define GET_RX_DESC_MACID_8814B(rxdesc) GET_RX_DESC_MACID_V1(rxdesc)
  358. #define GET_RX_DESC_SWPS_RPT_8814B(rxdesc) GET_RX_DESC_SWPS_RPT(rxdesc)
  359. #define GET_RX_DESC_PATTERN_IDX_8814B(rxdesc) GET_RX_DESC_PATTERN_IDX_V2(rxdesc)
  360. /*RXDESC_WORD5*/
  361. #define GET_RX_DESC_FREERUN_CNT_8814B(rxdesc) GET_RX_DESC_FREERUN_CNT(rxdesc)
  362. #endif
  363. #if (HALMAC_8198F_SUPPORT)
  364. /*RXDESC_WORD0*/
  365. #define GET_RX_DESC_EOR_8198F(rxdesc) GET_RX_DESC_EOR(rxdesc)
  366. #define GET_RX_DESC_PHYPKTIDC_8198F(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  367. #define GET_RX_DESC_SWDEC_8198F(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  368. #define GET_RX_DESC_PHYST_8198F(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  369. #define GET_RX_DESC_SHIFT_8198F(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  370. #define GET_RX_DESC_QOS_8198F(rxdesc) GET_RX_DESC_QOS(rxdesc)
  371. #define GET_RX_DESC_SECURITY_8198F(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  372. #define GET_RX_DESC_DRV_INFO_SIZE_8198F(rxdesc) \
  373. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  374. #define GET_RX_DESC_ICV_ERR_8198F(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  375. #define GET_RX_DESC_CRC32_8198F(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  376. #define GET_RX_DESC_PKT_LEN_8198F(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  377. /*RXDESC_WORD1*/
  378. #define GET_RX_DESC_BC_8198F(rxdesc) GET_RX_DESC_BC(rxdesc)
  379. #define GET_RX_DESC_MC_8198F(rxdesc) GET_RX_DESC_MC(rxdesc)
  380. #define GET_RX_DESC_TY_PE_8198F(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  381. #define GET_RX_DESC_MF_8198F(rxdesc) GET_RX_DESC_MF(rxdesc)
  382. #define GET_RX_DESC_MD_8198F(rxdesc) GET_RX_DESC_MD(rxdesc)
  383. #define GET_RX_DESC_PWR_8198F(rxdesc) GET_RX_DESC_PWR(rxdesc)
  384. #define GET_RX_DESC_PAM_8198F(rxdesc) GET_RX_DESC_PAM(rxdesc)
  385. #define GET_RX_DESC_CHK_VLD_8198F(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  386. #define GET_RX_DESC_RX_IS_TCP_UDP_8198F(rxdesc) \
  387. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  388. #define GET_RX_DESC_RX_IPV_8198F(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  389. #define GET_RX_DESC_CHKERR_8198F(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  390. #define GET_RX_DESC_PAGGR_8198F(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  391. #define GET_RX_DESC_RXID_MATCH_8198F(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  392. #define GET_RX_DESC_AMSDU_8198F(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  393. #define GET_RX_DESC_MACID_VLD_8198F(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  394. #define GET_RX_DESC_TID_8198F(rxdesc) GET_RX_DESC_TID(rxdesc)
  395. #define GET_RX_DESC_MACID_8198F(rxdesc) GET_RX_DESC_MACID(rxdesc)
  396. /*RXDESC_WORD2*/
  397. #define GET_RX_DESC_FCS_OK_8198F(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  398. #define GET_RX_DESC_PPDU_CNT_8198F(rxdesc) GET_RX_DESC_PPDU_CNT(rxdesc)
  399. #define GET_RX_DESC_C2H_8198F(rxdesc) GET_RX_DESC_C2H(rxdesc)
  400. #define GET_RX_DESC_HWRSVD_8198F(rxdesc) GET_RX_DESC_HWRSVD_V1(rxdesc)
  401. #define GET_RX_DESC_RXMAGPKT_8198F(rxdesc) GET_RX_DESC_RXMAGPKT(rxdesc)
  402. #define GET_RX_DESC_WLANHD_IV_LEN_8198F(rxdesc) \
  403. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  404. #define GET_RX_DESC_RX_IS_QOS_8198F(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  405. #define GET_RX_DESC_FRAG_8198F(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  406. #define GET_RX_DESC_SEQ_8198F(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  407. /*RXDESC_WORD3*/
  408. #define GET_RX_DESC_MAGIC_WAKE_8198F(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  409. #define GET_RX_DESC_UNICAST_WAKE_8198F(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  410. #define GET_RX_DESC_PATTERN_MATCH_8198F(rxdesc) \
  411. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  412. #define GET_RX_DESC_RXPAYLOAD_MATCH_8198F(rxdesc) \
  413. GET_RX_DESC_RXPAYLOAD_MATCH(rxdesc)
  414. #define GET_RX_DESC_RXPAYLOAD_ID_8198F(rxdesc) GET_RX_DESC_RXPAYLOAD_ID(rxdesc)
  415. #define GET_RX_DESC_DMA_AGG_NUM_8198F(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  416. #define GET_RX_DESC_BSSID_FIT_1_0_8198F(rxdesc) \
  417. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  418. #define GET_RX_DESC_EOSP_8198F(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  419. #define GET_RX_DESC_HTC_8198F(rxdesc) GET_RX_DESC_HTC(rxdesc)
  420. #define GET_RX_DESC_BSSID_FIT_4_2_8198F(rxdesc) \
  421. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  422. #define GET_RX_DESC_RX_RATE_8198F(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  423. /*RXDESC_WORD4*/
  424. #define GET_RX_DESC_A1_FIT_A1_8198F(rxdesc) GET_RX_DESC_A1_FIT_A1(rxdesc)
  425. #define GET_RX_DESC_MACID_RPT_BUFF_8198F(rxdesc) \
  426. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  427. #define GET_RX_DESC_RX_PRE_NDP_VLD_8198F(rxdesc) \
  428. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  429. #define GET_RX_DESC_RX_SCRAMBLER_8198F(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  430. #define GET_RX_DESC_RX_EOF_8198F(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  431. #define GET_RX_DESC_FC_POWER_8198F(rxdesc) GET_RX_DESC_FC_POWER(rxdesc)
  432. #define GET_RX_DESC_TXRPTMID_CTL_MASK_8198F(rxdesc) \
  433. GET_RX_DESC_TXRPTMID_CTL_MASK(rxdesc)
  434. #define GET_RX_DESC_SWPS_RPT_8198F(rxdesc) GET_RX_DESC_SWPS_RPT(rxdesc)
  435. #define GET_RX_DESC_PATTERN_IDX_8198F(rxdesc) GET_RX_DESC_PATTERN_IDX_V1(rxdesc)
  436. /*RXDESC_WORD5*/
  437. #define GET_RX_DESC_TSFL_8198F(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  438. #endif
  439. #if (HALMAC_8822C_SUPPORT)
  440. /*RXDESC_WORD0*/
  441. #define GET_RX_DESC_EOR_8822C(rxdesc) GET_RX_DESC_EOR(rxdesc)
  442. #define GET_RX_DESC_PHYPKTIDC_8822C(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  443. #define GET_RX_DESC_SWDEC_8822C(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  444. #define GET_RX_DESC_PHYST_8822C(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  445. #define GET_RX_DESC_SHIFT_8822C(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  446. #define GET_RX_DESC_QOS_8822C(rxdesc) GET_RX_DESC_QOS(rxdesc)
  447. #define GET_RX_DESC_SECURITY_8822C(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  448. #define GET_RX_DESC_DRV_INFO_SIZE_8822C(rxdesc) \
  449. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  450. #define GET_RX_DESC_ICV_ERR_8822C(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  451. #define GET_RX_DESC_CRC32_8822C(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  452. #define GET_RX_DESC_PKT_LEN_8822C(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  453. /*RXDESC_WORD1*/
  454. #define GET_RX_DESC_BC_8822C(rxdesc) GET_RX_DESC_BC(rxdesc)
  455. #define GET_RX_DESC_MC_8822C(rxdesc) GET_RX_DESC_MC(rxdesc)
  456. #define GET_RX_DESC_TY_PE_8822C(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  457. #define GET_RX_DESC_MF_8822C(rxdesc) GET_RX_DESC_MF(rxdesc)
  458. #define GET_RX_DESC_MD_8822C(rxdesc) GET_RX_DESC_MD(rxdesc)
  459. #define GET_RX_DESC_PWR_8822C(rxdesc) GET_RX_DESC_PWR(rxdesc)
  460. #define GET_RX_DESC_PAM_8822C(rxdesc) GET_RX_DESC_PAM(rxdesc)
  461. #define GET_RX_DESC_CHK_VLD_8822C(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  462. #define GET_RX_DESC_RX_IS_TCP_UDP_8822C(rxdesc) \
  463. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  464. #define GET_RX_DESC_RX_IPV_8822C(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  465. #define GET_RX_DESC_CHKERR_8822C(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  466. #define GET_RX_DESC_PAGGR_8822C(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  467. #define GET_RX_DESC_RXID_MATCH_8822C(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  468. #define GET_RX_DESC_AMSDU_8822C(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  469. #define GET_RX_DESC_MACID_VLD_8822C(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  470. #define GET_RX_DESC_TID_8822C(rxdesc) GET_RX_DESC_TID(rxdesc)
  471. #define GET_RX_DESC_MACID_8822C(rxdesc) GET_RX_DESC_MACID(rxdesc)
  472. /*RXDESC_WORD2*/
  473. #define GET_RX_DESC_FCS_OK_8822C(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  474. #define GET_RX_DESC_PPDU_CNT_8822C(rxdesc) GET_RX_DESC_PPDU_CNT(rxdesc)
  475. #define GET_RX_DESC_C2H_8822C(rxdesc) GET_RX_DESC_C2H(rxdesc)
  476. #define GET_RX_DESC_HWRSVD_8822C(rxdesc) GET_RX_DESC_HWRSVD(rxdesc)
  477. #define GET_RX_DESC_WLANHD_IV_LEN_8822C(rxdesc) \
  478. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  479. #define GET_RX_DESC_RX_STATISTICS_8822C(rxdesc) \
  480. GET_RX_DESC_RX_STATISTICS(rxdesc)
  481. #define GET_RX_DESC_RX_IS_QOS_8822C(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  482. #define GET_RX_DESC_FRAG_8822C(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  483. #define GET_RX_DESC_SEQ_8822C(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  484. /*RXDESC_WORD3*/
  485. #define GET_RX_DESC_MAGIC_WAKE_8822C(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  486. #define GET_RX_DESC_UNICAST_WAKE_8822C(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  487. #define GET_RX_DESC_PATTERN_MATCH_8822C(rxdesc) \
  488. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  489. #define GET_RX_DESC_RXPAYLOAD_MATCH_8822C(rxdesc) \
  490. GET_RX_DESC_RXPAYLOAD_MATCH(rxdesc)
  491. #define GET_RX_DESC_RXPAYLOAD_ID_8822C(rxdesc) GET_RX_DESC_RXPAYLOAD_ID(rxdesc)
  492. #define GET_RX_DESC_DMA_AGG_NUM_8822C(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  493. #define GET_RX_DESC_BSSID_FIT_1_0_8822C(rxdesc) \
  494. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  495. #define GET_RX_DESC_EOSP_8822C(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  496. #define GET_RX_DESC_HTC_8822C(rxdesc) GET_RX_DESC_HTC(rxdesc)
  497. #define GET_RX_DESC_BSSID_FIT_4_2_8822C(rxdesc) \
  498. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  499. #define GET_RX_DESC_RX_RATE_8822C(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  500. /*RXDESC_WORD4*/
  501. #define GET_RX_DESC_A1_FIT_8822C(rxdesc) GET_RX_DESC_A1_FIT(rxdesc)
  502. #define GET_RX_DESC_MACID_RPT_BUFF_8822C(rxdesc) \
  503. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  504. #define GET_RX_DESC_RX_PRE_NDP_VLD_8822C(rxdesc) \
  505. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  506. #define GET_RX_DESC_RX_SCRAMBLER_8822C(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  507. #define GET_RX_DESC_RX_EOF_8822C(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  508. #define GET_RX_DESC_PATTERN_IDX_8822C(rxdesc) GET_RX_DESC_PATTERN_IDX(rxdesc)
  509. /*RXDESC_WORD5*/
  510. #define GET_RX_DESC_TSFL_8822C(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  511. #endif
  512. #if (HALMAC_8812F_SUPPORT)
  513. /*RXDESC_WORD0*/
  514. #define GET_RX_DESC_EOR_8812F(rxdesc) GET_RX_DESC_EOR(rxdesc)
  515. #define GET_RX_DESC_PHYPKTIDC_8812F(rxdesc) GET_RX_DESC_PHYPKTIDC(rxdesc)
  516. #define GET_RX_DESC_SWDEC_8812F(rxdesc) GET_RX_DESC_SWDEC(rxdesc)
  517. #define GET_RX_DESC_PHYST_8812F(rxdesc) GET_RX_DESC_PHYST(rxdesc)
  518. #define GET_RX_DESC_SHIFT_8812F(rxdesc) GET_RX_DESC_SHIFT(rxdesc)
  519. #define GET_RX_DESC_QOS_8812F(rxdesc) GET_RX_DESC_QOS(rxdesc)
  520. #define GET_RX_DESC_SECURITY_8812F(rxdesc) GET_RX_DESC_SECURITY(rxdesc)
  521. #define GET_RX_DESC_DRV_INFO_SIZE_8812F(rxdesc) \
  522. GET_RX_DESC_DRV_INFO_SIZE(rxdesc)
  523. #define GET_RX_DESC_ICV_ERR_8812F(rxdesc) GET_RX_DESC_ICV_ERR(rxdesc)
  524. #define GET_RX_DESC_CRC32_8812F(rxdesc) GET_RX_DESC_CRC32(rxdesc)
  525. #define GET_RX_DESC_PKT_LEN_8812F(rxdesc) GET_RX_DESC_PKT_LEN(rxdesc)
  526. /*RXDESC_WORD1*/
  527. #define GET_RX_DESC_BC_8812F(rxdesc) GET_RX_DESC_BC(rxdesc)
  528. #define GET_RX_DESC_MC_8812F(rxdesc) GET_RX_DESC_MC(rxdesc)
  529. #define GET_RX_DESC_TY_PE_8812F(rxdesc) GET_RX_DESC_TY_PE(rxdesc)
  530. #define GET_RX_DESC_MF_8812F(rxdesc) GET_RX_DESC_MF(rxdesc)
  531. #define GET_RX_DESC_MD_8812F(rxdesc) GET_RX_DESC_MD(rxdesc)
  532. #define GET_RX_DESC_PWR_8812F(rxdesc) GET_RX_DESC_PWR(rxdesc)
  533. #define GET_RX_DESC_PAM_8812F(rxdesc) GET_RX_DESC_PAM(rxdesc)
  534. #define GET_RX_DESC_CHK_VLD_8812F(rxdesc) GET_RX_DESC_CHK_VLD(rxdesc)
  535. #define GET_RX_DESC_RX_IS_TCP_UDP_8812F(rxdesc) \
  536. GET_RX_DESC_RX_IS_TCP_UDP(rxdesc)
  537. #define GET_RX_DESC_RX_IPV_8812F(rxdesc) GET_RX_DESC_RX_IPV(rxdesc)
  538. #define GET_RX_DESC_CHKERR_8812F(rxdesc) GET_RX_DESC_CHKERR(rxdesc)
  539. #define GET_RX_DESC_PAGGR_8812F(rxdesc) GET_RX_DESC_PAGGR(rxdesc)
  540. #define GET_RX_DESC_RXID_MATCH_8812F(rxdesc) GET_RX_DESC_RXID_MATCH(rxdesc)
  541. #define GET_RX_DESC_AMSDU_8812F(rxdesc) GET_RX_DESC_AMSDU(rxdesc)
  542. #define GET_RX_DESC_MACID_VLD_8812F(rxdesc) GET_RX_DESC_MACID_VLD(rxdesc)
  543. #define GET_RX_DESC_TID_8812F(rxdesc) GET_RX_DESC_TID(rxdesc)
  544. #define GET_RX_DESC_MACID_8812F(rxdesc) GET_RX_DESC_MACID(rxdesc)
  545. /*RXDESC_WORD2*/
  546. #define GET_RX_DESC_FCS_OK_8812F(rxdesc) GET_RX_DESC_FCS_OK(rxdesc)
  547. #define GET_RX_DESC_PPDU_CNT_8812F(rxdesc) GET_RX_DESC_PPDU_CNT(rxdesc)
  548. #define GET_RX_DESC_C2H_8812F(rxdesc) GET_RX_DESC_C2H(rxdesc)
  549. #define GET_RX_DESC_HWRSVD_8812F(rxdesc) GET_RX_DESC_HWRSVD(rxdesc)
  550. #define GET_RX_DESC_WLANHD_IV_LEN_8812F(rxdesc) \
  551. GET_RX_DESC_WLANHD_IV_LEN(rxdesc)
  552. #define GET_RX_DESC_RX_STATISTICS_8812F(rxdesc) \
  553. GET_RX_DESC_RX_STATISTICS(rxdesc)
  554. #define GET_RX_DESC_RX_IS_QOS_8812F(rxdesc) GET_RX_DESC_RX_IS_QOS(rxdesc)
  555. #define GET_RX_DESC_FRAG_8812F(rxdesc) GET_RX_DESC_FRAG(rxdesc)
  556. #define GET_RX_DESC_SEQ_8812F(rxdesc) GET_RX_DESC_SEQ(rxdesc)
  557. /*RXDESC_WORD3*/
  558. #define GET_RX_DESC_MAGIC_WAKE_8812F(rxdesc) GET_RX_DESC_MAGIC_WAKE(rxdesc)
  559. #define GET_RX_DESC_UNICAST_WAKE_8812F(rxdesc) GET_RX_DESC_UNICAST_WAKE(rxdesc)
  560. #define GET_RX_DESC_PATTERN_MATCH_8812F(rxdesc) \
  561. GET_RX_DESC_PATTERN_MATCH(rxdesc)
  562. #define GET_RX_DESC_RXPAYLOAD_MATCH_8812F(rxdesc) \
  563. GET_RX_DESC_RXPAYLOAD_MATCH(rxdesc)
  564. #define GET_RX_DESC_RXPAYLOAD_ID_8812F(rxdesc) GET_RX_DESC_RXPAYLOAD_ID(rxdesc)
  565. #define GET_RX_DESC_DMA_AGG_NUM_8812F(rxdesc) GET_RX_DESC_DMA_AGG_NUM(rxdesc)
  566. #define GET_RX_DESC_BSSID_FIT_1_0_8812F(rxdesc) \
  567. GET_RX_DESC_BSSID_FIT_1_0(rxdesc)
  568. #define GET_RX_DESC_EOSP_8812F(rxdesc) GET_RX_DESC_EOSP(rxdesc)
  569. #define GET_RX_DESC_HTC_8812F(rxdesc) GET_RX_DESC_HTC(rxdesc)
  570. #define GET_RX_DESC_BSSID_FIT_4_2_8812F(rxdesc) \
  571. GET_RX_DESC_BSSID_FIT_4_2(rxdesc)
  572. #define GET_RX_DESC_RX_RATE_8812F(rxdesc) GET_RX_DESC_RX_RATE(rxdesc)
  573. /*RXDESC_WORD4*/
  574. #define GET_RX_DESC_A1_FIT_8812F(rxdesc) GET_RX_DESC_A1_FIT(rxdesc)
  575. #define GET_RX_DESC_MACID_RPT_BUFF_8812F(rxdesc) \
  576. GET_RX_DESC_MACID_RPT_BUFF(rxdesc)
  577. #define GET_RX_DESC_RX_PRE_NDP_VLD_8812F(rxdesc) \
  578. GET_RX_DESC_RX_PRE_NDP_VLD(rxdesc)
  579. #define GET_RX_DESC_RX_SCRAMBLER_8812F(rxdesc) GET_RX_DESC_RX_SCRAMBLER(rxdesc)
  580. #define GET_RX_DESC_RX_EOF_8812F(rxdesc) GET_RX_DESC_RX_EOF(rxdesc)
  581. #define GET_RX_DESC_PATTERN_IDX_8812F(rxdesc) GET_RX_DESC_PATTERN_IDX(rxdesc)
  582. /*RXDESC_WORD5*/
  583. #define GET_RX_DESC_TSFL_8812F(rxdesc) GET_RX_DESC_TSFL(rxdesc)
  584. #endif
  585. #endif