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