xref: /wlan-driver/fw-api/hw/qca8074/v2/phyrx_vht_sig_a.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name /*
2*5113495bSYour Name  * Copyright (c) 2020 The Linux Foundation. All rights reserved.
3*5113495bSYour Name  *
4*5113495bSYour Name  * Permission to use, copy, modify, and/or distribute this software for any
5*5113495bSYour Name  * purpose with or without fee is hereby granted, provided that the above
6*5113495bSYour Name  * copyright notice and this permission notice appear in all copies.
7*5113495bSYour Name  *
8*5113495bSYour Name  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9*5113495bSYour Name  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10*5113495bSYour Name  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11*5113495bSYour Name  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12*5113495bSYour Name  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13*5113495bSYour Name  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14*5113495bSYour Name  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15*5113495bSYour Name  */
16*5113495bSYour Name 
17*5113495bSYour Name // $ATH_LICENSE_HW_HDR_C$
18*5113495bSYour Name //
19*5113495bSYour Name // DO NOT EDIT!  This file is automatically generated
20*5113495bSYour Name //               These definitions are tied to a particular hardware layout
21*5113495bSYour Name 
22*5113495bSYour Name 
23*5113495bSYour Name #ifndef _PHYRX_VHT_SIG_A_H_
24*5113495bSYour Name #define _PHYRX_VHT_SIG_A_H_
25*5113495bSYour Name #if !defined(__ASSEMBLER__)
26*5113495bSYour Name #endif
27*5113495bSYour Name 
28*5113495bSYour Name #include "vht_sig_a_info.h"
29*5113495bSYour Name 
30*5113495bSYour Name // ################ START SUMMARY #################
31*5113495bSYour Name //
32*5113495bSYour Name //	Dword	Fields
33*5113495bSYour Name //	0-1	struct vht_sig_a_info phyrx_vht_sig_a_info_details;
34*5113495bSYour Name //
35*5113495bSYour Name // ################ END SUMMARY #################
36*5113495bSYour Name 
37*5113495bSYour Name #define NUM_OF_DWORDS_PHYRX_VHT_SIG_A 2
38*5113495bSYour Name 
39*5113495bSYour Name struct phyrx_vht_sig_a {
40*5113495bSYour Name     struct            vht_sig_a_info                       phyrx_vht_sig_a_info_details;
41*5113495bSYour Name };
42*5113495bSYour Name 
43*5113495bSYour Name /*
44*5113495bSYour Name 
45*5113495bSYour Name struct vht_sig_a_info phyrx_vht_sig_a_info_details
46*5113495bSYour Name 
47*5113495bSYour Name 			See detailed description of the STRUCT
48*5113495bSYour Name */
49*5113495bSYour Name 
50*5113495bSYour Name 
51*5113495bSYour Name  /* EXTERNAL REFERENCE : struct vht_sig_a_info phyrx_vht_sig_a_info_details */
52*5113495bSYour Name 
53*5113495bSYour Name 
54*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_BANDWIDTH
55*5113495bSYour Name 
56*5113495bSYour Name 			Packet bandwidth
57*5113495bSYour Name 
58*5113495bSYour Name 
59*5113495bSYour Name 
60*5113495bSYour Name 			<enum 0    20_MHZ_11AC>
61*5113495bSYour Name 
62*5113495bSYour Name 			<enum 1    40_MHZ_11AC>
63*5113495bSYour Name 
64*5113495bSYour Name 			<enum 2    80_MHZ_11AC>
65*5113495bSYour Name 
66*5113495bSYour Name 			<enum 3    160_MHZ_11AC>
67*5113495bSYour Name 
68*5113495bSYour Name 
69*5113495bSYour Name 
70*5113495bSYour Name 			<legal 0-3>
71*5113495bSYour Name */
72*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_BANDWIDTH_OFFSET 0x00000000
73*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_BANDWIDTH_LSB 0
74*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_BANDWIDTH_MASK 0x00000003
75*5113495bSYour Name 
76*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0
77*5113495bSYour Name 
78*5113495bSYour Name 			Reserved.  Set to 1 by MAC, PHY should ignore
79*5113495bSYour Name 
80*5113495bSYour Name 			<legal 1>
81*5113495bSYour Name */
82*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0_OFFSET 0x00000000
83*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0_LSB 2
84*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0_MASK 0x00000004
85*5113495bSYour Name 
86*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_STBC
87*5113495bSYour Name 
88*5113495bSYour Name 			Space time block coding:
89*5113495bSYour Name 
90*5113495bSYour Name 			<enum 0     stbc_disabled>  Indicates STBC is disabled
91*5113495bSYour Name 
92*5113495bSYour Name 			<enum 1     stbc_enabled>  Indicates STBC is enabled on
93*5113495bSYour Name 			all streams
94*5113495bSYour Name 
95*5113495bSYour Name 			<legal 0-1>
96*5113495bSYour Name */
97*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_STBC_OFFSET   0x00000000
98*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_STBC_LSB      3
99*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_STBC_MASK     0x00000008
100*5113495bSYour Name 
101*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_GROUP_ID
102*5113495bSYour Name 
103*5113495bSYour Name 			In a SU VHT PPDU, if the PPDU carries MPDU(s) addressed
104*5113495bSYour Name 			to an AP or to a mesh STA, the Group ID field is set to 0,
105*5113495bSYour Name 			otherwise it is set to 63.  In an NDP PPDU the Group ID is
106*5113495bSYour Name 			set according to IEEE 802.11ac_D1.0 Section 9.30.6
107*5113495bSYour Name 			(Transmission of a VHT NDP). For a MU-MIMO PPDU the Group ID
108*5113495bSYour Name 			is set as in 802.11ac_D1.0 Section 22.3.11.3 (Group ID).
109*5113495bSYour Name 			<legal all>
110*5113495bSYour Name */
111*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_GROUP_ID_OFFSET 0x00000000
112*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_GROUP_ID_LSB  4
113*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_GROUP_ID_MASK 0x000003f0
114*5113495bSYour Name 
115*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_N_STS
116*5113495bSYour Name 
117*5113495bSYour Name 			For MU:
118*5113495bSYour Name 
119*5113495bSYour Name 			3 bits/user with maximum of 4 users (user u uses
120*5113495bSYour Name 
121*5113495bSYour Name 			vht_sig_a[0][10+3u] - vht_sig_a[0][12+3u]), u = 0, 1, 2,
122*5113495bSYour Name 			3)
123*5113495bSYour Name 
124*5113495bSYour Name 			Set to 0 for 0 space time streams
125*5113495bSYour Name 
126*5113495bSYour Name 			Set to 1 for 1 space time stream
127*5113495bSYour Name 
128*5113495bSYour Name 			Set to 2 for 2 space time streams
129*5113495bSYour Name 
130*5113495bSYour Name 			Set to 3 for 3 space time streams
131*5113495bSYour Name 
132*5113495bSYour Name 			Set to 4 for 4 space time streams (not supported in Wifi
133*5113495bSYour Name 			3.0)
134*5113495bSYour Name 
135*5113495bSYour Name 			Values 5-7 are reserved
136*5113495bSYour Name 
137*5113495bSYour Name 			In this field, references to user u should be
138*5113495bSYour Name 			interpreted as MU user u. As described in the previous
139*5113495bSYour Name 			chapter in this document (see chapter on User number), the
140*5113495bSYour Name 			MU user value for a given client is defined for each MU
141*5113495bSYour Name 			group that the client participates in. The MU user number is
142*5113495bSYour Name 			not related to the internal user number that is used within
143*5113495bSYour Name 			the BFer.
144*5113495bSYour Name 
145*5113495bSYour Name 
146*5113495bSYour Name 
147*5113495bSYour Name 
148*5113495bSYour Name 
149*5113495bSYour Name 			For SU:
150*5113495bSYour Name 
151*5113495bSYour Name 			vht_sig_a[0][12:10]
152*5113495bSYour Name 
153*5113495bSYour Name 			Set to 0 for 1 space time stream
154*5113495bSYour Name 
155*5113495bSYour Name 			Set to 1 for 2 space time streams
156*5113495bSYour Name 
157*5113495bSYour Name 			Set to 2 for 3 space time streams
158*5113495bSYour Name 
159*5113495bSYour Name 			Set to 3 for 4 space time streams
160*5113495bSYour Name 
161*5113495bSYour Name 			Set to 4 for 5 space time streams
162*5113495bSYour Name 
163*5113495bSYour Name 			Set to 5 for 6 space time streams
164*5113495bSYour Name 
165*5113495bSYour Name 			Set to 6 for 7 space time streams
166*5113495bSYour Name 
167*5113495bSYour Name 			Set to 7 for 8 space time streams
168*5113495bSYour Name 
169*5113495bSYour Name 
170*5113495bSYour Name 
171*5113495bSYour Name 			vht_sig_a[0][21:13]
172*5113495bSYour Name 
173*5113495bSYour Name 			Partial AID:
174*5113495bSYour Name 
175*5113495bSYour Name 			Set to the value of the TXVECTOR parameter PARTIAL_AID.
176*5113495bSYour Name 			Partial AID provides an abbreviated indication of the
177*5113495bSYour Name 			intended recipient(s) of the frame (see IEEE802.11ac_D1.0
178*5113495bSYour Name 			Section 9.17a (Partial AID in VHT PPDUs)).
179*5113495bSYour Name 
180*5113495bSYour Name 			<legal all>
181*5113495bSYour Name */
182*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_N_STS_OFFSET  0x00000000
183*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_N_STS_LSB     10
184*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_N_STS_MASK    0x003ffc00
185*5113495bSYour Name 
186*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_TXOP_PS_NOT_ALLOWED
187*5113495bSYour Name 
188*5113495bSYour Name 			E_num 0     txop_ps_allowed  Not supported: If set to by
189*5113495bSYour Name 			VHT AP if it allows non-AP VHT STAs in TXOP power save mode
190*5113495bSYour Name 			to enter Doze state during a TXOP
191*5113495bSYour Name 
192*5113495bSYour Name 			<enum 1     no_txop_ps_allowed> Otherwise
193*5113495bSYour Name 
194*5113495bSYour Name 			<legal 1>
195*5113495bSYour Name */
196*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_TXOP_PS_NOT_ALLOWED_OFFSET 0x00000000
197*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_TXOP_PS_NOT_ALLOWED_LSB 22
198*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_TXOP_PS_NOT_ALLOWED_MASK 0x00400000
199*5113495bSYour Name 
200*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0B
201*5113495bSYour Name 
202*5113495bSYour Name 			Reserved: Should be set to 1 by the MAC and ignored by
203*5113495bSYour Name 			the PHY  <legal 1>
204*5113495bSYour Name */
205*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0B_OFFSET 0x00000000
206*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0B_LSB 23
207*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_0B_MASK 0x00800000
208*5113495bSYour Name 
209*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_0
210*5113495bSYour Name 
211*5113495bSYour Name 			This field is not part of HT-SIG:
212*5113495bSYour Name 
213*5113495bSYour Name 			Reserved: Should be set to 0 by the MAC and ignored by
214*5113495bSYour Name 			the PHY <legal 0>
215*5113495bSYour Name */
216*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_0_OFFSET 0x00000000
217*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_0_LSB 24
218*5113495bSYour Name #define PHYRX_VHT_SIG_A_0_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_0_MASK 0xff000000
219*5113495bSYour Name 
220*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_GI_SETTING
221*5113495bSYour Name 
222*5113495bSYour Name 			<enum 0     normal_gi>  Indicates short guard interval
223*5113495bSYour Name 			is not used in the data field
224*5113495bSYour Name 
225*5113495bSYour Name 			<enum 1     short_gi>  Indicates short guard interval is
226*5113495bSYour Name 			used in the data field
227*5113495bSYour Name 
228*5113495bSYour Name 			<enum 3     short_gi_ambiguity>  Indicates short guard
229*5113495bSYour Name 			interval is used in the data field and NSYM mod 10 = 9
230*5113495bSYour Name 
231*5113495bSYour Name 			NSYM is defined in IEEE802.11ac_D1.0 Section 22.4.3
232*5113495bSYour Name 			(TXTIME and PSDU_LENGTH calculation).
233*5113495bSYour Name 
234*5113495bSYour Name 			<legal 0,1,3>
235*5113495bSYour Name */
236*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_GI_SETTING_OFFSET 0x00000004
237*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_GI_SETTING_LSB 0
238*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_GI_SETTING_MASK 0x00000003
239*5113495bSYour Name 
240*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_SU_MU_CODING
241*5113495bSYour Name 
242*5113495bSYour Name 			For an SU PPDU, B2 is set to 0 for BCC, 1 for LDPC For
243*5113495bSYour Name 			an MU PPDU, if the MU[0] NSTS field is nonzero(#6773), then
244*5113495bSYour Name 			B2 indicates the coding used for user 0; set to 0 for BCC
245*5113495bSYour Name 			and 1 for LDPC. If the MU[0] NSTS field is 0, then this
246*5113495bSYour Name 			field is reserved and set to 1
247*5113495bSYour Name */
248*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_SU_MU_CODING_OFFSET 0x00000004
249*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_SU_MU_CODING_LSB 2
250*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_SU_MU_CODING_MASK 0x00000004
251*5113495bSYour Name 
252*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_LDPC_EXTRA_SYMBOL
253*5113495bSYour Name 
254*5113495bSYour Name 			Set to 1 if the LDPC PPDU encoding process (if an SU
255*5113495bSYour Name 			PPDU), or at least one LDPC user's PPDU encoding process (if
256*5113495bSYour Name 			an MU PPDU), results in an extra OFDM symbol (or symbols) as
257*5113495bSYour Name 			described in 22.3.10.5.4 (LDPC coding) and 22.3.10.5.5
258*5113495bSYour Name 			(Encoding process for MU PPDUs). Set to 0 otherwise.
259*5113495bSYour Name */
260*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_LDPC_EXTRA_SYMBOL_OFFSET 0x00000004
261*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_LDPC_EXTRA_SYMBOL_LSB 3
262*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_LDPC_EXTRA_SYMBOL_MASK 0x00000008
263*5113495bSYour Name 
264*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_MCS
265*5113495bSYour Name 
266*5113495bSYour Name 			For SU:
267*5113495bSYour Name 
268*5113495bSYour Name 			Set to 0 for BPSK 1/2
269*5113495bSYour Name 
270*5113495bSYour Name 			Set to 1 for QPSK 1/2
271*5113495bSYour Name 
272*5113495bSYour Name 			Set to 2 for QPSK 3/4
273*5113495bSYour Name 
274*5113495bSYour Name 			Set to 3 for 16-QAM 1/2
275*5113495bSYour Name 
276*5113495bSYour Name 			Set to 4 for 16-QAM 3/4
277*5113495bSYour Name 
278*5113495bSYour Name 			Set to 5 for 64-QAM 2/3
279*5113495bSYour Name 
280*5113495bSYour Name 			Set to 6 for 64-QAM 3/4
281*5113495bSYour Name 
282*5113495bSYour Name 			Set to 7 for 64-QAM 5/6
283*5113495bSYour Name 
284*5113495bSYour Name 			Set to 8 for 256-QAM 3/4
285*5113495bSYour Name 
286*5113495bSYour Name 			Set to 9 for 256-QAM 5/6
287*5113495bSYour Name 
288*5113495bSYour Name 			For MU:
289*5113495bSYour Name 
290*5113495bSYour Name 			If NSTS for user 1 is non-zero, then vht_sig_a[1][4]
291*5113495bSYour Name 			indicates coding for user 1: set to 0 for BCC, 1 for LDPC.
292*5113495bSYour Name 
293*5113495bSYour Name 			If NSTS for user 1 is set to 0, then vht_sig_a[1][4] is
294*5113495bSYour Name 			reserved and set to 1.
295*5113495bSYour Name 
296*5113495bSYour Name 			If NSTS for user 2 is non-zero, then vht_sig_a[1][5]
297*5113495bSYour Name 			indicates coding for user 2: set to 0 for BCC, 1 for LDPC.
298*5113495bSYour Name 
299*5113495bSYour Name 			If NSTS for user 2 is set to 0, then vht_sig_a[1][5] is
300*5113495bSYour Name 			reserved and set to 1.
301*5113495bSYour Name 
302*5113495bSYour Name 			If NSTS for user 3 is non-zero, then vht_sig_a[1][6]
303*5113495bSYour Name 			indicates coding for user 3: set to 0 for BCC, 1 for LDPC.
304*5113495bSYour Name 
305*5113495bSYour Name 			If NSTS for user 3 is set to 0, then vht_sig_a[1][6] is
306*5113495bSYour Name 			reserved and set to 1.
307*5113495bSYour Name 
308*5113495bSYour Name 			vht_sig_a[1][7] is reserved and set to 1
309*5113495bSYour Name 
310*5113495bSYour Name 			<legal 0-15>
311*5113495bSYour Name */
312*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_MCS_OFFSET    0x00000004
313*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_MCS_LSB       4
314*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_MCS_MASK      0x000000f0
315*5113495bSYour Name 
316*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_BEAMFORMED
317*5113495bSYour Name 
318*5113495bSYour Name 			For SU:
319*5113495bSYour Name 
320*5113495bSYour Name 			Set to 1 if a Beamforming steering matrix is applied to
321*5113495bSYour Name 			the waveform in an SU transmission as described in
322*5113495bSYour Name 			IEEE802.11ac_D1.0 Section 19.3.11.11.2 (Spatial mapping),
323*5113495bSYour Name 			set to 0 otherwise.
324*5113495bSYour Name 
325*5113495bSYour Name 			For MU:
326*5113495bSYour Name 
327*5113495bSYour Name 			Reserved and set to 1
328*5113495bSYour Name 
329*5113495bSYour Name 			<legal 0-1>
330*5113495bSYour Name */
331*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_BEAMFORMED_OFFSET 0x00000004
332*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_BEAMFORMED_LSB 8
333*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_BEAMFORMED_MASK 0x00000100
334*5113495bSYour Name 
335*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_1
336*5113495bSYour Name 
337*5113495bSYour Name 			Reserved and set to 1.  <legal 1>
338*5113495bSYour Name */
339*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_1_OFFSET 0x00000004
340*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_1_LSB 9
341*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_VHTA_RESERVED_1_MASK 0x00000200
342*5113495bSYour Name 
343*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_CRC
344*5113495bSYour Name 
345*5113495bSYour Name 			CRC calculated as in IEEE802.11ac_D1.0 Section
346*5113495bSYour Name 			19.3.9.4.4 (CRC calculation for HTSIG) with C7 in
347*5113495bSYour Name 			vht_sig_a[1][10], etc.  <legal all>
348*5113495bSYour Name */
349*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_CRC_OFFSET    0x00000004
350*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_CRC_LSB       10
351*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_CRC_MASK      0x0003fc00
352*5113495bSYour Name 
353*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_TAIL
354*5113495bSYour Name 
355*5113495bSYour Name 			Used to terminate the trellis of the convolutional
356*5113495bSYour Name 			decoder.  Set to 0.  <legal 0>
357*5113495bSYour Name */
358*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_TAIL_OFFSET   0x00000004
359*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_TAIL_LSB      18
360*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_TAIL_MASK     0x00fc0000
361*5113495bSYour Name 
362*5113495bSYour Name /* Description		PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_1
363*5113495bSYour Name 
364*5113495bSYour Name 			This field is not part of HT-SIG:
365*5113495bSYour Name 
366*5113495bSYour Name 			Reserved: Should be set to 0 by the MAC and ignored by
367*5113495bSYour Name 			the PHY <legal 0>
368*5113495bSYour Name */
369*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_1_OFFSET 0x00000004
370*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_1_LSB 24
371*5113495bSYour Name #define PHYRX_VHT_SIG_A_1_PHYRX_VHT_SIG_A_INFO_DETAILS_RESERVED_1_MASK 0xff000000
372*5113495bSYour Name 
373*5113495bSYour Name 
374*5113495bSYour Name #endif // _PHYRX_VHT_SIG_A_H_
375