1 /* 2 * Copyright (c) 2019, The Linux Foundation. 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 #ifndef _HE_SIG_A_SU_INFO_H_ 18 #define _HE_SIG_A_SU_INFO_H_ 19 #if !defined(__ASSEMBLER__) 20 #endif 21 22 23 // ################ START SUMMARY ################# 24 // 25 // Dword Fields 26 // 0 format_indication[0], beam_change[1], dl_ul_flag[2], transmit_mcs[6:3], dcm[7], bss_color_id[13:8], reserved_0a[14], spatial_reuse[18:15], transmit_bw[20:19], cp_ltf_size[22:21], nsts[25:23], reserved_0b[31:26] 27 // 1 txop_duration[6:0], coding[7], ldpc_extra_symbol[8], stbc[9], txbf[10], packet_extension_a_factor[12:11], packet_extension_pe_disambiguity[13], reserved_1a[14], doppler_indication[15], crc[19:16], tail[25:20], dot11ax_su_extended[26], dot11ax_ext_ru_size[30:27], rx_ndp[31] 28 // 29 // ################ END SUMMARY ################# 30 31 #define NUM_OF_DWORDS_HE_SIG_A_SU_INFO 2 32 33 struct he_sig_a_su_info { 34 uint32_t format_indication : 1, //[0] 35 beam_change : 1, //[1] 36 dl_ul_flag : 1, //[2] 37 transmit_mcs : 4, //[6:3] 38 dcm : 1, //[7] 39 bss_color_id : 6, //[13:8] 40 reserved_0a : 1, //[14] 41 spatial_reuse : 4, //[18:15] 42 transmit_bw : 2, //[20:19] 43 cp_ltf_size : 2, //[22:21] 44 nsts : 3, //[25:23] 45 reserved_0b : 6; //[31:26] 46 uint32_t txop_duration : 7, //[6:0] 47 coding : 1, //[7] 48 ldpc_extra_symbol : 1, //[8] 49 stbc : 1, //[9] 50 txbf : 1, //[10] 51 packet_extension_a_factor : 2, //[12:11] 52 packet_extension_pe_disambiguity: 1, //[13] 53 reserved_1a : 1, //[14] 54 doppler_indication : 1, //[15] 55 crc : 4, //[19:16] 56 tail : 6, //[25:20] 57 dot11ax_su_extended : 1, //[26] 58 dot11ax_ext_ru_size : 4, //[30:27] 59 rx_ndp : 1; //[31] 60 }; 61 62 /* 63 64 format_indication 65 66 <enum 0 HE_SIGA_FORMAT_HE_TRIG> 67 68 <enum 1 HE_SIGA_FORMAT_SU_OR_EXT_SU> 69 70 <legal all> 71 72 beam_change 73 74 Indicates whether spatial mapping is changed between 75 legacy and HE portion of preamble. If not, channel 76 estimation can include legacy preamble to improve accuracy 77 78 <legal all> 79 80 dl_ul_flag 81 82 Differentiates between DL and UL transmission 83 84 85 86 <enum 0 DL_UL_FLAG_IS_DL_OR_TDLS> 87 88 <enum 1 DL_UL_FLAG_IS_UL> 89 90 <legal all> 91 92 transmit_mcs 93 94 Indicates the data MCS 95 96 97 98 Field Used by MAC HW 99 100 <legal all> 101 102 dcm 103 104 105 0: No DCM 106 107 1:DCM 108 109 <legal all> 110 111 bss_color_id 112 113 BSS color ID 114 115 116 117 Field Used by MAC HW 118 119 <legal all> 120 121 reserved_0a 122 123 Note: spec indicates this shall be set to 1 124 125 <legal 1> 126 127 spatial_reuse 128 129 Spatial reuse 130 131 132 133 For 20MHz one SR field corresponding to entire 20MHz 134 (other 3 fields indicate identical values) 135 136 For 40MHz two SR fields for each 20MHz (other 2 fields 137 indicate identical values) 138 139 For 80MHz four SR fields for each 20MHz 140 141 For 160MHz four SR fields for each 40MHz 142 143 <legal all> 144 145 transmit_bw 146 147 Bandwidth of the PPDU. 148 149 150 151 For HE SU PPDU 152 153 154 <enum 0 HE_SIG_A_BW20> 20 Mhz 155 156 <enum 1 HE_SIG_A_BW40> 40 Mhz 157 158 <enum 2 HE_SIG_A_BW80> 80 Mhz 159 160 <enum 3 HE_SIG_A_BW160> 160 MHz or 80+80 MHz 161 162 163 164 For HE Extended Range SU PPDU 165 166 Set to 0 for 242-tone RU 167 Set to 1 for right 106-tone RU within the primary 20 MHz 168 169 170 171 On RX side, Field Used by MAC HW 172 173 <legal all> 174 175 cp_ltf_size 176 177 Indicates the CP and HE-LTF type 178 179 180 181 182 <enum 3 FourX_LTF_0_8CP_3_2CP> 183 184 When DCM == 0 OR STBC == 0: 4x LTF + 3.2 µs CP 185 186 When DCM == 1 AND STBC == 1: 4x LTF + 0.8 µs CP. Note: 187 In this scenario, Neither DCM nor STBC is applied to HE data 188 field. 189 190 191 NOTE: 192 193 194 If ( DCM == 1 ) and ( MCS > 0 ) and (STBC == 0) 195 196 0 = 1xLTF + 0.4 usec 197 198 1 = 2xLTF + 0.4 usec 199 200 2~3 = Reserved 201 202 203 204 <legal all> 205 206 nsts 207 208 209 210 211 For HE SU PPDU 212 213 214 215 For HE Extended Range PPDU 216 217 <legal all> 218 219 reserved_0b 220 221 <legal 0> 222 223 txop_duration 224 225 Indicates the remaining time in the current TXOP 226 227 228 229 Field Used by MAC HW 230 231 <legal all> 232 233 coding 234 235 Distinguishes between BCC and LDPC coding. 236 237 238 239 0: BCC 240 241 1: LDPC 242 243 <legal all> 244 245 ldpc_extra_symbol 246 247 If LDPC, 248 249 0: LDPC extra symbol not present 250 251 1: LDPC extra symbol present 252 253 Else 254 255 Set to 1 256 257 <legal all> 258 259 stbc 260 261 Indicates whether STBC is applied 262 263 0: No STBC 264 265 1: STBC 266 267 <legal all> 268 269 txbf 270 271 Indicates whether beamforming is applied 272 273 0: No beamforming 274 275 1: beamforming 276 277 <legal all> 278 279 packet_extension_a_factor 280 281 Common trigger info 282 283 284 285 the packet extension duration of the trigger-based PPDU 286 response with these two bits indicating the a-factor 287 288 289 290 <enum 0 a_factor_4> 291 292 <enum 1 a_factor_1> 293 294 <enum 2 a_factor_2> 295 296 <enum 3 a_factor_3> 297 298 299 300 <legal all> 301 302 packet_extension_pe_disambiguity 303 304 Common trigger info 305 306 307 308 the packet extension duration of the trigger-based PPDU 309 response with this bit indicating the PE-Disambiguity 310 311 <legal all> 312 313 reserved_1a 314 315 Note: per standard, set to 1 316 317 <legal 1> 318 319 doppler_indication 320 321 0: No Doppler support 322 323 1: Doppler support 324 325 <legal all> 326 327 crc 328 329 CRC for HE-SIG-A contents. 330 331 <legal all> 332 333 tail 334 335 <legal 0> 336 337 dot11ax_su_extended 338 339 TX side: 340 341 Set to 0 342 343 344 345 RX side: 346 347 On RX side, evaluated by MAC HW. This is the only way 348 for MAC RX to know that this was an HE_SIG_A_SU received in 349 'extended' format 350 351 352 353 354 <legal all> 355 356 dot11ax_ext_ru_size 357 358 TX side: 359 360 Set to 0 361 362 363 364 RX side: 365 366 Field only contains valid info when dot11ax_su_extended 367 is set. 368 369 370 371 On RX side, evaluated by MAC HW. This is the only way 372 for MAC RX to know what the number of based RUs was in this 373 extended range reception. It is used by the MAC to determine 374 the RU size for the response... 375 376 <legal all> 377 378 rx_ndp 379 380 TX side: 381 382 Set to 0 383 384 385 386 RX side:Valid on RX side only, and looked at by MAC HW 387 388 389 390 When set, PHY has received (expected) NDP frame 391 392 <legal all> 393 */ 394 395 396 /* Description HE_SIG_A_SU_INFO_0_FORMAT_INDICATION 397 398 <enum 0 HE_SIGA_FORMAT_HE_TRIG> 399 400 <enum 1 HE_SIGA_FORMAT_SU_OR_EXT_SU> 401 402 <legal all> 403 */ 404 #define HE_SIG_A_SU_INFO_0_FORMAT_INDICATION_OFFSET 0x00000000 405 #define HE_SIG_A_SU_INFO_0_FORMAT_INDICATION_LSB 0 406 #define HE_SIG_A_SU_INFO_0_FORMAT_INDICATION_MASK 0x00000001 407 408 /* Description HE_SIG_A_SU_INFO_0_BEAM_CHANGE 409 410 Indicates whether spatial mapping is changed between 411 legacy and HE portion of preamble. If not, channel 412 estimation can include legacy preamble to improve accuracy 413 414 <legal all> 415 */ 416 #define HE_SIG_A_SU_INFO_0_BEAM_CHANGE_OFFSET 0x00000000 417 #define HE_SIG_A_SU_INFO_0_BEAM_CHANGE_LSB 1 418 #define HE_SIG_A_SU_INFO_0_BEAM_CHANGE_MASK 0x00000002 419 420 /* Description HE_SIG_A_SU_INFO_0_DL_UL_FLAG 421 422 Differentiates between DL and UL transmission 423 424 425 426 <enum 0 DL_UL_FLAG_IS_DL_OR_TDLS> 427 428 <enum 1 DL_UL_FLAG_IS_UL> 429 430 <legal all> 431 */ 432 #define HE_SIG_A_SU_INFO_0_DL_UL_FLAG_OFFSET 0x00000000 433 #define HE_SIG_A_SU_INFO_0_DL_UL_FLAG_LSB 2 434 #define HE_SIG_A_SU_INFO_0_DL_UL_FLAG_MASK 0x00000004 435 436 /* Description HE_SIG_A_SU_INFO_0_TRANSMIT_MCS 437 438 Indicates the data MCS 439 440 441 442 Field Used by MAC HW 443 444 <legal all> 445 */ 446 #define HE_SIG_A_SU_INFO_0_TRANSMIT_MCS_OFFSET 0x00000000 447 #define HE_SIG_A_SU_INFO_0_TRANSMIT_MCS_LSB 3 448 #define HE_SIG_A_SU_INFO_0_TRANSMIT_MCS_MASK 0x00000078 449 450 /* Description HE_SIG_A_SU_INFO_0_DCM 451 452 453 0: No DCM 454 455 1:DCM 456 457 <legal all> 458 */ 459 #define HE_SIG_A_SU_INFO_0_DCM_OFFSET 0x00000000 460 #define HE_SIG_A_SU_INFO_0_DCM_LSB 7 461 #define HE_SIG_A_SU_INFO_0_DCM_MASK 0x00000080 462 463 /* Description HE_SIG_A_SU_INFO_0_BSS_COLOR_ID 464 465 BSS color ID 466 467 468 469 Field Used by MAC HW 470 471 <legal all> 472 */ 473 #define HE_SIG_A_SU_INFO_0_BSS_COLOR_ID_OFFSET 0x00000000 474 #define HE_SIG_A_SU_INFO_0_BSS_COLOR_ID_LSB 8 475 #define HE_SIG_A_SU_INFO_0_BSS_COLOR_ID_MASK 0x00003f00 476 477 /* Description HE_SIG_A_SU_INFO_0_RESERVED_0A 478 479 Note: spec indicates this shall be set to 1 480 481 <legal 1> 482 */ 483 #define HE_SIG_A_SU_INFO_0_RESERVED_0A_OFFSET 0x00000000 484 #define HE_SIG_A_SU_INFO_0_RESERVED_0A_LSB 14 485 #define HE_SIG_A_SU_INFO_0_RESERVED_0A_MASK 0x00004000 486 487 /* Description HE_SIG_A_SU_INFO_0_SPATIAL_REUSE 488 489 Spatial reuse 490 491 492 493 For 20MHz one SR field corresponding to entire 20MHz 494 (other 3 fields indicate identical values) 495 496 For 40MHz two SR fields for each 20MHz (other 2 fields 497 indicate identical values) 498 499 For 80MHz four SR fields for each 20MHz 500 501 For 160MHz four SR fields for each 40MHz 502 503 <legal all> 504 */ 505 #define HE_SIG_A_SU_INFO_0_SPATIAL_REUSE_OFFSET 0x00000000 506 #define HE_SIG_A_SU_INFO_0_SPATIAL_REUSE_LSB 15 507 #define HE_SIG_A_SU_INFO_0_SPATIAL_REUSE_MASK 0x00078000 508 509 /* Description HE_SIG_A_SU_INFO_0_TRANSMIT_BW 510 511 Bandwidth of the PPDU. 512 513 514 515 For HE SU PPDU 516 517 518 <enum 0 HE_SIG_A_BW20> 20 Mhz 519 520 <enum 1 HE_SIG_A_BW40> 40 Mhz 521 522 <enum 2 HE_SIG_A_BW80> 80 Mhz 523 524 <enum 3 HE_SIG_A_BW160> 160 MHz or 80+80 MHz 525 526 527 528 For HE Extended Range SU PPDU 529 530 Set to 0 for 242-tone RU 531 Set to 1 for right 106-tone RU within the primary 20 MHz 532 533 534 535 On RX side, Field Used by MAC HW 536 537 <legal all> 538 */ 539 #define HE_SIG_A_SU_INFO_0_TRANSMIT_BW_OFFSET 0x00000000 540 #define HE_SIG_A_SU_INFO_0_TRANSMIT_BW_LSB 19 541 #define HE_SIG_A_SU_INFO_0_TRANSMIT_BW_MASK 0x00180000 542 543 /* Description HE_SIG_A_SU_INFO_0_CP_LTF_SIZE 544 545 Indicates the CP and HE-LTF type 546 547 <enum 3 FourX_LTF_0_8CP_3_2CP> 548 549 When DCM == 0 OR STBC == 0: 4x LTF + 3.2 µs CP 550 551 When DCM == 1 AND STBC == 1: 4x LTF + 0.8 µs CP. Note: 552 In this scenario, Neither DCM nor STBC is applied to HE data 553 field. 554 555 556 NOTE: 557 558 If ( DCM == 1 ) and ( MCS > 0 ) and (STBC == 0) 559 560 0 = 1xLTF + 0.4 usec 561 562 1 = 2xLTF + 0.4 usec 563 564 2~3 = Reserved 565 566 567 568 <legal all> 569 */ 570 #define HE_SIG_A_SU_INFO_0_CP_LTF_SIZE_OFFSET 0x00000000 571 #define HE_SIG_A_SU_INFO_0_CP_LTF_SIZE_LSB 21 572 #define HE_SIG_A_SU_INFO_0_CP_LTF_SIZE_MASK 0x00600000 573 574 /* Description HE_SIG_A_SU_INFO_0_NSTS 575 576 577 578 579 For HE SU PPDU 580 581 582 583 For HE Extended Range PPDU 584 585 <legal all> 586 */ 587 #define HE_SIG_A_SU_INFO_0_NSTS_OFFSET 0x00000000 588 #define HE_SIG_A_SU_INFO_0_NSTS_LSB 23 589 #define HE_SIG_A_SU_INFO_0_NSTS_MASK 0x03800000 590 591 /* Description HE_SIG_A_SU_INFO_0_RESERVED_0B 592 593 <legal 0> 594 */ 595 #define HE_SIG_A_SU_INFO_0_RESERVED_0B_OFFSET 0x00000000 596 #define HE_SIG_A_SU_INFO_0_RESERVED_0B_LSB 26 597 #define HE_SIG_A_SU_INFO_0_RESERVED_0B_MASK 0xfc000000 598 599 /* Description HE_SIG_A_SU_INFO_1_TXOP_DURATION 600 601 Indicates the remaining time in the current TXOP 602 603 604 605 Field Used by MAC HW 606 607 <legal all> 608 */ 609 #define HE_SIG_A_SU_INFO_1_TXOP_DURATION_OFFSET 0x00000004 610 #define HE_SIG_A_SU_INFO_1_TXOP_DURATION_LSB 0 611 #define HE_SIG_A_SU_INFO_1_TXOP_DURATION_MASK 0x0000007f 612 613 /* Description HE_SIG_A_SU_INFO_1_CODING 614 615 Distinguishes between BCC and LDPC coding. 616 617 618 619 0: BCC 620 621 1: LDPC 622 623 <legal all> 624 */ 625 #define HE_SIG_A_SU_INFO_1_CODING_OFFSET 0x00000004 626 #define HE_SIG_A_SU_INFO_1_CODING_LSB 7 627 #define HE_SIG_A_SU_INFO_1_CODING_MASK 0x00000080 628 629 /* Description HE_SIG_A_SU_INFO_1_LDPC_EXTRA_SYMBOL 630 631 If LDPC, 632 633 0: LDPC extra symbol not present 634 635 1: LDPC extra symbol present 636 637 Else 638 639 Set to 1 640 641 <legal all> 642 */ 643 #define HE_SIG_A_SU_INFO_1_LDPC_EXTRA_SYMBOL_OFFSET 0x00000004 644 #define HE_SIG_A_SU_INFO_1_LDPC_EXTRA_SYMBOL_LSB 8 645 #define HE_SIG_A_SU_INFO_1_LDPC_EXTRA_SYMBOL_MASK 0x00000100 646 647 /* Description HE_SIG_A_SU_INFO_1_STBC 648 649 Indicates whether STBC is applied 650 651 0: No STBC 652 653 1: STBC 654 655 <legal all> 656 */ 657 #define HE_SIG_A_SU_INFO_1_STBC_OFFSET 0x00000004 658 #define HE_SIG_A_SU_INFO_1_STBC_LSB 9 659 #define HE_SIG_A_SU_INFO_1_STBC_MASK 0x00000200 660 661 /* Description HE_SIG_A_SU_INFO_1_TXBF 662 663 Indicates whether beamforming is applied 664 665 0: No beamforming 666 667 1: beamforming 668 669 <legal all> 670 */ 671 #define HE_SIG_A_SU_INFO_1_TXBF_OFFSET 0x00000004 672 #define HE_SIG_A_SU_INFO_1_TXBF_LSB 10 673 #define HE_SIG_A_SU_INFO_1_TXBF_MASK 0x00000400 674 675 /* Description HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_A_FACTOR 676 677 Common trigger info 678 679 680 681 the packet extension duration of the trigger-based PPDU 682 response with these two bits indicating the a-factor 683 684 685 686 <enum 0 a_factor_4> 687 688 <enum 1 a_factor_1> 689 690 <enum 2 a_factor_2> 691 692 <enum 3 a_factor_3> 693 694 695 696 <legal all> 697 */ 698 #define HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_A_FACTOR_OFFSET 0x00000004 699 #define HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_A_FACTOR_LSB 11 700 #define HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_A_FACTOR_MASK 0x00001800 701 702 /* Description HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_PE_DISAMBIGUITY 703 704 Common trigger info 705 706 707 708 the packet extension duration of the trigger-based PPDU 709 response with this bit indicating the PE-Disambiguity 710 711 <legal all> 712 */ 713 #define HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_PE_DISAMBIGUITY_OFFSET 0x00000004 714 #define HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_PE_DISAMBIGUITY_LSB 13 715 #define HE_SIG_A_SU_INFO_1_PACKET_EXTENSION_PE_DISAMBIGUITY_MASK 0x00002000 716 717 /* Description HE_SIG_A_SU_INFO_1_RESERVED_1A 718 719 Note: per standard, set to 1 720 721 <legal 1> 722 */ 723 #define HE_SIG_A_SU_INFO_1_RESERVED_1A_OFFSET 0x00000004 724 #define HE_SIG_A_SU_INFO_1_RESERVED_1A_LSB 14 725 #define HE_SIG_A_SU_INFO_1_RESERVED_1A_MASK 0x00004000 726 727 /* Description HE_SIG_A_SU_INFO_1_DOPPLER_INDICATION 728 729 0: No Doppler support 730 731 1: Doppler support 732 733 <legal all> 734 */ 735 #define HE_SIG_A_SU_INFO_1_DOPPLER_INDICATION_OFFSET 0x00000004 736 #define HE_SIG_A_SU_INFO_1_DOPPLER_INDICATION_LSB 15 737 #define HE_SIG_A_SU_INFO_1_DOPPLER_INDICATION_MASK 0x00008000 738 739 /* Description HE_SIG_A_SU_INFO_1_CRC 740 741 CRC for HE-SIG-A contents. 742 743 <legal all> 744 */ 745 #define HE_SIG_A_SU_INFO_1_CRC_OFFSET 0x00000004 746 #define HE_SIG_A_SU_INFO_1_CRC_LSB 16 747 #define HE_SIG_A_SU_INFO_1_CRC_MASK 0x000f0000 748 749 /* Description HE_SIG_A_SU_INFO_1_TAIL 750 751 <legal 0> 752 */ 753 #define HE_SIG_A_SU_INFO_1_TAIL_OFFSET 0x00000004 754 #define HE_SIG_A_SU_INFO_1_TAIL_LSB 20 755 #define HE_SIG_A_SU_INFO_1_TAIL_MASK 0x03f00000 756 757 /* Description HE_SIG_A_SU_INFO_1_DOT11AX_SU_EXTENDED 758 759 TX side: 760 761 Set to 0 762 763 764 765 RX side: 766 767 On RX side, evaluated by MAC HW. This is the only way 768 for MAC RX to know that this was an HE_SIG_A_SU received in 769 'extended' format 770 771 772 773 774 <legal all> 775 */ 776 #define HE_SIG_A_SU_INFO_1_DOT11AX_SU_EXTENDED_OFFSET 0x00000004 777 #define HE_SIG_A_SU_INFO_1_DOT11AX_SU_EXTENDED_LSB 26 778 #define HE_SIG_A_SU_INFO_1_DOT11AX_SU_EXTENDED_MASK 0x04000000 779 780 /* Description HE_SIG_A_SU_INFO_1_DOT11AX_EXT_RU_SIZE 781 782 TX side: 783 784 Set to 0 785 786 787 788 RX side: 789 790 Field only contains valid info when dot11ax_su_extended 791 is set. 792 793 794 795 On RX side, evaluated by MAC HW. This is the only way 796 for MAC RX to know what the number of based RUs was in this 797 extended range reception. It is used by the MAC to determine 798 the RU size for the response... 799 800 <legal all> 801 */ 802 #define HE_SIG_A_SU_INFO_1_DOT11AX_EXT_RU_SIZE_OFFSET 0x00000004 803 #define HE_SIG_A_SU_INFO_1_DOT11AX_EXT_RU_SIZE_LSB 27 804 #define HE_SIG_A_SU_INFO_1_DOT11AX_EXT_RU_SIZE_MASK 0x78000000 805 806 /* Description HE_SIG_A_SU_INFO_1_RX_NDP 807 808 TX side: 809 810 Set to 0 811 812 813 814 RX side:Valid on RX side only, and looked at by MAC HW 815 816 817 818 When set, PHY has received (expected) NDP frame 819 820 <legal all> 821 */ 822 #define HE_SIG_A_SU_INFO_1_RX_NDP_OFFSET 0x00000004 823 #define HE_SIG_A_SU_INFO_1_RX_NDP_LSB 31 824 #define HE_SIG_A_SU_INFO_1_RX_NDP_MASK 0x80000000 825 826 827 #endif // _HE_SIG_A_SU_INFO_H_ 828