pdg_response_rate_setting.h 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418
  1. /*
  2. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
  3. *
  4. * Permission to use, copy, modify, and/or distribute this software for any
  5. * purpose with or without fee is hereby granted, provided that the above
  6. * copyright notice and this permission notice appear in all copies.
  7. *
  8. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
  9. * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
  10. * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
  11. * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  12. * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
  13. * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
  14. * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  15. */
  16. #ifndef _PDG_RESPONSE_RATE_SETTING_H_
  17. #define _PDG_RESPONSE_RATE_SETTING_H_
  18. #if !defined(__ASSEMBLER__)
  19. #endif
  20. #include "mlo_sta_id_details.h"
  21. #define NUM_OF_DWORDS_PDG_RESPONSE_RATE_SETTING 7
  22. struct pdg_response_rate_setting {
  23. #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
  24. uint32_t reserved_0a : 1,
  25. tx_antenna_sector_ctrl : 24,
  26. pkt_type : 4,
  27. smoothing : 1,
  28. ldpc : 1,
  29. stbc : 1;
  30. uint32_t alt_tx_pwr : 8,
  31. alt_min_tx_pwr : 8,
  32. alt_nss : 3,
  33. alt_tx_chain_mask : 8,
  34. alt_bw : 3,
  35. stf_ltf_3db_boost : 1,
  36. force_extra_symbol : 1;
  37. uint32_t alt_rate_mcs : 4,
  38. nss : 3,
  39. dpd_enable : 1,
  40. tx_pwr : 8,
  41. min_tx_pwr : 8,
  42. tx_chain_mask : 8;
  43. uint32_t reserved_3a : 8,
  44. sgi : 2,
  45. rate_mcs : 4,
  46. reserved_3b : 2,
  47. tx_pwr_1 : 8,
  48. alt_tx_pwr_1 : 8;
  49. uint32_t aggregation : 1,
  50. dot11ax_bss_color_id : 6,
  51. dot11ax_spatial_reuse : 4,
  52. dot11ax_cp_ltf_size : 2,
  53. dot11ax_dcm : 1,
  54. dot11ax_doppler_indication : 1,
  55. dot11ax_su_extended : 1,
  56. dot11ax_min_packet_extension : 2,
  57. dot11ax_pe_nss : 3,
  58. dot11ax_pe_content : 1,
  59. dot11ax_pe_ltf_size : 2,
  60. dot11ax_chain_csd_en : 1,
  61. dot11ax_pe_chain_csd_en : 1,
  62. dot11ax_dl_ul_flag : 1,
  63. reserved_4a : 5;
  64. uint32_t dot11ax_ext_ru_start_index : 4,
  65. dot11ax_ext_ru_size : 4,
  66. eht_duplicate_mode : 2,
  67. he_sigb_dcm : 1,
  68. he_sigb_0_mcs : 3,
  69. num_he_sigb_sym : 5,
  70. required_response_time_source : 1,
  71. reserved_5a : 6,
  72. u_sig_puncture_pattern_encoding : 6;
  73. struct mlo_sta_id_details mlo_sta_id_details_rx;
  74. uint16_t required_response_time : 12,
  75. dot11be_params_placeholder : 4;
  76. #else
  77. uint32_t stbc : 1,
  78. ldpc : 1,
  79. smoothing : 1,
  80. pkt_type : 4,
  81. tx_antenna_sector_ctrl : 24,
  82. reserved_0a : 1;
  83. uint32_t force_extra_symbol : 1,
  84. stf_ltf_3db_boost : 1,
  85. alt_bw : 3,
  86. alt_tx_chain_mask : 8,
  87. alt_nss : 3,
  88. alt_min_tx_pwr : 8,
  89. alt_tx_pwr : 8;
  90. uint32_t tx_chain_mask : 8,
  91. min_tx_pwr : 8,
  92. tx_pwr : 8,
  93. dpd_enable : 1,
  94. nss : 3,
  95. alt_rate_mcs : 4;
  96. uint32_t alt_tx_pwr_1 : 8,
  97. tx_pwr_1 : 8,
  98. reserved_3b : 2,
  99. rate_mcs : 4,
  100. sgi : 2,
  101. reserved_3a : 8;
  102. uint32_t reserved_4a : 5,
  103. dot11ax_dl_ul_flag : 1,
  104. dot11ax_pe_chain_csd_en : 1,
  105. dot11ax_chain_csd_en : 1,
  106. dot11ax_pe_ltf_size : 2,
  107. dot11ax_pe_content : 1,
  108. dot11ax_pe_nss : 3,
  109. dot11ax_min_packet_extension : 2,
  110. dot11ax_su_extended : 1,
  111. dot11ax_doppler_indication : 1,
  112. dot11ax_dcm : 1,
  113. dot11ax_cp_ltf_size : 2,
  114. dot11ax_spatial_reuse : 4,
  115. dot11ax_bss_color_id : 6,
  116. aggregation : 1;
  117. uint32_t u_sig_puncture_pattern_encoding : 6,
  118. reserved_5a : 6,
  119. required_response_time_source : 1,
  120. num_he_sigb_sym : 5,
  121. he_sigb_0_mcs : 3,
  122. he_sigb_dcm : 1,
  123. eht_duplicate_mode : 2,
  124. dot11ax_ext_ru_size : 4,
  125. dot11ax_ext_ru_start_index : 4;
  126. uint32_t dot11be_params_placeholder : 4,
  127. required_response_time : 12;
  128. struct mlo_sta_id_details mlo_sta_id_details_rx;
  129. #endif
  130. };
  131. #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_OFFSET 0x00000000
  132. #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_LSB 0
  133. #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_MSB 0
  134. #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_MASK 0x00000001
  135. #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_OFFSET 0x00000000
  136. #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_LSB 1
  137. #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_MSB 24
  138. #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_MASK 0x01fffffe
  139. #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_OFFSET 0x00000000
  140. #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_LSB 25
  141. #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_MSB 28
  142. #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_MASK 0x1e000000
  143. #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_OFFSET 0x00000000
  144. #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_LSB 29
  145. #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_MSB 29
  146. #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_MASK 0x20000000
  147. #define PDG_RESPONSE_RATE_SETTING_LDPC_OFFSET 0x00000000
  148. #define PDG_RESPONSE_RATE_SETTING_LDPC_LSB 30
  149. #define PDG_RESPONSE_RATE_SETTING_LDPC_MSB 30
  150. #define PDG_RESPONSE_RATE_SETTING_LDPC_MASK 0x40000000
  151. #define PDG_RESPONSE_RATE_SETTING_STBC_OFFSET 0x00000000
  152. #define PDG_RESPONSE_RATE_SETTING_STBC_LSB 31
  153. #define PDG_RESPONSE_RATE_SETTING_STBC_MSB 31
  154. #define PDG_RESPONSE_RATE_SETTING_STBC_MASK 0x80000000
  155. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_OFFSET 0x00000004
  156. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_LSB 0
  157. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_MSB 7
  158. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_MASK 0x000000ff
  159. #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_OFFSET 0x00000004
  160. #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_LSB 8
  161. #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_MSB 15
  162. #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_MASK 0x0000ff00
  163. #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_OFFSET 0x00000004
  164. #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_LSB 16
  165. #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_MSB 18
  166. #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_MASK 0x00070000
  167. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_OFFSET 0x00000004
  168. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_LSB 19
  169. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_MSB 26
  170. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_MASK 0x07f80000
  171. #define PDG_RESPONSE_RATE_SETTING_ALT_BW_OFFSET 0x00000004
  172. #define PDG_RESPONSE_RATE_SETTING_ALT_BW_LSB 27
  173. #define PDG_RESPONSE_RATE_SETTING_ALT_BW_MSB 29
  174. #define PDG_RESPONSE_RATE_SETTING_ALT_BW_MASK 0x38000000
  175. #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_OFFSET 0x00000004
  176. #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_LSB 30
  177. #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_MSB 30
  178. #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_MASK 0x40000000
  179. #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_OFFSET 0x00000004
  180. #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_LSB 31
  181. #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_MSB 31
  182. #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_MASK 0x80000000
  183. #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_OFFSET 0x00000008
  184. #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_LSB 0
  185. #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_MSB 3
  186. #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_MASK 0x0000000f
  187. #define PDG_RESPONSE_RATE_SETTING_NSS_OFFSET 0x00000008
  188. #define PDG_RESPONSE_RATE_SETTING_NSS_LSB 4
  189. #define PDG_RESPONSE_RATE_SETTING_NSS_MSB 6
  190. #define PDG_RESPONSE_RATE_SETTING_NSS_MASK 0x00000070
  191. #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_OFFSET 0x00000008
  192. #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_LSB 7
  193. #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_MSB 7
  194. #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_MASK 0x00000080
  195. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_OFFSET 0x00000008
  196. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_LSB 8
  197. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_MSB 15
  198. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_MASK 0x0000ff00
  199. #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_OFFSET 0x00000008
  200. #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_LSB 16
  201. #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_MSB 23
  202. #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_MASK 0x00ff0000
  203. #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_OFFSET 0x00000008
  204. #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_LSB 24
  205. #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_MSB 31
  206. #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_MASK 0xff000000
  207. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_OFFSET 0x0000000c
  208. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_LSB 0
  209. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_MSB 7
  210. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_MASK 0x000000ff
  211. #define PDG_RESPONSE_RATE_SETTING_SGI_OFFSET 0x0000000c
  212. #define PDG_RESPONSE_RATE_SETTING_SGI_LSB 8
  213. #define PDG_RESPONSE_RATE_SETTING_SGI_MSB 9
  214. #define PDG_RESPONSE_RATE_SETTING_SGI_MASK 0x00000300
  215. #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_OFFSET 0x0000000c
  216. #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_LSB 10
  217. #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_MSB 13
  218. #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_MASK 0x00003c00
  219. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_OFFSET 0x0000000c
  220. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_LSB 14
  221. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_MSB 15
  222. #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_MASK 0x0000c000
  223. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_OFFSET 0x0000000c
  224. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_LSB 16
  225. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_MSB 23
  226. #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_MASK 0x00ff0000
  227. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_OFFSET 0x0000000c
  228. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_LSB 24
  229. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_MSB 31
  230. #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_MASK 0xff000000
  231. #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_OFFSET 0x00000010
  232. #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_LSB 0
  233. #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_MSB 0
  234. #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_MASK 0x00000001
  235. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_OFFSET 0x00000010
  236. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_LSB 1
  237. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_MSB 6
  238. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_MASK 0x0000007e
  239. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_OFFSET 0x00000010
  240. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_LSB 7
  241. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_MSB 10
  242. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_MASK 0x00000780
  243. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_OFFSET 0x00000010
  244. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_LSB 11
  245. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_MSB 12
  246. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_MASK 0x00001800
  247. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_OFFSET 0x00000010
  248. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_LSB 13
  249. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_MSB 13
  250. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_MASK 0x00002000
  251. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_OFFSET 0x00000010
  252. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_LSB 14
  253. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_MSB 14
  254. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_MASK 0x00004000
  255. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_OFFSET 0x00000010
  256. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_LSB 15
  257. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_MSB 15
  258. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_MASK 0x00008000
  259. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_OFFSET 0x00000010
  260. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_LSB 16
  261. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_MSB 17
  262. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_MASK 0x00030000
  263. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_OFFSET 0x00000010
  264. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_LSB 18
  265. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_MSB 20
  266. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_MASK 0x001c0000
  267. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_OFFSET 0x00000010
  268. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_LSB 21
  269. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_MSB 21
  270. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_MASK 0x00200000
  271. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_OFFSET 0x00000010
  272. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_LSB 22
  273. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_MSB 23
  274. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_MASK 0x00c00000
  275. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_OFFSET 0x00000010
  276. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_LSB 24
  277. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_MSB 24
  278. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_MASK 0x01000000
  279. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_OFFSET 0x00000010
  280. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_LSB 25
  281. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_MSB 25
  282. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_MASK 0x02000000
  283. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_OFFSET 0x00000010
  284. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_LSB 26
  285. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_MSB 26
  286. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_MASK 0x04000000
  287. #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_OFFSET 0x00000010
  288. #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_LSB 27
  289. #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_MSB 31
  290. #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_MASK 0xf8000000
  291. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_OFFSET 0x00000014
  292. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_LSB 0
  293. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_MSB 3
  294. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_MASK 0x0000000f
  295. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_OFFSET 0x00000014
  296. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_LSB 4
  297. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_MSB 7
  298. #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_MASK 0x000000f0
  299. #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_OFFSET 0x00000014
  300. #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_LSB 8
  301. #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_MSB 9
  302. #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_MASK 0x00000300
  303. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_OFFSET 0x00000014
  304. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_LSB 10
  305. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_MSB 10
  306. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_MASK 0x00000400
  307. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_OFFSET 0x00000014
  308. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_LSB 11
  309. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_MSB 13
  310. #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_MASK 0x00003800
  311. #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_OFFSET 0x00000014
  312. #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_LSB 14
  313. #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_MSB 18
  314. #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_MASK 0x0007c000
  315. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_OFFSET 0x00000014
  316. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_LSB 19
  317. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_MSB 19
  318. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_MASK 0x00080000
  319. #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_OFFSET 0x00000014
  320. #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_LSB 20
  321. #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_MSB 25
  322. #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_MASK 0x03f00000
  323. #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET 0x00000014
  324. #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB 26
  325. #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB 31
  326. #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK 0xfc000000
  327. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET 0x00000018
  328. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB 0
  329. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB 9
  330. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK 0x000003ff
  331. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET 0x00000018
  332. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB 10
  333. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB 10
  334. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK 0x00000400
  335. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET 0x00000018
  336. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB 11
  337. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB 11
  338. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK 0x00000800
  339. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET 0x00000018
  340. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB 12
  341. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB 12
  342. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK 0x00001000
  343. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET 0x00000018
  344. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB 13
  345. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB 15
  346. #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK 0x0000e000
  347. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_OFFSET 0x00000018
  348. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_LSB 16
  349. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_MSB 27
  350. #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_MASK 0x0fff0000
  351. #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_OFFSET 0x00000018
  352. #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_LSB 28
  353. #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_MSB 31
  354. #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_MASK 0xf0000000
  355. #endif