xref: /wlan-driver/fw-api/hw/qcn6122/phyrx_he_sig_a_su.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 _PHYRX_HE_SIG_A_SU_H_
18 #define _PHYRX_HE_SIG_A_SU_H_
19 #if !defined(__ASSEMBLER__)
20 #endif
21 
22 #include "he_sig_a_su_info.h"
23 
24 // ################ START SUMMARY #################
25 //
26 //	Dword	Fields
27 //	0-1	struct he_sig_a_su_info phyrx_he_sig_a_su_info_details;
28 //
29 // ################ END SUMMARY #################
30 
31 #define NUM_OF_DWORDS_PHYRX_HE_SIG_A_SU 2
32 
33 struct phyrx_he_sig_a_su {
34     struct            he_sig_a_su_info                       phyrx_he_sig_a_su_info_details;
35 };
36 
37 /*
38 
39 struct he_sig_a_su_info phyrx_he_sig_a_su_info_details
40 
41 			See detailed description of the STRUCT
42 */
43 
44 
45  /* EXTERNAL REFERENCE : struct he_sig_a_su_info phyrx_he_sig_a_su_info_details */
46 
47 
48 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_FORMAT_INDICATION
49 
50 			<enum 0 HE_SIGA_FORMAT_HE_TRIG>
51 
52 			<enum 1 HE_SIGA_FORMAT_SU_OR_EXT_SU>
53 
54 			<legal all>
55 */
56 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_FORMAT_INDICATION_OFFSET 0x00000000
57 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_FORMAT_INDICATION_LSB 0
58 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_FORMAT_INDICATION_MASK 0x00000001
59 
60 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BEAM_CHANGE
61 
62 			Indicates whether spatial mapping is changed between
63 			legacy and HE portion of preamble. If not, channel
64 			estimation can include legacy preamble to improve accuracy
65 
66 			<legal all>
67 */
68 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BEAM_CHANGE_OFFSET 0x00000000
69 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BEAM_CHANGE_LSB 1
70 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BEAM_CHANGE_MASK 0x00000002
71 
72 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DL_UL_FLAG
73 
74 			Differentiates between DL and UL transmission
75 
76 
77 
78 			<enum 0 DL_UL_FLAG_IS_DL_OR_TDLS>
79 
80 			<enum 1 DL_UL_FLAG_IS_UL>
81 
82 			<legal all>
83 */
84 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DL_UL_FLAG_OFFSET 0x00000000
85 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DL_UL_FLAG_LSB 2
86 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DL_UL_FLAG_MASK 0x00000004
87 
88 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_MCS
89 
90 			Indicates the data MCS
91 
92 
93 
94 			Field Used by MAC HW
95 
96 			<legal all>
97 */
98 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_MCS_OFFSET 0x00000000
99 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_MCS_LSB 3
100 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_MCS_MASK 0x00000078
101 
102 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DCM
103 
104 
105 			0: No DCM
106 
107 			1:DCM
108 
109 			<legal all>
110 */
111 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DCM_OFFSET 0x00000000
112 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DCM_LSB   7
113 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DCM_MASK  0x00000080
114 
115 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BSS_COLOR_ID
116 
117 			BSS color ID
118 
119 
120 
121 			Field Used by MAC HW
122 
123 			<legal all>
124 */
125 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BSS_COLOR_ID_OFFSET 0x00000000
126 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BSS_COLOR_ID_LSB 8
127 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_BSS_COLOR_ID_MASK 0x00003f00
128 
129 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0A
130 
131 			Note: spec indicates this shall be set to 1
132 
133 			<legal 1>
134 */
135 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0A_OFFSET 0x00000000
136 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0A_LSB 14
137 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0A_MASK 0x00004000
138 
139 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_SPATIAL_REUSE
140 
141 			Spatial reuse
142 
143 
144 
145 			For 20MHz one SR field corresponding to entire 20MHz
146 			(other 3 fields indicate identical values)
147 
148 			For 40MHz two SR fields for each 20MHz (other 2 fields
149 			indicate identical values)
150 
151 			For 80MHz four SR fields for each 20MHz
152 
153 			For 160MHz four SR fields for each 40MHz
154 
155 			<legal all>
156 */
157 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_SPATIAL_REUSE_OFFSET 0x00000000
158 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_SPATIAL_REUSE_LSB 15
159 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_SPATIAL_REUSE_MASK 0x00078000
160 
161 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_BW
162 
163 			Bandwidth of the PPDU.
164 
165 
166 
167 			For HE SU PPDU
168 
169 
170 			<enum 0 HE_SIG_A_BW20> 20 Mhz
171 
172 			<enum 1 HE_SIG_A_BW40> 40 Mhz
173 
174 			<enum 2 HE_SIG_A_BW80> 80 Mhz
175 
176 			<enum 3 HE_SIG_A_BW160> 160 MHz or 80+80 MHz
177 
178 
179 
180 			For HE Extended Range SU PPDU
181 
182 			Set to 0 for 242-tone RU
183 			 Set to 1 for right 106-tone RU within the primary 20 MHz
184 
185 
186 
187 			On RX side, Field Used by MAC HW
188 
189 			<legal all>
190 */
191 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_BW_OFFSET 0x00000000
192 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_BW_LSB 19
193 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TRANSMIT_BW_MASK 0x00180000
194 
195 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CP_LTF_SIZE
196 
197 			Indicates the CP and HE-LTF type
198 
199 
200 
201 			<enum 0 OneX_LTF_0_8CP> 1xLTF + 0.8 us CP (See note for
202 			proprietary mode)
203 
204 			<enum 1 TwoX_LTF_0_8CP> 2x LTF + 0.8 µs CP (See note
205 			for proprietary mode)
206 
207 			<enum 2 TwoX_LTF_1_6CP> 2x LTF + 1.6 µs CP (See note
208 			for proprietary mode)
209 
210 
211 
212 			<enum 3 FourX_LTF_0_8CP_3_2CP>
213 
214 			When DCM == 0 OR STBC == 0: 4x LTF + 3.2 µs CP
215 
216 			When DCM == 1 AND STBC == 1: 4x LTF + 0.8 µs CP. Note:
217 			In this scenario, Neither DCM nor STBC is applied to HE data
218 			field.
219 
220 			(See note for proprietary mode)
221 
222 
223 
224 			NOTE:
225 
226 			For QTI proprietary mode
227 
228 			If ( DCM == 1 ) and ( MCS > 0 ) and (STBC == 0)
229 
230 			0      = 1xLTF + 0.4 usec
231 
232 			1      = 2xLTF + 0.4 usec
233 
234 			2~3 = Reserved
235 
236 
237 
238 			<legal all>
239 */
240 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CP_LTF_SIZE_OFFSET 0x00000000
241 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CP_LTF_SIZE_LSB 21
242 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CP_LTF_SIZE_MASK 0x00600000
243 
244 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_NSTS
245 
246 
247 
248 
249 			For HE SU PPDU
250 
251 
252 
253 			For HE Extended Range PPDU
254 
255 			<legal all>
256 */
257 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_NSTS_OFFSET 0x00000000
258 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_NSTS_LSB  23
259 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_NSTS_MASK 0x03800000
260 
261 /* Description		PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0B
262 
263 			<legal 0>
264 */
265 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0B_OFFSET 0x00000000
266 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0B_LSB 26
267 #define PHYRX_HE_SIG_A_SU_0_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_0B_MASK 0xfc000000
268 
269 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXOP_DURATION
270 
271 			Indicates the remaining time in the current TXOP
272 
273 
274 
275 			Field Used by MAC HW
276 
277 			 <legal all>
278 */
279 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXOP_DURATION_OFFSET 0x00000004
280 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXOP_DURATION_LSB 0
281 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXOP_DURATION_MASK 0x0000007f
282 
283 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CODING
284 
285 			Distinguishes between BCC and LDPC coding.
286 
287 
288 
289 			0: BCC
290 
291 			1: LDPC
292 
293 			<legal all>
294 */
295 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CODING_OFFSET 0x00000004
296 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CODING_LSB 7
297 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CODING_MASK 0x00000080
298 
299 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_LDPC_EXTRA_SYMBOL
300 
301 			If LDPC,
302 
303 			  0: LDPC extra symbol not present
304 
305 			  1: LDPC extra symbol present
306 
307 			Else
308 
309 			  Set to 1
310 
311 			<legal all>
312 */
313 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_LDPC_EXTRA_SYMBOL_OFFSET 0x00000004
314 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_LDPC_EXTRA_SYMBOL_LSB 8
315 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_LDPC_EXTRA_SYMBOL_MASK 0x00000100
316 
317 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_STBC
318 
319 			Indicates whether STBC is applied
320 
321 			0: No STBC
322 
323 			1: STBC
324 
325 			<legal all>
326 */
327 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_STBC_OFFSET 0x00000004
328 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_STBC_LSB  9
329 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_STBC_MASK 0x00000200
330 
331 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXBF
332 
333 			Indicates whether beamforming is applied
334 
335 			0: No beamforming
336 
337 			1: beamforming
338 
339 			<legal all>
340 */
341 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXBF_OFFSET 0x00000004
342 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXBF_LSB  10
343 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TXBF_MASK 0x00000400
344 
345 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_A_FACTOR
346 
347 			Common trigger info
348 
349 
350 
351 			the packet extension duration of the trigger-based PPDU
352 			response with these two bits indicating the a-factor
353 
354 
355 
356 			<enum 0 a_factor_4>
357 
358 			<enum 1 a_factor_1>
359 
360 			<enum 2 a_factor_2>
361 
362 			<enum 3 a_factor_3>
363 
364 
365 
366 			<legal all>
367 */
368 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_A_FACTOR_OFFSET 0x00000004
369 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_A_FACTOR_LSB 11
370 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_A_FACTOR_MASK 0x00001800
371 
372 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY
373 
374 			Common trigger info
375 
376 
377 
378 			the packet extension duration of the trigger-based PPDU
379 			response with this bit indicating the PE-Disambiguity
380 
381 			<legal all>
382 */
383 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_OFFSET 0x00000004
384 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_LSB 13
385 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MASK 0x00002000
386 
387 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_1A
388 
389 			Note: per standard, set to 1
390 
391 			<legal 1>
392 */
393 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_1A_OFFSET 0x00000004
394 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_1A_LSB 14
395 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RESERVED_1A_MASK 0x00004000
396 
397 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOPPLER_INDICATION
398 
399 			0: No Doppler support
400 
401 			1: Doppler support
402 
403 			<legal all>
404 */
405 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOPPLER_INDICATION_OFFSET 0x00000004
406 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOPPLER_INDICATION_LSB 15
407 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOPPLER_INDICATION_MASK 0x00008000
408 
409 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CRC
410 
411 			CRC for HE-SIG-A contents.
412 
413 			<legal all>
414 */
415 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CRC_OFFSET 0x00000004
416 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CRC_LSB   16
417 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_CRC_MASK  0x000f0000
418 
419 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TAIL
420 
421 			<legal 0>
422 */
423 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TAIL_OFFSET 0x00000004
424 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TAIL_LSB  20
425 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_TAIL_MASK 0x03f00000
426 
427 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_SU_EXTENDED
428 
429 			TX side:
430 
431 			Set to 0
432 
433 
434 
435 			RX side:
436 
437 			On RX side, evaluated by MAC HW. This is the only way
438 			for MAC RX to know that this was an HE_SIG_A_SU received in
439 			'extended' format
440 
441 
442 
443 
444 			<legal all>
445 */
446 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_SU_EXTENDED_OFFSET 0x00000004
447 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_SU_EXTENDED_LSB 26
448 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_SU_EXTENDED_MASK 0x04000000
449 
450 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_EXT_RU_SIZE
451 
452 			TX side:
453 
454 			Set to 0
455 
456 
457 
458 			RX side:
459 
460 			Field only contains valid info when dot11ax_su_extended
461 			is set.
462 
463 
464 
465 			On RX side, evaluated by MAC HW. This is the only way
466 			for MAC RX to know what the number of based RUs was in this
467 			extended range reception. It is used by the MAC to determine
468 			the RU size for the response...
469 
470 			<legal all>
471 */
472 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_EXT_RU_SIZE_OFFSET 0x00000004
473 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_EXT_RU_SIZE_LSB 27
474 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_DOT11AX_EXT_RU_SIZE_MASK 0x78000000
475 
476 /* Description		PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RX_NDP
477 
478 			TX side:
479 
480 			Set to 0
481 
482 
483 
484 			RX side:Valid on RX side only, and looked at by MAC HW
485 
486 
487 
488 			When set, PHY has received (expected) NDP frame
489 
490 			<legal all>
491 */
492 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RX_NDP_OFFSET 0x00000004
493 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RX_NDP_LSB 31
494 #define PHYRX_HE_SIG_A_SU_1_PHYRX_HE_SIG_A_SU_INFO_DETAILS_RX_NDP_MASK 0x80000000
495 
496 
497 #endif // _PHYRX_HE_SIG_A_SU_H_
498