xref: /wlan-driver/fw-api/hw/qca5332/expected_response.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name 
2*5113495bSYour Name /* Copyright (c) 2022, Qualcomm Innovation Center, Inc. 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 
18*5113495bSYour Name 
19*5113495bSYour Name 
20*5113495bSYour Name 
21*5113495bSYour Name 
22*5113495bSYour Name 
23*5113495bSYour Name 
24*5113495bSYour Name 
25*5113495bSYour Name 
26*5113495bSYour Name #ifndef _EXPECTED_RESPONSE_H_
27*5113495bSYour Name #define _EXPECTED_RESPONSE_H_
28*5113495bSYour Name #if !defined(__ASSEMBLER__)
29*5113495bSYour Name #endif
30*5113495bSYour Name 
31*5113495bSYour Name #define NUM_OF_DWORDS_EXPECTED_RESPONSE 6
32*5113495bSYour Name 
33*5113495bSYour Name #define NUM_OF_QWORDS_EXPECTED_RESPONSE 3
34*5113495bSYour Name 
35*5113495bSYour Name 
36*5113495bSYour Name struct expected_response {
37*5113495bSYour Name #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
38*5113495bSYour Name              uint32_t tx_ad2_31_0                                             : 32; // [31:0]
39*5113495bSYour Name              uint32_t tx_ad2_47_32                                            : 16, // [15:0]
40*5113495bSYour Name                       expected_response_type                                  :  5, // [20:16]
41*5113495bSYour Name                       response_to_response                                    :  3, // [23:21]
42*5113495bSYour Name                       su_ba_user_number                                       :  1, // [24:24]
43*5113495bSYour Name                       response_info_part2_required                            :  1, // [25:25]
44*5113495bSYour Name                       transmitted_bssid_check_en                              :  1, // [26:26]
45*5113495bSYour Name                       reserved_1                                              :  5; // [31:27]
46*5113495bSYour Name              uint32_t ndp_sta_partial_aid_2_8_0                               : 11, // [10:0]
47*5113495bSYour Name                       reserved_2                                              : 10, // [20:11]
48*5113495bSYour Name                       ndp_sta_partial_aid1_8_0                                : 11; // [31:21]
49*5113495bSYour Name              uint32_t ast_index                                               : 16, // [15:0]
50*5113495bSYour Name                       capture_ack_ba_sounding                                 :  1, // [16:16]
51*5113495bSYour Name                       capture_sounding_1str_20mhz                             :  1, // [17:17]
52*5113495bSYour Name                       capture_sounding_1str_40mhz                             :  1, // [18:18]
53*5113495bSYour Name                       capture_sounding_1str_80mhz                             :  1, // [19:19]
54*5113495bSYour Name                       capture_sounding_1str_160mhz                            :  1, // [20:20]
55*5113495bSYour Name                       capture_sounding_1str_240mhz                            :  1, // [21:21]
56*5113495bSYour Name                       capture_sounding_1str_320mhz                            :  1, // [22:22]
57*5113495bSYour Name                       reserved_3a                                             :  9; // [31:23]
58*5113495bSYour Name              uint32_t fcs                                                     :  9, // [8:0]
59*5113495bSYour Name                       reserved_4a                                             :  1, // [9:9]
60*5113495bSYour Name                       crc                                                     :  4, // [13:10]
61*5113495bSYour Name                       scrambler_seed                                          :  7, // [20:14]
62*5113495bSYour Name                       reserved_4b                                             : 11; // [31:21]
63*5113495bSYour Name              uint32_t tlv64_padding                                           : 32; // [31:0]
64*5113495bSYour Name #else
65*5113495bSYour Name              uint32_t tx_ad2_31_0                                             : 32; // [31:0]
66*5113495bSYour Name              uint32_t reserved_1                                              :  5, // [31:27]
67*5113495bSYour Name                       transmitted_bssid_check_en                              :  1, // [26:26]
68*5113495bSYour Name                       response_info_part2_required                            :  1, // [25:25]
69*5113495bSYour Name                       su_ba_user_number                                       :  1, // [24:24]
70*5113495bSYour Name                       response_to_response                                    :  3, // [23:21]
71*5113495bSYour Name                       expected_response_type                                  :  5, // [20:16]
72*5113495bSYour Name                       tx_ad2_47_32                                            : 16; // [15:0]
73*5113495bSYour Name              uint32_t ndp_sta_partial_aid1_8_0                                : 11, // [31:21]
74*5113495bSYour Name                       reserved_2                                              : 10, // [20:11]
75*5113495bSYour Name                       ndp_sta_partial_aid_2_8_0                               : 11; // [10:0]
76*5113495bSYour Name              uint32_t reserved_3a                                             :  9, // [31:23]
77*5113495bSYour Name                       capture_sounding_1str_320mhz                            :  1, // [22:22]
78*5113495bSYour Name                       capture_sounding_1str_240mhz                            :  1, // [21:21]
79*5113495bSYour Name                       capture_sounding_1str_160mhz                            :  1, // [20:20]
80*5113495bSYour Name                       capture_sounding_1str_80mhz                             :  1, // [19:19]
81*5113495bSYour Name                       capture_sounding_1str_40mhz                             :  1, // [18:18]
82*5113495bSYour Name                       capture_sounding_1str_20mhz                             :  1, // [17:17]
83*5113495bSYour Name                       capture_ack_ba_sounding                                 :  1, // [16:16]
84*5113495bSYour Name                       ast_index                                               : 16; // [15:0]
85*5113495bSYour Name              uint32_t reserved_4b                                             : 11, // [31:21]
86*5113495bSYour Name                       scrambler_seed                                          :  7, // [20:14]
87*5113495bSYour Name                       crc                                                     :  4, // [13:10]
88*5113495bSYour Name                       reserved_4a                                             :  1, // [9:9]
89*5113495bSYour Name                       fcs                                                     :  9; // [8:0]
90*5113495bSYour Name              uint32_t tlv64_padding                                           : 32; // [31:0]
91*5113495bSYour Name #endif
92*5113495bSYour Name };
93*5113495bSYour Name 
94*5113495bSYour Name 
95*5113495bSYour Name /* Description		TX_AD2_31_0
96*5113495bSYour Name 
97*5113495bSYour Name 			Lower 32 bits of the transmitter address (AD2) of the last
98*5113495bSYour Name 			 packet which was transmitted, which is used by RXPCU in
99*5113495bSYour Name 			 Proxy STA mode.
100*5113495bSYour Name */
101*5113495bSYour Name 
102*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_31_0_OFFSET                                        0x0000000000000000
103*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_31_0_LSB                                           0
104*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_31_0_MSB                                           31
105*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_31_0_MASK                                          0x00000000ffffffff
106*5113495bSYour Name 
107*5113495bSYour Name 
108*5113495bSYour Name /* Description		TX_AD2_47_32
109*5113495bSYour Name 
110*5113495bSYour Name 			Upper 16 bits of the transmitter address (AD2) of the last
111*5113495bSYour Name 			 packet which was transmitted, which is used by RXPCU in
112*5113495bSYour Name 			 Proxy STA mode.
113*5113495bSYour Name */
114*5113495bSYour Name 
115*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_47_32_OFFSET                                       0x0000000000000000
116*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_47_32_LSB                                          32
117*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_47_32_MSB                                          47
118*5113495bSYour Name #define EXPECTED_RESPONSE_TX_AD2_47_32_MASK                                         0x0000ffff00000000
119*5113495bSYour Name 
120*5113495bSYour Name 
121*5113495bSYour Name /* Description		EXPECTED_RESPONSE_TYPE
122*5113495bSYour Name 
123*5113495bSYour Name 			Provides insight for RXPCU of what type of response is expected
124*5113495bSYour Name 			 in the medium.
125*5113495bSYour Name 
126*5113495bSYour Name 			Mainly used for debugging purposes.
127*5113495bSYour Name 
128*5113495bSYour Name 			No matter what RXPCU receives, it shall always report it
129*5113495bSYour Name 			 to TXPCU.
130*5113495bSYour Name 
131*5113495bSYour Name 			Only special scenario where RXPCU will have to generate
132*5113495bSYour Name 			a RECEIVED_RESPONSE_INFO TLV , even when no actual MPDU
133*5113495bSYour Name 			with passing FCS was received is when the response_type
134*5113495bSYour Name 			is set to: frameless_phyrx_response_accepted
135*5113495bSYour Name 
136*5113495bSYour Name 			<enum 0 no_response_expected>After transmission of this
137*5113495bSYour Name 			frame, no response in SIFS time is expected
138*5113495bSYour Name 
139*5113495bSYour Name 			When TXPCU sees this setting, it shall not generated the
140*5113495bSYour Name 			 EXPECTED_RESPONSE TLV.
141*5113495bSYour Name 
142*5113495bSYour Name 			RXPCU should never see this setting
143*5113495bSYour Name 			<enum 1 ack_expected>An ACK frame is expected as response
144*5113495bSYour Name 
145*5113495bSYour Name 
146*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
147*5113495bSYour Name 			 that the right response was received.
148*5113495bSYour Name 			<enum 2 ba_64_bitmap_expected>BA with 64 bitmap is expected.
149*5113495bSYour Name 
150*5113495bSYour Name 
151*5113495bSYour Name 			PDG DOES NOT use the size info to calculated response duration.
152*5113495bSYour Name 			The length of the response will have to be programmed by
153*5113495bSYour Name 			 SW in the per-BW 'Expected_ppdu_resp_length' field.
154*5113495bSYour Name 
155*5113495bSYour Name 			For TXPCU only the fact that it is a BA is important. Actual
156*5113495bSYour Name 			 received BA size is not important
157*5113495bSYour Name 
158*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
159*5113495bSYour Name 			 that the right response was received.
160*5113495bSYour Name 			<enum 3 ba_256_expected>BA with 256 bitmap is expected.
161*5113495bSYour Name 
162*5113495bSYour Name 			PDG DOES NOT use the size info to calculated response duration.
163*5113495bSYour Name 			The length of the response will have to be programmed by
164*5113495bSYour Name 			 SW in the per-BW 'Expected_ppdu_resp_length' field.
165*5113495bSYour Name 
166*5113495bSYour Name 			For TXPCU only the fact that it is a BA is important. Actual
167*5113495bSYour Name 			 received BA size is not important
168*5113495bSYour Name 
169*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
170*5113495bSYour Name 			 that the right response was received.
171*5113495bSYour Name 			<enum 4 actionnoack_expected>SW sets this after sending
172*5113495bSYour Name 			NDP or BR-Poll.
173*5113495bSYour Name 
174*5113495bSYour Name 			As PDG has no idea on how long the reception is going to
175*5113495bSYour Name 			 be, the reception time of the response will have to be
176*5113495bSYour Name 			programmed by SW in the 'Extend_duration_value_bw...' field
177*5113495bSYour Name 
178*5113495bSYour Name 
179*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
180*5113495bSYour Name 			 that the right response was received.
181*5113495bSYour Name 			<enum 5 ack_ba_expected>PDG uses the size info and assumes
182*5113495bSYour Name 			 single BA format with ACK and 64 bitmap embedded.
183*5113495bSYour Name 			If SW expects more bitmaps in case of multi-TID, is shall
184*5113495bSYour Name 			 program the 'Extend_duration_value_bw...' field for additional
185*5113495bSYour Name 			 duration time.
186*5113495bSYour Name 			For TXPCU only the fact that an ACK and/or BA is received
187*5113495bSYour Name 			 is important. Reception of only ACK or BA is also considered
188*5113495bSYour Name 			 a success.
189*5113495bSYour Name 			SW also typically sets this when sending VHT single MPDU.
190*5113495bSYour Name 			Some chip vendors might send BA rather than ACK in response
191*5113495bSYour Name 			 to VHT single MPDU but still we want to accept BA as well.
192*5113495bSYour Name 
193*5113495bSYour Name 
194*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
195*5113495bSYour Name 			 that the right response was received.
196*5113495bSYour Name 			<enum 6 cts_expected>SW sets this after queuing RTS frame
197*5113495bSYour Name 			 as standalone packet and sending it.
198*5113495bSYour Name 
199*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
200*5113495bSYour Name 			 that the right response was received.
201*5113495bSYour Name 			<enum 7 ack_data_expected>SW sets this after sending PS-Poll.
202*5113495bSYour Name 
203*5113495bSYour Name 
204*5113495bSYour Name 			For TXPCU either ACK and/or data reception is considered
205*5113495bSYour Name 			 success.
206*5113495bSYour Name 			PDG basis it's response duration calculation on an ACK.
207*5113495bSYour Name 			For the data portion, SW shall program the 'Extend_duration_value_bw...'
208*5113495bSYour Name 			field
209*5113495bSYour Name 			<enum 8 ndp_ack_expected>Reserved for 11ah usage.
210*5113495bSYour Name 			<enum 9 ndp_modified_ack>Reserved for 11ah usage
211*5113495bSYour Name 			<enum 10 ndp_ba_expected>Reserved for 11ah usage.
212*5113495bSYour Name 			<enum 11 ndp_cts_expected>Reserved for 11ah usage
213*5113495bSYour Name 			<enum 12 ndp_ack_or_ndp_modified_ack_expected>Reserved for
214*5113495bSYour Name 			 11ah usage
215*5113495bSYour Name 			<enum 13 ul_mu_ba_expected>NOT SUPPORTED IN NAPIER AX AND
216*5113495bSYour Name 			 HASTINGS
217*5113495bSYour Name 
218*5113495bSYour Name 			TXPCU expects UL MU OFDMA or UL MU MIMO reception.
219*5113495bSYour Name 			As PDG does not know how RUs are assigned for the uplink
220*5113495bSYour Name 			 portion, PDG can not calculate the uplink duration. Therefor
221*5113495bSYour Name 			 SW shall program the 'Extend_duration_value_bw...' field
222*5113495bSYour Name 
223*5113495bSYour Name 
224*5113495bSYour Name 			RXPCU will report any frame received, irrespective of it
225*5113495bSYour Name 			 having been UL MU or SU It is TXPCUs responsibility to
226*5113495bSYour Name 			distinguish between the UL MU or SU
227*5113495bSYour Name 
228*5113495bSYour Name 			TXPCU can check in TLV RECEIVED_RESPONSE_INFO MU_Response_BA_bitmap
229*5113495bSYour Name 			 if indeed BA was received
230*5113495bSYour Name 			<enum 14 ul_mu_ba_and_data_expected>NOT SUPPORTED IN NAPIER
231*5113495bSYour Name 			 AX AND HASTINGS
232*5113495bSYour Name 
233*5113495bSYour Name 			TXPCU expects UL MU OFDMA or UL MU MIMO reception.
234*5113495bSYour Name 			As PDG does not know how RUs are assigned for the uplink
235*5113495bSYour Name 			 portion, PDG can not calculate the uplink duration. Therefor
236*5113495bSYour Name 			 SW shall program the 'Extend_duration_value_bw...' field
237*5113495bSYour Name 
238*5113495bSYour Name 
239*5113495bSYour Name 			RXPCU will report any frame received, irrespective of it
240*5113495bSYour Name 			 having been UL MU or SU It is TXPCUs responsibility to
241*5113495bSYour Name 			distinguish between the UL MU or SU
242*5113495bSYour Name 
243*5113495bSYour Name 			TXPCU can check in TLV RECEIVED_RESPONSE_INFO, field MU_Response_data_bitmap
244*5113495bSYour Name 			 and MU_Response_BA_bitmap if indeed BA and data was received
245*5113495bSYour Name 
246*5113495bSYour Name 			<enum 15 ul_mu_cbf_expected>NOT SUPPORTED IN NAPIER AX AND
247*5113495bSYour Name 			 HASTINGS
248*5113495bSYour Name 
249*5113495bSYour Name 			When selected, CBF frames are expected to be received in
250*5113495bSYour Name 			 MU reception (uplink OFDMA or uplink MIMO)
251*5113495bSYour Name 
252*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
253*5113495bSYour Name 			 that the right response was received
254*5113495bSYour Name 			TXPCU can check in TLV RECEIVED_RESPONSE_INFO, field MU_Response_cbf_bitmap
255*5113495bSYour Name 			 if indeed CBF frames were received.
256*5113495bSYour Name 			<enum 16 ul_mu_frames_expected>When selected, MPDU frames
257*5113495bSYour Name 			 are expected in the MU reception (uplink OFDMA or uplink
258*5113495bSYour Name 			 MIMO)
259*5113495bSYour Name 
260*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
261*5113495bSYour Name 			 that the right response was received
262*5113495bSYour Name 
263*5113495bSYour Name 			TXPCU can check in TLV RECEIVED_RESPONSE_INFO, field MU_Response_bitmap
264*5113495bSYour Name 			 if indeed frames were received.
265*5113495bSYour Name 			<enum 17 any_response_to_this_device>Any response expected
266*5113495bSYour Name 			 to be send to this device in SIFS time is acceptable.
267*5113495bSYour Name 
268*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
269*5113495bSYour Name 			 that the right response was received
270*5113495bSYour Name 
271*5113495bSYour Name 			For TXPCU, UL MU or SU is both acceptable.
272*5113495bSYour Name 
273*5113495bSYour Name 			Can be used for complex OFDMA scenarios. PDG can not calculate
274*5113495bSYour Name 			 the uplink duration. Therefor SW shall program the 'Extend_duration_value_bw...'
275*5113495bSYour Name 			field
276*5113495bSYour Name 			<enum 18 any_response_accepted>Any frame in the medium to
277*5113495bSYour Name 			 this or any other device, is acceptable as response.
278*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
279*5113495bSYour Name 			 that the right response was received
280*5113495bSYour Name 
281*5113495bSYour Name 			For TXPCU, UL MU or SU is both acceptable.
282*5113495bSYour Name 
283*5113495bSYour Name 			Can be used for complex OFDMA scenarios. PDG can not calculate
284*5113495bSYour Name 			 the uplink duration. Therefor SW shall program the 'Extend_duration_value_bw...'
285*5113495bSYour Name 			field
286*5113495bSYour Name 			<enum 19 frameless_phyrx_response_accepted>Any MU frameless
287*5113495bSYour Name 			 reception generated by the PHY is acceptable.
288*5113495bSYour Name 
289*5113495bSYour Name 			PHY indicates this type of reception explicitly in TLV PHYRX_RSSI_LEGACY,
290*5113495bSYour Name 			field Reception_type == reception_is_frameless
291*5113495bSYour Name 
292*5113495bSYour Name 			RXPCU will report any frame received, irrespective of it
293*5113495bSYour Name 			 having been UL MU or SU.
294*5113495bSYour Name 
295*5113495bSYour Name 			This can be used for complex MU-MIMO or OFDMA scenarios,
296*5113495bSYour Name 			like receiving MU-CTS.
297*5113495bSYour Name 
298*5113495bSYour Name 			PDG can not calculate the uplink duration. Therefor SW shall
299*5113495bSYour Name 			 program the 'Extend_duration_value_bw...' field
300*5113495bSYour Name 			<enum 20 ranging_ndp_and_lmr_expected>SW sets this after
301*5113495bSYour Name 			 sending ranging NDPA followed by NDP as an ISTA and NDP
302*5113495bSYour Name 			 and LMR (Action No Ack) are expected as back-to-back reception
303*5113495bSYour Name 			 in SIFS.
304*5113495bSYour Name 
305*5113495bSYour Name 			As PDG has no idea on how long the reception is going to
306*5113495bSYour Name 			 be, the reception time of the response will have to be
307*5113495bSYour Name 			programmed by SW in the 'Extend_duration_value_bw...' field
308*5113495bSYour Name 
309*5113495bSYour Name 
310*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
311*5113495bSYour Name 			 that the right response was received.
312*5113495bSYour Name 			<enum 21 ba_512_expected>BA with 512 bitmap is expected.
313*5113495bSYour Name 
314*5113495bSYour Name 
315*5113495bSYour Name 			PDG DOES NOT use the size info to calculated response duration.
316*5113495bSYour Name 			The length of the response will have to be programmed by
317*5113495bSYour Name 			 SW in the per-BW 'Expected_ppdu_resp_length' field.
318*5113495bSYour Name 
319*5113495bSYour Name 			For TXPCU only the fact that it is a BA is important. Actual
320*5113495bSYour Name 			 received BA size is not important
321*5113495bSYour Name 
322*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
323*5113495bSYour Name 			 that the right response was received.
324*5113495bSYour Name 			<enum 22 ba_1024_expected>BA with 1024 bitmap is expected.
325*5113495bSYour Name 
326*5113495bSYour Name 
327*5113495bSYour Name 			PDG DOES NOT use the size info to calculated response duration.
328*5113495bSYour Name 			The length of the response will have to be programmed by
329*5113495bSYour Name 			 SW in the per-BW 'Expected_ppdu_resp_length' field.
330*5113495bSYour Name 
331*5113495bSYour Name 			For TXPCU only the fact that it is a BA is important. Actual
332*5113495bSYour Name 			 received BA size is not important
333*5113495bSYour Name 
334*5113495bSYour Name 			RXPCU is just expecting any response. It is TXPCU who checks
335*5113495bSYour Name 			 that the right response was received.
336*5113495bSYour Name 			<enum 23 ul_mu_ranging_cts2s_expected>When selected, CTS2S
337*5113495bSYour Name 			 frames are expected to be received in MU reception (uplink
338*5113495bSYour Name 			 OFDMA)
339*5113495bSYour Name 
340*5113495bSYour Name 			RXPCU shall check each response for CTS2S and report to
341*5113495bSYour Name 			TXPCU.
342*5113495bSYour Name 
343*5113495bSYour Name 			TXPCU can check in the TLV 'RECEIVED_RESPONSE_INFO,' fields
344*5113495bSYour Name 			 'MU_Response_bitmap' and 'TB_Ranging_Resp' if indeed CTS2S
345*5113495bSYour Name 			 frames were received.
346*5113495bSYour Name 			<enum 24 ul_mu_ranging_ndp_expected>When selected, UL NDP
347*5113495bSYour Name 			 frames are expected to be received in MU reception (uplink
348*5113495bSYour Name 			 spatial multiplexing)
349*5113495bSYour Name 
350*5113495bSYour Name 			RXPCU shall check each response for NDP and report to TXPCU.
351*5113495bSYour Name 
352*5113495bSYour Name 
353*5113495bSYour Name 			TXPCU can check in the TLV 'RECEIVED_RESPONSE_INFO,' fields
354*5113495bSYour Name 			 'MU_Response_bitmap' and 'TB_Ranging_Resp' if indeed NDP
355*5113495bSYour Name 			 frames were received.
356*5113495bSYour Name 			<enum 25 ul_mu_ranging_lmr_expected>When selected, LMR frames
357*5113495bSYour Name 			 are expected to be received in MU reception (uplink OFDMA
358*5113495bSYour Name 			 or uplink MIMO)
359*5113495bSYour Name 
360*5113495bSYour Name 			RXPCU shall check each response for LMR and report to TXPCU.
361*5113495bSYour Name 
362*5113495bSYour Name 
363*5113495bSYour Name 			TXPCU can check in the TLV 'RECEIVED_RESPONSE_INFO,' fields
364*5113495bSYour Name 			 'MU_Response_bitmap' and 'TB_Ranging_Resp' if indeed LMR
365*5113495bSYour Name 			 frames were received.
366*5113495bSYour Name */
367*5113495bSYour Name 
368*5113495bSYour Name #define EXPECTED_RESPONSE_EXPECTED_RESPONSE_TYPE_OFFSET                             0x0000000000000000
369*5113495bSYour Name #define EXPECTED_RESPONSE_EXPECTED_RESPONSE_TYPE_LSB                                48
370*5113495bSYour Name #define EXPECTED_RESPONSE_EXPECTED_RESPONSE_TYPE_MSB                                52
371*5113495bSYour Name #define EXPECTED_RESPONSE_EXPECTED_RESPONSE_TYPE_MASK                               0x001f000000000000
372*5113495bSYour Name 
373*5113495bSYour Name 
374*5113495bSYour Name /* Description		RESPONSE_TO_RESPONSE
375*5113495bSYour Name 
376*5113495bSYour Name 			Field indicates if after receiving the PPDU response (indicated
377*5113495bSYour Name 			 in the field above), TXPCU is expected to generate a reponse
378*5113495bSYour Name 			 to the response
379*5113495bSYour Name 
380*5113495bSYour Name 			In case a response to response is expected, RXPCU shall
381*5113495bSYour Name 			first acknowledge the proper reception of the received frames,
382*5113495bSYour Name 			so that TXPCU can first wrapup that portion of the FES.
383*5113495bSYour Name 
384*5113495bSYour Name 			<enum 0 None> No response after response allowed.
385*5113495bSYour Name 			<enum 1 SU_BA> The response after response that TXPCU is
386*5113495bSYour Name 			 allowed to generate is a single BA. Even if RXPCU is indicating
387*5113495bSYour Name 			 that multiple users are received, TXPCU shall only send
388*5113495bSYour Name 			 a BA for 1 STA. Response_to_response rates can be found
389*5113495bSYour Name 			 in fields 'response_to_response_rate_info_bw...'
390*5113495bSYour Name 			<enum 2 MU_BA> The response after response that TXPCU is
391*5113495bSYour Name 			 allowed to generate is only Multi Destination Multi User
392*5113495bSYour Name 			 BA. Response_to_response rates can be found in fields 'response_to_response_rate_info_bw...'
393*5113495bSYour Name 
394*5113495bSYour Name 
395*5113495bSYour Name 			<enum 3 RESPONSE_TO_RESPONSE_CMD> A response to response
396*5113495bSYour Name 			 is expected to be generated. In other words, RXPCU will
397*5113495bSYour Name 			 likely indicate to TXPCU at the end of upcoming reception
398*5113495bSYour Name 			 that a response is needed. TXPCU is however to ignore this
399*5113495bSYour Name 			 indication from RXPCU, and assume for a moment that no
400*5113495bSYour Name 			response to response is needed, as all the details on how
401*5113495bSYour Name 			 to handle this is provided in the next scheduling command,
402*5113495bSYour Name 			which is marked as a 'response_to_response' type.
403*5113495bSYour Name 
404*5113495bSYour Name 			<legal    0-3>
405*5113495bSYour Name */
406*5113495bSYour Name 
407*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_TO_RESPONSE_OFFSET                               0x0000000000000000
408*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_TO_RESPONSE_LSB                                  53
409*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_TO_RESPONSE_MSB                                  55
410*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_TO_RESPONSE_MASK                                 0x00e0000000000000
411*5113495bSYour Name 
412*5113495bSYour Name 
413*5113495bSYour Name /* Description		SU_BA_USER_NUMBER
414*5113495bSYour Name 
415*5113495bSYour Name 			Field only valid when Response_to_response is SU_BA
416*5113495bSYour Name 
417*5113495bSYour Name 			Indicates the user number of which the BA will be send after
418*5113495bSYour Name 			 receiving the uplink OFDMA.
419*5113495bSYour Name */
420*5113495bSYour Name 
421*5113495bSYour Name #define EXPECTED_RESPONSE_SU_BA_USER_NUMBER_OFFSET                                  0x0000000000000000
422*5113495bSYour Name #define EXPECTED_RESPONSE_SU_BA_USER_NUMBER_LSB                                     56
423*5113495bSYour Name #define EXPECTED_RESPONSE_SU_BA_USER_NUMBER_MSB                                     56
424*5113495bSYour Name #define EXPECTED_RESPONSE_SU_BA_USER_NUMBER_MASK                                    0x0100000000000000
425*5113495bSYour Name 
426*5113495bSYour Name 
427*5113495bSYour Name /* Description		RESPONSE_INFO_PART2_REQUIRED
428*5113495bSYour Name 
429*5113495bSYour Name 			Field only valid when Response_type  is NOT set to No_response_expected
430*5113495bSYour Name 
431*5113495bSYour Name 
432*5113495bSYour Name 			When set to 1, RXPCU shall generate the  RECEIVED_RESPONSE_INFO_PART2
433*5113495bSYour Name 			 TLV after having received the response frame. TXPCU shall
434*5113495bSYour Name 			 wait for this TLV before sending the TX_FES_STATUS_END
435*5113495bSYour Name 			TLV.
436*5113495bSYour Name 
437*5113495bSYour Name 			When NOT set, RXPCU shall NOT generate the above mentioned
438*5113495bSYour Name 			 TLV. TXPCU shall not wait for this TLV and after having
439*5113495bSYour Name 			 received  RECEIVED_RESPONSE_INFO  TLV, it can immediately
440*5113495bSYour Name 			 generate the TX_FES_STATUS_END TLV.
441*5113495bSYour Name 
442*5113495bSYour Name 			<legal all>
443*5113495bSYour Name */
444*5113495bSYour Name 
445*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_INFO_PART2_REQUIRED_OFFSET                       0x0000000000000000
446*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_INFO_PART2_REQUIRED_LSB                          57
447*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_INFO_PART2_REQUIRED_MSB                          57
448*5113495bSYour Name #define EXPECTED_RESPONSE_RESPONSE_INFO_PART2_REQUIRED_MASK                         0x0200000000000000
449*5113495bSYour Name 
450*5113495bSYour Name 
451*5113495bSYour Name /* Description		TRANSMITTED_BSSID_CHECK_EN
452*5113495bSYour Name 
453*5113495bSYour Name 			When set to 1, RXPCU shall assume group addressed frame
454*5113495bSYour Name 			with Tx_AD2 equal to TBSSID was sent. RxPCU should properly
455*5113495bSYour Name 			 handle receive frame(s) from STA(s) which A1 is TBSSID
456*5113495bSYour Name 			or any VAPs.When NOT set, RXPCU shall compare received frame's
457*5113495bSYour Name 			 A1 with Tx_AD2 only.
458*5113495bSYour Name 			<legal all>
459*5113495bSYour Name */
460*5113495bSYour Name 
461*5113495bSYour Name #define EXPECTED_RESPONSE_TRANSMITTED_BSSID_CHECK_EN_OFFSET                         0x0000000000000000
462*5113495bSYour Name #define EXPECTED_RESPONSE_TRANSMITTED_BSSID_CHECK_EN_LSB                            58
463*5113495bSYour Name #define EXPECTED_RESPONSE_TRANSMITTED_BSSID_CHECK_EN_MSB                            58
464*5113495bSYour Name #define EXPECTED_RESPONSE_TRANSMITTED_BSSID_CHECK_EN_MASK                           0x0400000000000000
465*5113495bSYour Name 
466*5113495bSYour Name 
467*5113495bSYour Name /* Description		RESERVED_1
468*5113495bSYour Name 
469*5113495bSYour Name 			<legal 0>
470*5113495bSYour Name */
471*5113495bSYour Name 
472*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_1_OFFSET                                         0x0000000000000000
473*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_1_LSB                                            59
474*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_1_MSB                                            63
475*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_1_MASK                                           0xf800000000000000
476*5113495bSYour Name 
477*5113495bSYour Name 
478*5113495bSYour Name /* Description		NDP_STA_PARTIAL_AID_2_8_0
479*5113495bSYour Name 
480*5113495bSYour Name 			This field is applicable only in 11ah mode of operation.
481*5113495bSYour Name 			This field carries the information needed for RxPCU to qualify
482*5113495bSYour Name 			 valid NDP-CTS
483*5113495bSYour Name 
484*5113495bSYour Name 			When an RTS is being transmitted, this field  provides the
485*5113495bSYour Name 			 partial AID of STA/BSSID of the transmitter,so the received
486*5113495bSYour Name 			 RA/BSSID of the NDP CTS response frame can be compared
487*5113495bSYour Name 			to validate it. This value is provided by SW for valiadating
488*5113495bSYour Name 			 the NDP CTS.
489*5113495bSYour Name 
490*5113495bSYour Name 			This filed also carries information for TA of the NDP Modified
491*5113495bSYour Name 			 ACK when an NDP PS-Poll is transmitted.
492*5113495bSYour Name */
493*5113495bSYour Name 
494*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID_2_8_0_OFFSET                          0x0000000000000008
495*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID_2_8_0_LSB                             0
496*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID_2_8_0_MSB                             10
497*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID_2_8_0_MASK                            0x00000000000007ff
498*5113495bSYour Name 
499*5113495bSYour Name 
500*5113495bSYour Name /* Description		RESERVED_2
501*5113495bSYour Name 
502*5113495bSYour Name 			Reserved: Generator should set to 0, consumer shall ignore
503*5113495bSYour Name 			 <legal 0>
504*5113495bSYour Name */
505*5113495bSYour Name 
506*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_2_OFFSET                                         0x0000000000000008
507*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_2_LSB                                            11
508*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_2_MSB                                            20
509*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_2_MASK                                           0x00000000001ff800
510*5113495bSYour Name 
511*5113495bSYour Name 
512*5113495bSYour Name /* Description		NDP_STA_PARTIAL_AID1_8_0
513*5113495bSYour Name 
514*5113495bSYour Name 			This field is applicable only in 11ah mode of operation.
515*5113495bSYour Name 			This field carries the information needed for RxPCU to qualify
516*5113495bSYour Name 			 valid NDP Modified ACK
517*5113495bSYour Name 
518*5113495bSYour Name 			TxPCU provides the partial AID (RA) of the NDP PS-Poll frame.
519*5113495bSYour Name 
520*5113495bSYour Name */
521*5113495bSYour Name 
522*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID1_8_0_OFFSET                           0x0000000000000008
523*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID1_8_0_LSB                              21
524*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID1_8_0_MSB                              31
525*5113495bSYour Name #define EXPECTED_RESPONSE_NDP_STA_PARTIAL_AID1_8_0_MASK                             0x00000000ffe00000
526*5113495bSYour Name 
527*5113495bSYour Name 
528*5113495bSYour Name /* Description		AST_INDEX
529*5113495bSYour Name 
530*5113495bSYour Name 			The AST index of the receive Ack/BA.  This information is
531*5113495bSYour Name 			 provided from the TXPCU to the RXPCU for receive Ack/BA.
532*5113495bSYour Name 
533*5113495bSYour Name */
534*5113495bSYour Name 
535*5113495bSYour Name #define EXPECTED_RESPONSE_AST_INDEX_OFFSET                                          0x0000000000000008
536*5113495bSYour Name #define EXPECTED_RESPONSE_AST_INDEX_LSB                                             32
537*5113495bSYour Name #define EXPECTED_RESPONSE_AST_INDEX_MSB                                             47
538*5113495bSYour Name #define EXPECTED_RESPONSE_AST_INDEX_MASK                                            0x0000ffff00000000
539*5113495bSYour Name 
540*5113495bSYour Name 
541*5113495bSYour Name /* Description		CAPTURE_ACK_BA_SOUNDING
542*5113495bSYour Name 
543*5113495bSYour Name 			If set enables capture of 1str and 2str sounding on Ack
544*5113495bSYour Name 			or BA as long as the corresponding capture_sounding_1str_##mhz
545*5113495bSYour Name 			 bits is set.
546*5113495bSYour Name 
547*5113495bSYour Name 			If clear the capture of sounding on Ack or BA is disabled
548*5113495bSYour Name 			 even if the corresponding capture_sounding_1str_##mhz is
549*5113495bSYour Name 			 set.
550*5113495bSYour Name */
551*5113495bSYour Name 
552*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_ACK_BA_SOUNDING_OFFSET                            0x0000000000000008
553*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_ACK_BA_SOUNDING_LSB                               48
554*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_ACK_BA_SOUNDING_MSB                               48
555*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_ACK_BA_SOUNDING_MASK                              0x0001000000000000
556*5113495bSYour Name 
557*5113495bSYour Name 
558*5113495bSYour Name /* Description		CAPTURE_SOUNDING_1STR_20MHZ
559*5113495bSYour Name 
560*5113495bSYour Name 			Capture sounding for 1 stream 20 MHz receive packets
561*5113495bSYour Name */
562*5113495bSYour Name 
563*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_20MHZ_OFFSET                        0x0000000000000008
564*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_20MHZ_LSB                           49
565*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_20MHZ_MSB                           49
566*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_20MHZ_MASK                          0x0002000000000000
567*5113495bSYour Name 
568*5113495bSYour Name 
569*5113495bSYour Name /* Description		CAPTURE_SOUNDING_1STR_40MHZ
570*5113495bSYour Name 
571*5113495bSYour Name 			Capture sounding for 1 stream 40 MHz receive packets
572*5113495bSYour Name */
573*5113495bSYour Name 
574*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_40MHZ_OFFSET                        0x0000000000000008
575*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_40MHZ_LSB                           50
576*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_40MHZ_MSB                           50
577*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_40MHZ_MASK                          0x0004000000000000
578*5113495bSYour Name 
579*5113495bSYour Name 
580*5113495bSYour Name /* Description		CAPTURE_SOUNDING_1STR_80MHZ
581*5113495bSYour Name 
582*5113495bSYour Name 			Capture sounding for 1 stream 80 MHz receive packets
583*5113495bSYour Name */
584*5113495bSYour Name 
585*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_80MHZ_OFFSET                        0x0000000000000008
586*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_80MHZ_LSB                           51
587*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_80MHZ_MSB                           51
588*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_80MHZ_MASK                          0x0008000000000000
589*5113495bSYour Name 
590*5113495bSYour Name 
591*5113495bSYour Name /* Description		CAPTURE_SOUNDING_1STR_160MHZ
592*5113495bSYour Name 
593*5113495bSYour Name 			Capture sounding for 1 stream 160 MHz receive packets
594*5113495bSYour Name */
595*5113495bSYour Name 
596*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_160MHZ_OFFSET                       0x0000000000000008
597*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_160MHZ_LSB                          52
598*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_160MHZ_MSB                          52
599*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_160MHZ_MASK                         0x0010000000000000
600*5113495bSYour Name 
601*5113495bSYour Name 
602*5113495bSYour Name /* Description		CAPTURE_SOUNDING_1STR_240MHZ
603*5113495bSYour Name 
604*5113495bSYour Name 			Capture sounding for 1 stream 240 MHz receive packets
605*5113495bSYour Name */
606*5113495bSYour Name 
607*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_240MHZ_OFFSET                       0x0000000000000008
608*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_240MHZ_LSB                          53
609*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_240MHZ_MSB                          53
610*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_240MHZ_MASK                         0x0020000000000000
611*5113495bSYour Name 
612*5113495bSYour Name 
613*5113495bSYour Name /* Description		CAPTURE_SOUNDING_1STR_320MHZ
614*5113495bSYour Name 
615*5113495bSYour Name 			Capture sounding for 1 stream 320 MHz receive packets
616*5113495bSYour Name */
617*5113495bSYour Name 
618*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_320MHZ_OFFSET                       0x0000000000000008
619*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_320MHZ_LSB                          54
620*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_320MHZ_MSB                          54
621*5113495bSYour Name #define EXPECTED_RESPONSE_CAPTURE_SOUNDING_1STR_320MHZ_MASK                         0x0040000000000000
622*5113495bSYour Name 
623*5113495bSYour Name 
624*5113495bSYour Name /* Description		RESERVED_3A
625*5113495bSYour Name 
626*5113495bSYour Name 			Reserved: Generator should set to 0, consumer shall ignore
627*5113495bSYour Name 			 <legal 0>
628*5113495bSYour Name */
629*5113495bSYour Name 
630*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_3A_OFFSET                                        0x0000000000000008
631*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_3A_LSB                                           55
632*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_3A_MSB                                           63
633*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_3A_MASK                                          0xff80000000000000
634*5113495bSYour Name 
635*5113495bSYour Name 
636*5113495bSYour Name /* Description		FCS
637*5113495bSYour Name 
638*5113495bSYour Name 			Tx Frame's FCS[31:23]
639*5113495bSYour Name 
640*5113495bSYour Name 			TODO: describe what this is used for ...
641*5113495bSYour Name 
642*5113495bSYour Name 			For aggregates and NDP frames, this field is reserved and
643*5113495bSYour Name 			 TxPCU should populate this to Zero.
644*5113495bSYour Name */
645*5113495bSYour Name 
646*5113495bSYour Name #define EXPECTED_RESPONSE_FCS_OFFSET                                                0x0000000000000010
647*5113495bSYour Name #define EXPECTED_RESPONSE_FCS_LSB                                                   0
648*5113495bSYour Name #define EXPECTED_RESPONSE_FCS_MSB                                                   8
649*5113495bSYour Name #define EXPECTED_RESPONSE_FCS_MASK                                                  0x00000000000001ff
650*5113495bSYour Name 
651*5113495bSYour Name 
652*5113495bSYour Name /* Description		RESERVED_4A
653*5113495bSYour Name 
654*5113495bSYour Name 			Reserved: Generator should set to 0, consumer shall ignore
655*5113495bSYour Name 			 <legal 0>
656*5113495bSYour Name */
657*5113495bSYour Name 
658*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4A_OFFSET                                        0x0000000000000010
659*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4A_LSB                                           9
660*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4A_MSB                                           9
661*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4A_MASK                                          0x0000000000000200
662*5113495bSYour Name 
663*5113495bSYour Name 
664*5113495bSYour Name /* Description		CRC
665*5113495bSYour Name 
666*5113495bSYour Name 			TODO: describe what this is used for ...
667*5113495bSYour Name 
668*5113495bSYour Name 			Tx SIG's CRC[3:0]
669*5113495bSYour Name */
670*5113495bSYour Name 
671*5113495bSYour Name #define EXPECTED_RESPONSE_CRC_OFFSET                                                0x0000000000000010
672*5113495bSYour Name #define EXPECTED_RESPONSE_CRC_LSB                                                   10
673*5113495bSYour Name #define EXPECTED_RESPONSE_CRC_MSB                                                   13
674*5113495bSYour Name #define EXPECTED_RESPONSE_CRC_MASK                                                  0x0000000000003c00
675*5113495bSYour Name 
676*5113495bSYour Name 
677*5113495bSYour Name /* Description		SCRAMBLER_SEED
678*5113495bSYour Name 
679*5113495bSYour Name 			TODO: describe what this is used for ...
680*5113495bSYour Name 
681*5113495bSYour Name 			Tx Frames SERVICE[6:0]
682*5113495bSYour Name */
683*5113495bSYour Name 
684*5113495bSYour Name #define EXPECTED_RESPONSE_SCRAMBLER_SEED_OFFSET                                     0x0000000000000010
685*5113495bSYour Name #define EXPECTED_RESPONSE_SCRAMBLER_SEED_LSB                                        14
686*5113495bSYour Name #define EXPECTED_RESPONSE_SCRAMBLER_SEED_MSB                                        20
687*5113495bSYour Name #define EXPECTED_RESPONSE_SCRAMBLER_SEED_MASK                                       0x00000000001fc000
688*5113495bSYour Name 
689*5113495bSYour Name 
690*5113495bSYour Name /* Description		RESERVED_4B
691*5113495bSYour Name 
692*5113495bSYour Name 			Reserved: Generator should set to 0, consumer shall ignore
693*5113495bSYour Name 			 <legal 0>
694*5113495bSYour Name */
695*5113495bSYour Name 
696*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4B_OFFSET                                        0x0000000000000010
697*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4B_LSB                                           21
698*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4B_MSB                                           31
699*5113495bSYour Name #define EXPECTED_RESPONSE_RESERVED_4B_MASK                                          0x00000000ffe00000
700*5113495bSYour Name 
701*5113495bSYour Name 
702*5113495bSYour Name /* Description		TLV64_PADDING
703*5113495bSYour Name 
704*5113495bSYour Name 			Automatic DWORD padding inserted while converting TLV32
705*5113495bSYour Name 			to TLV64 for 64 bit ARCH
706*5113495bSYour Name 			<legal 0>
707*5113495bSYour Name */
708*5113495bSYour Name 
709*5113495bSYour Name #define EXPECTED_RESPONSE_TLV64_PADDING_OFFSET                                      0x0000000000000010
710*5113495bSYour Name #define EXPECTED_RESPONSE_TLV64_PADDING_LSB                                         32
711*5113495bSYour Name #define EXPECTED_RESPONSE_TLV64_PADDING_MSB                                         63
712*5113495bSYour Name #define EXPECTED_RESPONSE_TLV64_PADDING_MASK                                        0xffffffff00000000
713*5113495bSYour Name 
714*5113495bSYour Name 
715*5113495bSYour Name 
716*5113495bSYour Name #endif   // EXPECTED_RESPONSE
717