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