pdg_response_rate_setting.h 30 KB

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