1 2 /* Copyright (c) 2022, 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 17 18 19 20 21 22 23 24 25 26 #ifndef _PDG_RESPONSE_RATE_SETTING_H_ 27 #define _PDG_RESPONSE_RATE_SETTING_H_ 28 #if !defined(__ASSEMBLER__) 29 #endif 30 31 #include "mlo_sta_id_details.h" 32 #define NUM_OF_DWORDS_PDG_RESPONSE_RATE_SETTING 7 33 34 35 struct pdg_response_rate_setting { 36 #ifndef WIFI_BIT_ORDER_BIG_ENDIAN 37 uint32_t reserved_0a : 1, // [0:0] 38 tx_antenna_sector_ctrl : 24, // [24:1] 39 pkt_type : 4, // [28:25] 40 smoothing : 1, // [29:29] 41 ldpc : 1, // [30:30] 42 stbc : 1; // [31:31] 43 uint32_t alt_tx_pwr : 8, // [7:0] 44 alt_min_tx_pwr : 8, // [15:8] 45 alt_nss : 3, // [18:16] 46 alt_tx_chain_mask : 8, // [26:19] 47 alt_bw : 3, // [29:27] 48 stf_ltf_3db_boost : 1, // [30:30] 49 force_extra_symbol : 1; // [31:31] 50 uint32_t alt_rate_mcs : 4, // [3:0] 51 nss : 3, // [6:4] 52 dpd_enable : 1, // [7:7] 53 tx_pwr : 8, // [15:8] 54 min_tx_pwr : 8, // [23:16] 55 tx_chain_mask : 8; // [31:24] 56 uint32_t reserved_3a : 8, // [7:0] 57 sgi : 2, // [9:8] 58 rate_mcs : 4, // [13:10] 59 reserved_3b : 2, // [15:14] 60 tx_pwr_1 : 8, // [23:16] 61 alt_tx_pwr_1 : 8; // [31:24] 62 uint32_t aggregation : 1, // [0:0] 63 dot11ax_bss_color_id : 6, // [6:1] 64 dot11ax_spatial_reuse : 4, // [10:7] 65 dot11ax_cp_ltf_size : 2, // [12:11] 66 dot11ax_dcm : 1, // [13:13] 67 dot11ax_doppler_indication : 1, // [14:14] 68 dot11ax_su_extended : 1, // [15:15] 69 dot11ax_min_packet_extension : 2, // [17:16] 70 dot11ax_pe_nss : 3, // [20:18] 71 dot11ax_pe_content : 1, // [21:21] 72 dot11ax_pe_ltf_size : 2, // [23:22] 73 dot11ax_chain_csd_en : 1, // [24:24] 74 dot11ax_pe_chain_csd_en : 1, // [25:25] 75 dot11ax_dl_ul_flag : 1, // [26:26] 76 reserved_4a : 5; // [31:27] 77 uint32_t dot11ax_ext_ru_start_index : 4, // [3:0] 78 dot11ax_ext_ru_size : 4, // [7:4] 79 eht_duplicate_mode : 2, // [9:8] 80 he_sigb_dcm : 1, // [10:10] 81 he_sigb_0_mcs : 3, // [13:11] 82 num_he_sigb_sym : 5, // [18:14] 83 required_response_time_source : 1, // [19:19] 84 reserved_5a : 6, // [25:20] 85 u_sig_puncture_pattern_encoding : 6; // [31:26] 86 struct mlo_sta_id_details mlo_sta_id_details_rx; 87 uint16_t required_response_time : 12, // [27:16] 88 dot11be_params_placeholder : 4; // [31:28] 89 #else 90 uint32_t stbc : 1, // [31:31] 91 ldpc : 1, // [30:30] 92 smoothing : 1, // [29:29] 93 pkt_type : 4, // [28:25] 94 tx_antenna_sector_ctrl : 24, // [24:1] 95 reserved_0a : 1; // [0:0] 96 uint32_t force_extra_symbol : 1, // [31:31] 97 stf_ltf_3db_boost : 1, // [30:30] 98 alt_bw : 3, // [29:27] 99 alt_tx_chain_mask : 8, // [26:19] 100 alt_nss : 3, // [18:16] 101 alt_min_tx_pwr : 8, // [15:8] 102 alt_tx_pwr : 8; // [7:0] 103 uint32_t tx_chain_mask : 8, // [31:24] 104 min_tx_pwr : 8, // [23:16] 105 tx_pwr : 8, // [15:8] 106 dpd_enable : 1, // [7:7] 107 nss : 3, // [6:4] 108 alt_rate_mcs : 4; // [3:0] 109 uint32_t alt_tx_pwr_1 : 8, // [31:24] 110 tx_pwr_1 : 8, // [23:16] 111 reserved_3b : 2, // [15:14] 112 rate_mcs : 4, // [13:10] 113 sgi : 2, // [9:8] 114 reserved_3a : 8; // [7:0] 115 uint32_t reserved_4a : 5, // [31:27] 116 dot11ax_dl_ul_flag : 1, // [26:26] 117 dot11ax_pe_chain_csd_en : 1, // [25:25] 118 dot11ax_chain_csd_en : 1, // [24:24] 119 dot11ax_pe_ltf_size : 2, // [23:22] 120 dot11ax_pe_content : 1, // [21:21] 121 dot11ax_pe_nss : 3, // [20:18] 122 dot11ax_min_packet_extension : 2, // [17:16] 123 dot11ax_su_extended : 1, // [15:15] 124 dot11ax_doppler_indication : 1, // [14:14] 125 dot11ax_dcm : 1, // [13:13] 126 dot11ax_cp_ltf_size : 2, // [12:11] 127 dot11ax_spatial_reuse : 4, // [10:7] 128 dot11ax_bss_color_id : 6, // [6:1] 129 aggregation : 1; // [0:0] 130 uint32_t u_sig_puncture_pattern_encoding : 6, // [31:26] 131 reserved_5a : 6, // [25:20] 132 required_response_time_source : 1, // [19:19] 133 num_he_sigb_sym : 5, // [18:14] 134 he_sigb_0_mcs : 3, // [13:11] 135 he_sigb_dcm : 1, // [10:10] 136 eht_duplicate_mode : 2, // [9:8] 137 dot11ax_ext_ru_size : 4, // [7:4] 138 dot11ax_ext_ru_start_index : 4; // [3:0] 139 uint32_t dot11be_params_placeholder : 4, // [31:28] 140 required_response_time : 12; // [27:16] 141 struct mlo_sta_id_details mlo_sta_id_details_rx; 142 #endif 143 }; 144 145 146 /* Description RESERVED_0A 147 148 149 <legal 0> 150 */ 151 152 #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_OFFSET 0x00000000 153 #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_LSB 0 154 #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_MSB 0 155 #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_MASK 0x00000001 156 157 158 /* Description TX_ANTENNA_SECTOR_CTRL 159 160 Sectored transmit antenna 161 <legal all> 162 */ 163 164 #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_OFFSET 0x00000000 165 #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_LSB 1 166 #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_MSB 24 167 #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_MASK 0x01fffffe 168 169 170 /* Description PKT_TYPE 171 172 Packet type: 173 <enum 0 dot11a>802.11a PPDU type 174 <enum 1 dot11b>802.11b PPDU type 175 <enum 2 dot11n_mm>802.11n Mixed Mode PPDU type 176 <enum 3 dot11ac>802.11ac PPDU type 177 <enum 4 dot11ax>802.11ax PPDU type 178 <enum 5 dot11ba>802.11ba (WUR) PPDU type 179 <enum 6 dot11be>802.11be PPDU type 180 <enum 7 dot11az>802.11az (ranging) PPDU type 181 <enum 8 dot11n_gf>802.11n Green Field PPDU type (unsupported 182 & aborted) 183 */ 184 185 #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_OFFSET 0x00000000 186 #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_LSB 25 187 #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_MSB 28 188 #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_MASK 0x1e000000 189 190 191 /* Description SMOOTHING 192 193 This field is used by PDG to populate the SMOOTHING filed 194 in the SIG Preamble of the PPDU 195 <legal 0-1> 196 */ 197 198 #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_OFFSET 0x00000000 199 #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_LSB 29 200 #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_MSB 29 201 #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_MASK 0x20000000 202 203 204 /* Description LDPC 205 206 When set, use LDPC transmission rates 207 */ 208 209 #define PDG_RESPONSE_RATE_SETTING_LDPC_OFFSET 0x00000000 210 #define PDG_RESPONSE_RATE_SETTING_LDPC_LSB 30 211 #define PDG_RESPONSE_RATE_SETTING_LDPC_MSB 30 212 #define PDG_RESPONSE_RATE_SETTING_LDPC_MASK 0x40000000 213 214 215 /* Description STBC 216 217 When set, use STBC transmission rates 218 */ 219 220 #define PDG_RESPONSE_RATE_SETTING_STBC_OFFSET 0x00000000 221 #define PDG_RESPONSE_RATE_SETTING_STBC_LSB 31 222 #define PDG_RESPONSE_RATE_SETTING_STBC_MSB 31 223 #define PDG_RESPONSE_RATE_SETTING_STBC_MASK 0x80000000 224 225 226 /* Description ALT_TX_PWR 227 228 Coex related AlternativeTransmit parameter 229 230 Transmit Power in s6.2 format. 231 In units of 0.25 dBm 232 <legal all> 233 */ 234 235 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_OFFSET 0x00000004 236 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_LSB 0 237 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_MSB 7 238 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_MASK 0x000000ff 239 240 241 /* Description ALT_MIN_TX_PWR 242 243 Coex related Alternative Transmit parameter 244 245 Minimum allowed Transmit Power in s6.2 format. 246 In units of 0.25 dBm 247 <legal all> 248 */ 249 250 #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_OFFSET 0x00000004 251 #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_LSB 8 252 #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_MSB 15 253 #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_MASK 0x0000ff00 254 255 256 /* Description ALT_NSS 257 258 Coex related Alternative Transmit parameter 259 260 Number of spatial streams. 261 262 <enum 0 1_spatial_stream>Single spatial stream 263 <enum 1 2_spatial_streams>2 spatial streams 264 <enum 2 3_spatial_streams>3 spatial streams 265 <enum 3 4_spatial_streams>4 spatial streams 266 <enum 4 5_spatial_streams>5 spatial streams 267 <enum 5 6_spatial_streams>6 spatial streams 268 <enum 6 7_spatial_streams>7 spatial streams 269 <enum 7 8_spatial_streams>8 spatial streams 270 */ 271 272 #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_OFFSET 0x00000004 273 #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_LSB 16 274 #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_MSB 18 275 #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_MASK 0x00070000 276 277 278 /* Description ALT_TX_CHAIN_MASK 279 280 Coex related Alternative Transmit parameter 281 282 Chain mask to support up to 8 antennas. 283 <legal 1-255> 284 */ 285 286 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_OFFSET 0x00000004 287 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_LSB 19 288 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_MSB 26 289 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_MASK 0x07f80000 290 291 292 /* Description ALT_BW 293 294 Coex related Alternative Transmit parameter 295 296 The BW of the upcoming transmission. 297 298 <enum 0 20_mhz>20 Mhz BW 299 <enum 1 40_mhz>40 Mhz BW 300 <enum 2 80_mhz>80 Mhz BW 301 <enum 3 160_mhz>160 Mhz BW 302 <enum 4 320_mhz>320 Mhz BW 303 <enum 5 240_mhz>240 Mhz BW 304 */ 305 306 #define PDG_RESPONSE_RATE_SETTING_ALT_BW_OFFSET 0x00000004 307 #define PDG_RESPONSE_RATE_SETTING_ALT_BW_LSB 27 308 #define PDG_RESPONSE_RATE_SETTING_ALT_BW_MSB 29 309 #define PDG_RESPONSE_RATE_SETTING_ALT_BW_MASK 0x38000000 310 311 312 /* Description STF_LTF_3DB_BOOST 313 314 Boost the STF and LTF power by 3dB in 11a/n/ac packets. 315 This includes both the legacy preambles and the HT/VHT preambles.0: 316 disable power boost1: enable power boost 317 <legal all> 318 */ 319 320 #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_OFFSET 0x00000004 321 #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_LSB 30 322 #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_MSB 30 323 #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_MASK 0x40000000 324 325 326 /* Description FORCE_EXTRA_SYMBOL 327 328 Set to 1 to force an extra OFDM symbol (or symbols) even 329 if the PPDU encoding process does not result in an extra 330 OFDM symbol (or symbols) 331 */ 332 333 #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_OFFSET 0x00000004 334 #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_LSB 31 335 #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_MSB 31 336 #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_MASK 0x80000000 337 338 339 /* Description ALT_RATE_MCS 340 341 Coex related Alternative Transmit parameter 342 343 For details, refer to MCS_TYPE 344 Note: This is "rate" in case of 11a/11b 345 description 346 <legal all> 347 */ 348 349 #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_OFFSET 0x00000008 350 #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_LSB 0 351 #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_MSB 3 352 #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_MASK 0x0000000f 353 354 355 /* Description NSS 356 357 Number of spatial streams. 358 359 <enum 0 1_spatial_stream>Single spatial stream 360 <enum 1 2_spatial_streams>2 spatial streams 361 <enum 2 3_spatial_streams>3 spatial streams 362 <enum 3 4_spatial_streams>4 spatial streams 363 <enum 4 5_spatial_streams>5 spatial streams 364 <enum 5 6_spatial_streams>6 spatial streams 365 <enum 6 7_spatial_streams>7 spatial streams 366 <enum 7 8_spatial_streams>8 spatial streams 367 */ 368 369 #define PDG_RESPONSE_RATE_SETTING_NSS_OFFSET 0x00000008 370 #define PDG_RESPONSE_RATE_SETTING_NSS_LSB 4 371 #define PDG_RESPONSE_RATE_SETTING_NSS_MSB 6 372 #define PDG_RESPONSE_RATE_SETTING_NSS_MASK 0x00000070 373 374 375 /* Description DPD_ENABLE 376 377 DPD enable control 378 379 This is needed on a per packet basis 380 <enum 0 dpd_off> DPD profile not applied to current 381 packet 382 <enum 1 dpd_on> DPD profile applied to current packet 383 if available 384 <legal 0-1> 385 386 This field is not applicable in11ah mode of operation and 387 is ignored by the HW 388 */ 389 390 #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_OFFSET 0x00000008 391 #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_LSB 7 392 #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_MSB 7 393 #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_MASK 0x00000080 394 395 396 /* Description TX_PWR 397 398 Transmit Power in s6.2 format. 399 In units of 0.25 dBm 400 <legal all> 401 */ 402 403 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_OFFSET 0x00000008 404 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_LSB 8 405 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_MSB 15 406 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_MASK 0x0000ff00 407 408 409 /* Description MIN_TX_PWR 410 411 Coex related field: 412 413 Minimum allowed Transmit Power in s6.2 format. 414 In units of 0.25 dBm 415 <legal all> 416 */ 417 418 #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_OFFSET 0x00000008 419 #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_LSB 16 420 #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_MSB 23 421 #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_MASK 0x00ff0000 422 423 424 /* Description TX_CHAIN_MASK 425 426 Chain mask to support up to 8 antennas. 427 <legal 1-255> 428 */ 429 430 #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_OFFSET 0x00000008 431 #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_LSB 24 432 #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_MSB 31 433 #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_MASK 0xff000000 434 435 436 /* Description RESERVED_3A 437 438 <legal 0> 439 */ 440 441 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_OFFSET 0x0000000c 442 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_LSB 0 443 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_MSB 7 444 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_MASK 0x000000ff 445 446 447 /* Description SGI 448 449 Field only valid when pkt type is HT or VHT.For 11ax see 450 field Dot11ax_CP_LTF_size 451 452 <enum 0 0_8_us_sgi > Legacy normal GI. Can also be used 453 for HE 454 <enum 1 0_4_us_sgi > Legacy short GI. Can also be used 455 for HE 456 <enum 2 1_6_us_sgi > Not used for pre 11ax pkt_types. 457 458 <enum 3 3_2_us_sgi > Not used for pre 11ax pkt_types 459 460 461 <legal 0 - 3> 462 */ 463 464 #define PDG_RESPONSE_RATE_SETTING_SGI_OFFSET 0x0000000c 465 #define PDG_RESPONSE_RATE_SETTING_SGI_LSB 8 466 #define PDG_RESPONSE_RATE_SETTING_SGI_MSB 9 467 #define PDG_RESPONSE_RATE_SETTING_SGI_MASK 0x00000300 468 469 470 /* Description RATE_MCS 471 472 For details, refer to MCS_TYPE description 473 Note: This is "rate" in case of 11a/11b 474 475 <legal all> 476 */ 477 478 #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_OFFSET 0x0000000c 479 #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_LSB 10 480 #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_MSB 13 481 #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_MASK 0x00003c00 482 483 484 /* Description RESERVED_3B 485 486 <legal 0> 487 */ 488 489 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_OFFSET 0x0000000c 490 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_LSB 14 491 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_MSB 15 492 #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_MASK 0x0000c000 493 494 495 /* Description TX_PWR_1 496 497 Default (desired) transmit parameter for the second chain 498 499 500 Transmit Power in s6.2 format. 501 In units of 0.25 dBm 502 503 Note that there is no Min value for this 504 <legal all> 505 */ 506 507 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_OFFSET 0x0000000c 508 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_LSB 16 509 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_MSB 23 510 #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_MASK 0x00ff0000 511 512 513 /* Description ALT_TX_PWR_1 514 515 Alternate (desired) transmit parameter for the second chain 516 517 518 Transmit Power in s6.2 format. 519 In units of 0.25 dBm 520 521 Note that there is no Min value for this 522 <legal all> 523 */ 524 525 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_OFFSET 0x0000000c 526 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_LSB 24 527 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_MSB 31 528 #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_MASK 0xff000000 529 530 531 /* Description AGGREGATION 532 533 Field only valid in case of pkt_type == 11n 534 535 <enum 0 mpdu> Indicates MPDU format. TXPCU will select 536 this setting if the CBF response only contains a single 537 segment 538 <enum 1 a_mpdu> Indicates A-MPDU format. TXPCU will 539 select this setting if the CBF response will contain two 540 or more segments 541 <legal 0-1> 542 */ 543 544 #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_OFFSET 0x00000010 545 #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_LSB 0 546 #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_MSB 0 547 #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_MASK 0x00000001 548 549 550 /* Description DOT11AX_BSS_COLOR_ID 551 552 BSS color of the nextwork to which this STA belongs. 553 When generated by TXPCU, this field is set equal to: Dot11ax_received_Bss_color_id 554 555 556 <legal all> 557 */ 558 559 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_OFFSET 0x00000010 560 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_LSB 1 561 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_MSB 6 562 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_MASK 0x0000007e 563 564 565 /* Description DOT11AX_SPATIAL_REUSE 566 567 This field is only valid for pkt_type == 11ax 568 569 Spatial re-use 570 <legal all> 571 */ 572 573 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_OFFSET 0x00000010 574 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_LSB 7 575 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_MSB 10 576 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_MASK 0x00000780 577 578 579 /* Description DOT11AX_CP_LTF_SIZE 580 581 field is only valid for pkt_type == 11ax 582 583 Indicates the CP and HE-LTF type 584 585 <enum 0 OneX_LTF_0_8CP> 1xLTF + 0.8 us CP 586 <enum 1 TwoX_LTF_0_8CP> 2x LTF + 0.8 µs CP 587 <enum 2 TwoX_LTF_1_6CP> 2x LTF + 1.6 µs CP 588 <enum 3 FourX_LTF_0_8CP_3_2CP> 589 When DCM == 0 OR STBC == 0: 4x LTF + 3.2 µs CP 590 When DCM == 1 AND STBC == 1: 4x LTF + 0.8 µs CP. Note: 591 In this scenario, Neither DCM nor STBC is applied to HE 592 data field. 593 594 If ( DCM == 1 ) and ( MCS > 0 ) and (STBC == 0) 595 0 = 1xLTF + 0.4 usec 596 1 = 2xLTF + 0.4 usec 597 2~3 = Reserved 598 599 <legal all> 600 */ 601 602 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_OFFSET 0x00000010 603 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_LSB 11 604 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_MSB 12 605 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_MASK 0x00001800 606 607 608 /* Description DOT11AX_DCM 609 610 field is only valid for pkt_type == 11ax 611 612 Indicates whether dual sub-carrier modulation is applied 613 614 0: No DCM 615 1:DCM 616 <legal all> 617 */ 618 619 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_OFFSET 0x00000010 620 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_LSB 13 621 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_MSB 13 622 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_MASK 0x00002000 623 624 625 /* Description DOT11AX_DOPPLER_INDICATION 626 627 field is only valid for pkt_type == 11ax 628 629 0: No Doppler support 630 1: Doppler support 631 <legal all> 632 */ 633 634 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_OFFSET 0x00000010 635 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_LSB 14 636 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_MSB 14 637 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_MASK 0x00004000 638 639 640 /* Description DOT11AX_SU_EXTENDED 641 642 field is only valid for pkt_type == 11ax OR pkt_type == 643 11be 644 645 When set, the 11ax or 11be frame is of the extended range 646 format 647 <legal all> 648 */ 649 650 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_OFFSET 0x00000010 651 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_LSB 15 652 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_MSB 15 653 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_MASK 0x00008000 654 655 656 /* Description DOT11AX_MIN_PACKET_EXTENSION 657 658 field is only valid for pkt_type == 11ax OR pkt_type == 659 11be 660 661 The min packet extension duration for this user. 662 0: no extension 663 1: 8us 664 2: 16 us 665 3: 20 us (only for .11be) 666 <legal 0-3> 667 */ 668 669 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_OFFSET 0x00000010 670 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_LSB 16 671 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_MSB 17 672 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_MASK 0x00030000 673 674 675 /* Description DOT11AX_PE_NSS 676 677 Number of active spatial streams during packet extension. 678 679 680 <enum 0 1_spatial_stream>Single spatial stream 681 <enum 1 2_spatial_streams>2 spatial streams 682 <enum 2 3_spatial_streams>3 spatial streams 683 <enum 3 4_spatial_streams>4 spatial streams 684 <enum 4 5_spatial_streams>5 spatial streams 685 <enum 5 6_spatial_streams>6 spatial streams 686 <enum 6 7_spatial_streams>7 spatial streams 687 <enum 7 8_spatial_streams>8 spatial streams 688 */ 689 690 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_OFFSET 0x00000010 691 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_LSB 18 692 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_MSB 20 693 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_MASK 0x001c0000 694 695 696 /* Description DOT11AX_PE_CONTENT 697 698 Content of packet extension. Valid for all 11ax packets 699 having packet extension 700 701 0-he_ltf, 1-last_data_symbol 702 <legal all> 703 */ 704 705 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_OFFSET 0x00000010 706 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_LSB 21 707 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_MSB 21 708 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_MASK 0x00200000 709 710 711 /* Description DOT11AX_PE_LTF_SIZE 712 713 LTF size to be used during packet extention. . This field 714 is valid for both FTM and non-FTM packets. 715 0-1x 716 1-2x (unsupported un HWK-1) 717 2-4x (unsupported un HWK-1) 718 <legal all> 719 */ 720 721 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_OFFSET 0x00000010 722 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_LSB 22 723 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_MSB 23 724 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_MASK 0x00c00000 725 726 727 /* Description DOT11AX_CHAIN_CSD_EN 728 729 This field denotes whether to apply CSD on the preamble 730 and data portion of the packet. This field is valid for 731 all transmit packets 732 0: disable per-chain csd 733 1: enable per-chain csd 734 <legal all> 735 */ 736 737 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_OFFSET 0x00000010 738 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_LSB 24 739 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_MSB 24 740 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_MASK 0x01000000 741 742 743 /* Description DOT11AX_PE_CHAIN_CSD_EN 744 745 This field denotes whether to apply CSD on the packet extension 746 portion of the packet. This field is valid for all 11ax 747 packets. 748 0: disable per-chain csd 749 1: enable per-chain csd 750 <legal all> 751 */ 752 753 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_OFFSET 0x00000010 754 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_LSB 25 755 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_MSB 25 756 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_MASK 0x02000000 757 758 759 /* Description DOT11AX_DL_UL_FLAG 760 761 field is only valid for pkt_type == 11ax 762 763 <enum 0 DL_UL_FLAG_IS_DL_OR_TDLS> 764 <enum 1 DL_UL_FLAG_IS_UL> 765 766 <legal all> 767 */ 768 769 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_OFFSET 0x00000010 770 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_LSB 26 771 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_MSB 26 772 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_MASK 0x04000000 773 774 775 /* Description RESERVED_4A 776 777 <legal 0> 778 */ 779 780 #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_OFFSET 0x00000010 781 #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_LSB 27 782 #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_MSB 31 783 #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_MASK 0xf8000000 784 785 786 /* Description DOT11AX_EXT_RU_START_INDEX 787 788 field is only valid for pkt_type == 11ax and Dot11ax_su_extended 789 == 1 790 791 RU Number to which User is assigned 792 793 The RU numbering bitwidth is only enough to cover the 20MHz 794 BW that extended range allows 795 <legal 0-8> 796 */ 797 798 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_OFFSET 0x00000014 799 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_LSB 0 800 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_MSB 3 801 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_MASK 0x0000000f 802 803 804 /* Description DOT11AX_EXT_RU_SIZE 805 806 field is only valid for pkt_type == 11ax and Dot11ax_su_extended 807 == 1 or pkt_type == 11be and EHT_duplicate_mode == 1 808 809 The size of the RU for this user. 810 811 In case of EHT duplicate transmissions, this field indicates 812 the width of the actual content before duplication, e.g. 813 a 40 MHz PPDU duplicated to 160 MHz will have the bandwidth 814 fields indicating 160 MHz and this field set to e-num 4 815 (RU_484). 816 817 <enum 0 RU_26> 818 <enum 1 RU_52> 819 <enum 2 RU_106> 820 <enum 3 RU_242> 821 <enum 4 RU_484> 822 <enum 5 RU_996> 823 <enum 6 RU_1992> 824 <enum 7 RU_FULLBW> Set when the RU occupies the full packet 825 bandwidth 826 <enum 8 RU_FULLBW_240> Set when the RU occupies the full 827 packet bandwidth 828 <enum 9 RU_FULLBW_320> Set when the RU occupies the full 829 packet bandwidth 830 <enum 10 RU_MULTI_LARGE> DO NOT USE 831 <enum 11 RU_78> DO NOT USE 832 <enum 12 RU_132> DO NOT USE 833 <legal 0-12> 834 */ 835 836 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_OFFSET 0x00000014 837 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_LSB 4 838 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_MSB 7 839 #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_MASK 0x000000f0 840 841 842 /* Description EHT_DUPLICATE_MODE 843 844 Field only valid for pkt_type == 11be 845 846 Indicates EHT duplicate modulation 847 848 <enum 0 eht_no_duplicate> 849 <enum 1 eht_2x_duplicate> 850 <enum 2 eht_4x_duplicate> 851 852 <legal 0-2> 853 */ 854 855 #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_OFFSET 0x00000014 856 #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_LSB 8 857 #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_MSB 9 858 #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_MASK 0x00000300 859 860 861 /* Description HE_SIGB_DCM 862 863 Indicates whether dual sub-carrier modulation is applied 864 to EHT-SIG 865 <legal all> 866 */ 867 868 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_OFFSET 0x00000014 869 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_LSB 10 870 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_MSB 10 871 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_MASK 0x00000400 872 873 874 /* Description HE_SIGB_0_MCS 875 876 Indicates the MCS of EHT-SIG 877 878 For details, refer to MCS_TYPE description 879 <legal all> 880 */ 881 882 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_OFFSET 0x00000014 883 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_LSB 11 884 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_MSB 13 885 #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_MASK 0x00003800 886 887 888 /* Description NUM_HE_SIGB_SYM 889 890 Indicates the number of EHT-SIG symbols 891 892 This field is 0-based with 0 indicating that 1 eht_sig symbol 893 needs to be transmitted. 894 <legal all> 895 */ 896 897 #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_OFFSET 0x00000014 898 #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_LSB 14 899 #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_MSB 18 900 #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_MASK 0x0007c000 901 902 903 /* Description REQUIRED_RESPONSE_TIME_SOURCE 904 905 <enum 0 reqd_resp_time_src_is_RXPCU> Typically from received 906 HT Control for sync MLO response 907 <enum 1 reqd_resp_time_src_is_FW> 908 Typically from 'PCU_PPDU_SETUP_INIT' for sync MLO response 909 to response 910 <legal all> 911 */ 912 913 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_OFFSET 0x00000014 914 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_LSB 19 915 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_MSB 19 916 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_MASK 0x00080000 917 918 919 /* Description RESERVED_5A 920 921 <legal 0> 922 */ 923 924 #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_OFFSET 0x00000014 925 #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_LSB 20 926 #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_MSB 25 927 #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_MASK 0x03f00000 928 929 930 /* Description U_SIG_PUNCTURE_PATTERN_ENCODING 931 932 6-bit value copied from 'RX_RESPONSE_REQUIRED_INFO' and 'TX_CBF_INFO' 933 to pass on to PDG 934 <legal 0-29> 935 */ 936 937 #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET 0x00000014 938 #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB 26 939 #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB 31 940 #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK 0xfc000000 941 942 943 /* Description MLO_STA_ID_DETAILS_RX 944 945 16-bi value copied from 'RX_RESPONSE_REQUIRED_INFO' to pass 946 on to PDG 947 948 Bits 10 and 11 are not valid, bits [9:0] reflect 'NSTR_MLO_STA_ID' 949 from address search. 950 951 See definition of mlo_sta_id_details. 952 */ 953 954 955 /* Description NSTR_MLO_STA_ID 956 957 ID of peer participating in non-STR MLO 958 */ 959 960 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET 0x00000018 961 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB 0 962 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB 9 963 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK 0x000003ff 964 965 966 /* Description BLOCK_SELF_ML_SYNC 967 968 Only valid for TX 969 970 When set, this provides an indication to block the peer 971 for self-link. 972 */ 973 974 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET 0x00000018 975 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB 10 976 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB 10 977 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK 0x00000400 978 979 980 /* Description BLOCK_PARTNER_ML_SYNC 981 982 Only valid for TX 983 984 When set, this provides an indication to block the peer 985 for partner links. 986 */ 987 988 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET 0x00000018 989 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB 11 990 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB 11 991 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK 0x00000800 992 993 994 /* Description NSTR_MLO_STA_ID_VALID 995 996 All the fields in this TLV are valid only if this bit is 997 set. 998 */ 999 1000 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET 0x00000018 1001 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB 12 1002 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB 12 1003 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK 0x00001000 1004 1005 1006 /* Description RESERVED_0A 1007 1008 <legal 0> 1009 */ 1010 1011 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET 0x00000018 1012 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB 13 1013 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB 15 1014 #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK 0x0000e000 1015 1016 1017 /* Description REQUIRED_RESPONSE_TIME 1018 1019 When non-zero, indicates that PDG shall pad the response 1020 transmission to the indicated duration (in us) 1021 */ 1022 1023 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_OFFSET 0x00000018 1024 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_LSB 16 1025 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_MSB 27 1026 #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_MASK 0x0fff0000 1027 1028 1029 /* Description DOT11BE_PARAMS_PLACEHOLDER 1030 1031 4 bytes for use as placeholders for 'Dot11be_*' parameters 1032 1033 */ 1034 1035 #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_OFFSET 0x00000018 1036 #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_LSB 28 1037 #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_MSB 31 1038 #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_MASK 0xf0000000 1039 1040 1041 1042 #endif // PDG_RESPONSE_RATE_SETTING 1043