xref: /wlan-driver/fw-api/hw/qcn6432/ofdma_trigger_details.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1 /*
2  * Copyright (c) 2023 Qualcomm Innovation Center, Inc. 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 _OFDMA_TRIGGER_DETAILS_H_
18 #define _OFDMA_TRIGGER_DETAILS_H_
19 #if !defined(__ASSEMBLER__)
20 #endif
21 
22 #include "mlo_sta_id_details.h"
23 #define NUM_OF_DWORDS_OFDMA_TRIGGER_DETAILS 22
24 
25 #define NUM_OF_QWORDS_OFDMA_TRIGGER_DETAILS 11
26 
27 
28 struct ofdma_trigger_details {
29 #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
30              uint32_t ax_trigger_source                                       :  1, // [0:0]
31                       rx_trigger_frame_user_source                            :  2, // [2:1]
32                       received_bandwidth                                      :  3, // [5:3]
33                       txop_duration_all_ones                                  :  1, // [6:6]
34                       eht_trigger_response                                    :  1, // [7:7]
35                       pre_rssi_comb                                           :  8, // [15:8]
36                       rssi_comb                                               :  8, // [23:16]
37                       rxpcu_pcie_l0_req_duration                              :  8; // [31:24]
38              uint32_t he_trigger_ul_ppdu_length                               :  5, // [4:0]
39                       he_trigger_ru_allocation                                :  8, // [12:5]
40                       he_trigger_dl_tx_power                                  :  5, // [17:13]
41                       he_trigger_ul_target_rssi                               :  5, // [22:18]
42                       he_trigger_ul_mcs                                       :  2, // [24:23]
43                       he_trigger_reserved                                     :  1, // [25:25]
44                       bss_color                                               :  6; // [31:26]
45              uint32_t trigger_type                                            :  4, // [3:0]
46                       lsig_response_length                                    : 12, // [15:4]
47                       cascade_indication                                      :  1, // [16:16]
48                       carrier_sense                                           :  1, // [17:17]
49                       bandwidth                                               :  2, // [19:18]
50                       cp_ltf_size                                             :  2, // [21:20]
51                       mu_mimo_ltf_mode                                        :  1, // [22:22]
52                       number_of_ltfs                                          :  3, // [25:23]
53                       stbc                                                    :  1, // [26:26]
54                       ldpc_extra_symbol                                       :  1, // [27:27]
55                       ap_tx_power_lsb_part                                    :  4; // [31:28]
56              uint32_t ap_tx_power_msb_part                                    :  2, // [1:0]
57                       packet_extension_a_factor                               :  2, // [3:2]
58                       packet_extension_pe_disambiguity                        :  1, // [4:4]
59                       spatial_reuse                                           : 16, // [20:5]
60                       doppler                                                 :  1, // [21:21]
61                       he_siga_reserved                                        :  9, // [30:22]
62                       reserved_3b                                             :  1; // [31:31]
63              uint32_t aid12                                                   : 12, // [11:0]
64                       ru_allocation                                           :  9, // [20:12]
65                       mcs                                                     :  4, // [24:21]
66                       dcm                                                     :  1, // [25:25]
67                       start_spatial_stream                                    :  3, // [28:26]
68                       number_of_spatial_stream                                :  3; // [31:29]
69              uint32_t target_rssi                                             :  7, // [6:0]
70                       coding_type                                             :  1, // [7:7]
71                       mpdu_mu_spacing_factor                                  :  2, // [9:8]
72                       tid_aggregation_limit                                   :  3, // [12:10]
73                       reserved_5b                                             :  1, // [13:13]
74                       prefered_ac                                             :  2, // [15:14]
75                       bar_control_ack_policy                                  :  1, // [16:16]
76                       bar_control_multi_tid                                   :  1, // [17:17]
77                       bar_control_compressed_bitmap                           :  1, // [18:18]
78                       bar_control_reserved                                    :  9, // [27:19]
79                       bar_control_tid_info                                    :  4; // [31:28]
80              uint32_t nr0_per_tid_info_reserved                               : 12, // [11:0]
81                       nr0_per_tid_info_tid_value                              :  4, // [15:12]
82                       nr0_start_seq_ctrl_frag_number                          :  4, // [19:16]
83                       nr0_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
84              uint32_t nr1_per_tid_info_reserved                               : 12, // [11:0]
85                       nr1_per_tid_info_tid_value                              :  4, // [15:12]
86                       nr1_start_seq_ctrl_frag_number                          :  4, // [19:16]
87                       nr1_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
88              uint32_t nr2_per_tid_info_reserved                               : 12, // [11:0]
89                       nr2_per_tid_info_tid_value                              :  4, // [15:12]
90                       nr2_start_seq_ctrl_frag_number                          :  4, // [19:16]
91                       nr2_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
92              uint32_t nr3_per_tid_info_reserved                               : 12, // [11:0]
93                       nr3_per_tid_info_tid_value                              :  4, // [15:12]
94                       nr3_start_seq_ctrl_frag_number                          :  4, // [19:16]
95                       nr3_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
96              uint32_t nr4_per_tid_info_reserved                               : 12, // [11:0]
97                       nr4_per_tid_info_tid_value                              :  4, // [15:12]
98                       nr4_start_seq_ctrl_frag_number                          :  4, // [19:16]
99                       nr4_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
100              uint32_t nr5_per_tid_info_reserved                               : 12, // [11:0]
101                       nr5_per_tid_info_tid_value                              :  4, // [15:12]
102                       nr5_start_seq_ctrl_frag_number                          :  4, // [19:16]
103                       nr5_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
104              uint32_t nr6_per_tid_info_reserved                               : 12, // [11:0]
105                       nr6_per_tid_info_tid_value                              :  4, // [15:12]
106                       nr6_start_seq_ctrl_frag_number                          :  4, // [19:16]
107                       nr6_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
108              uint32_t nr7_per_tid_info_reserved                               : 12, // [11:0]
109                       nr7_per_tid_info_tid_value                              :  4, // [15:12]
110                       nr7_start_seq_ctrl_frag_number                          :  4, // [19:16]
111                       nr7_start_seq_ctrl_start_seq_number                     : 12; // [31:20]
112              uint32_t fb_segment_retransmission_bitmap                        :  8, // [7:0]
113                       reserved_14a                                            :  2, // [9:8]
114                       u_sig_puncture_pattern_encoding                         :  6, // [15:10]
115                       dot11be_puncture_bitmap                                 : 16; // [31:16]
116              uint32_t rx_chain_mask                                           :  8, // [7:0]
117                       rx_duration_field                                       : 16, // [23:8]
118                       scrambler_seed                                          :  7, // [30:24]
119                       rx_chain_mask_type                                      :  1; // [31:31]
120              struct   mlo_sta_id_details                                        mlo_sta_id_details_rx;
121              uint16_t normalized_pre_rssi_comb                                :  8, // [23:16]
122                       normalized_rssi_comb                                    :  8; // [31:24]
123              uint32_t sw_peer_id                                              : 16, // [15:0]
124                       response_tx_duration                                    : 16; // [31:16]
125              uint32_t ranging_trigger_subtype                                 :  4, // [3:0]
126                       tbr_trigger_common_info_79_68                           : 12, // [15:4]
127                       tbr_trigger_sound_reserved_20_12                        :  9, // [24:16]
128                       i2r_rep                                                 :  3, // [27:25]
129                       tbr_trigger_sound_reserved_25_24                        :  2, // [29:28]
130                       reserved_18a                                            :  1, // [30:30]
131                       qos_null_only_response_tx                               :  1; // [31:31]
132              uint32_t tbr_trigger_sound_sac                                   : 16, // [15:0]
133                       reserved_19a                                            :  8, // [23:16]
134                       u_sig_reserved2                                         :  5, // [28:24]
135                       reserved_19b                                            :  3; // [31:29]
136              uint32_t eht_special_aid12                                       : 12, // [11:0]
137                       phy_version                                             :  3, // [14:12]
138                       bandwidth_ext                                           :  2, // [16:15]
139                       eht_spatial_reuse                                       :  8, // [24:17]
140                       u_sig_reserved1                                         :  7; // [31:25]
141              uint32_t eht_trigger_special_user_info_71_40                     : 32; // [31:0]
142 #else
143              uint32_t rxpcu_pcie_l0_req_duration                              :  8, // [31:24]
144                       rssi_comb                                               :  8, // [23:16]
145                       pre_rssi_comb                                           :  8, // [15:8]
146                       eht_trigger_response                                    :  1, // [7:7]
147                       txop_duration_all_ones                                  :  1, // [6:6]
148                       received_bandwidth                                      :  3, // [5:3]
149                       rx_trigger_frame_user_source                            :  2, // [2:1]
150                       ax_trigger_source                                       :  1; // [0:0]
151              uint32_t bss_color                                               :  6, // [31:26]
152                       he_trigger_reserved                                     :  1, // [25:25]
153                       he_trigger_ul_mcs                                       :  2, // [24:23]
154                       he_trigger_ul_target_rssi                               :  5, // [22:18]
155                       he_trigger_dl_tx_power                                  :  5, // [17:13]
156                       he_trigger_ru_allocation                                :  8, // [12:5]
157                       he_trigger_ul_ppdu_length                               :  5; // [4:0]
158              uint32_t ap_tx_power_lsb_part                                    :  4, // [31:28]
159                       ldpc_extra_symbol                                       :  1, // [27:27]
160                       stbc                                                    :  1, // [26:26]
161                       number_of_ltfs                                          :  3, // [25:23]
162                       mu_mimo_ltf_mode                                        :  1, // [22:22]
163                       cp_ltf_size                                             :  2, // [21:20]
164                       bandwidth                                               :  2, // [19:18]
165                       carrier_sense                                           :  1, // [17:17]
166                       cascade_indication                                      :  1, // [16:16]
167                       lsig_response_length                                    : 12, // [15:4]
168                       trigger_type                                            :  4; // [3:0]
169              uint32_t reserved_3b                                             :  1, // [31:31]
170                       he_siga_reserved                                        :  9, // [30:22]
171                       doppler                                                 :  1, // [21:21]
172                       spatial_reuse                                           : 16, // [20:5]
173                       packet_extension_pe_disambiguity                        :  1, // [4:4]
174                       packet_extension_a_factor                               :  2, // [3:2]
175                       ap_tx_power_msb_part                                    :  2; // [1:0]
176              uint32_t number_of_spatial_stream                                :  3, // [31:29]
177                       start_spatial_stream                                    :  3, // [28:26]
178                       dcm                                                     :  1, // [25:25]
179                       mcs                                                     :  4, // [24:21]
180                       ru_allocation                                           :  9, // [20:12]
181                       aid12                                                   : 12; // [11:0]
182              uint32_t bar_control_tid_info                                    :  4, // [31:28]
183                       bar_control_reserved                                    :  9, // [27:19]
184                       bar_control_compressed_bitmap                           :  1, // [18:18]
185                       bar_control_multi_tid                                   :  1, // [17:17]
186                       bar_control_ack_policy                                  :  1, // [16:16]
187                       prefered_ac                                             :  2, // [15:14]
188                       reserved_5b                                             :  1, // [13:13]
189                       tid_aggregation_limit                                   :  3, // [12:10]
190                       mpdu_mu_spacing_factor                                  :  2, // [9:8]
191                       coding_type                                             :  1, // [7:7]
192                       target_rssi                                             :  7; // [6:0]
193              uint32_t nr0_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
194                       nr0_start_seq_ctrl_frag_number                          :  4, // [19:16]
195                       nr0_per_tid_info_tid_value                              :  4, // [15:12]
196                       nr0_per_tid_info_reserved                               : 12; // [11:0]
197              uint32_t nr1_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
198                       nr1_start_seq_ctrl_frag_number                          :  4, // [19:16]
199                       nr1_per_tid_info_tid_value                              :  4, // [15:12]
200                       nr1_per_tid_info_reserved                               : 12; // [11:0]
201              uint32_t nr2_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
202                       nr2_start_seq_ctrl_frag_number                          :  4, // [19:16]
203                       nr2_per_tid_info_tid_value                              :  4, // [15:12]
204                       nr2_per_tid_info_reserved                               : 12; // [11:0]
205              uint32_t nr3_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
206                       nr3_start_seq_ctrl_frag_number                          :  4, // [19:16]
207                       nr3_per_tid_info_tid_value                              :  4, // [15:12]
208                       nr3_per_tid_info_reserved                               : 12; // [11:0]
209              uint32_t nr4_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
210                       nr4_start_seq_ctrl_frag_number                          :  4, // [19:16]
211                       nr4_per_tid_info_tid_value                              :  4, // [15:12]
212                       nr4_per_tid_info_reserved                               : 12; // [11:0]
213              uint32_t nr5_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
214                       nr5_start_seq_ctrl_frag_number                          :  4, // [19:16]
215                       nr5_per_tid_info_tid_value                              :  4, // [15:12]
216                       nr5_per_tid_info_reserved                               : 12; // [11:0]
217              uint32_t nr6_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
218                       nr6_start_seq_ctrl_frag_number                          :  4, // [19:16]
219                       nr6_per_tid_info_tid_value                              :  4, // [15:12]
220                       nr6_per_tid_info_reserved                               : 12; // [11:0]
221              uint32_t nr7_start_seq_ctrl_start_seq_number                     : 12, // [31:20]
222                       nr7_start_seq_ctrl_frag_number                          :  4, // [19:16]
223                       nr7_per_tid_info_tid_value                              :  4, // [15:12]
224                       nr7_per_tid_info_reserved                               : 12; // [11:0]
225              uint32_t dot11be_puncture_bitmap                                 : 16, // [31:16]
226                       u_sig_puncture_pattern_encoding                         :  6, // [15:10]
227                       reserved_14a                                            :  2, // [9:8]
228                       fb_segment_retransmission_bitmap                        :  8; // [7:0]
229              uint32_t rx_chain_mask_type                                      :  1, // [31:31]
230                       scrambler_seed                                          :  7, // [30:24]
231                       rx_duration_field                                       : 16, // [23:8]
232                       rx_chain_mask                                           :  8; // [7:0]
233              uint32_t normalized_rssi_comb                                    :  8, // [31:24]
234                       normalized_pre_rssi_comb                                :  8; // [23:16]
235              struct   mlo_sta_id_details                                        mlo_sta_id_details_rx;
236              uint32_t response_tx_duration                                    : 16, // [31:16]
237                       sw_peer_id                                              : 16; // [15:0]
238              uint32_t qos_null_only_response_tx                               :  1, // [31:31]
239                       reserved_18a                                            :  1, // [30:30]
240                       tbr_trigger_sound_reserved_25_24                        :  2, // [29:28]
241                       i2r_rep                                                 :  3, // [27:25]
242                       tbr_trigger_sound_reserved_20_12                        :  9, // [24:16]
243                       tbr_trigger_common_info_79_68                           : 12, // [15:4]
244                       ranging_trigger_subtype                                 :  4; // [3:0]
245              uint32_t reserved_19b                                            :  3, // [31:29]
246                       u_sig_reserved2                                         :  5, // [28:24]
247                       reserved_19a                                            :  8, // [23:16]
248                       tbr_trigger_sound_sac                                   : 16; // [15:0]
249              uint32_t u_sig_reserved1                                         :  7, // [31:25]
250                       eht_spatial_reuse                                       :  8, // [24:17]
251                       bandwidth_ext                                           :  2, // [16:15]
252                       phy_version                                             :  3, // [14:12]
253                       eht_special_aid12                                       : 12; // [11:0]
254              uint32_t eht_trigger_special_user_info_71_40                     : 32; // [31:0]
255 #endif
256 };
257 
258 
259 /* Description		AX_TRIGGER_SOURCE
260 
261 			<enum 0 11ax_trigger_frame>
262 			<enum 1 he_control_based_trigger>
263 
264 			<legal all>
265 */
266 
267 #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_OFFSET                              0x0000000000000000
268 #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_LSB                                 0
269 #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MSB                                 0
270 #define OFDMA_TRIGGER_DETAILS_AX_TRIGGER_SOURCE_MASK                                0x0000000000000001
271 
272 
273 /* Description		RX_TRIGGER_FRAME_USER_SOURCE
274 
275 			Field not really needed by PDG, but is there for debugging
276 			 purposes to be put in event.
277 
278 			<enum 0 dot11ax_direct_trigger_frame>
279 			<enum 1 dot11ax_wildcard_trigger_frame> wildcard trigger
280 			 for associated STAs
281 			<enum 2 dot11ax_usassoc_wildcard_trigger_frame> wildcard
282 			 trigger for unassociated STAs
283 
284 			<legal 0-2>
285 */
286 
287 #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_OFFSET                   0x0000000000000000
288 #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_LSB                      1
289 #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MSB                      2
290 #define OFDMA_TRIGGER_DETAILS_RX_TRIGGER_FRAME_USER_SOURCE_MASK                     0x0000000000000006
291 
292 
293 /* Description		RECEIVED_BANDWIDTH
294 
295 			Received Packet bandwidth of the trigger frame.
296 
297 			Note that this is not the BW indicated within the trigger
298 			 frame itself.
299 
300 			<enum 0 20_mhz>20 Mhz BW
301 			<enum 1 40_mhz>40 Mhz BW
302 			<enum 2 80_mhz>80 Mhz BW
303 			<enum 3 160_mhz>160 Mhz BW
304 			<enum 4 320_mhz>320 Mhz BW
305 			<enum 5 240_mhz>240 Mhz BW
306 */
307 
308 #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_OFFSET                             0x0000000000000000
309 #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_LSB                                3
310 #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MSB                                5
311 #define OFDMA_TRIGGER_DETAILS_RECEIVED_BANDWIDTH_MASK                               0x0000000000000038
312 
313 
314 /* Description		TXOP_DURATION_ALL_ONES
315 
316 			When set, TXOP_DURATION of the received frame was set to
317 			 all 1s.
318 
319 			<legal all>
320 */
321 
322 #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_OFFSET                         0x0000000000000000
323 #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_LSB                            6
324 #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MSB                            6
325 #define OFDMA_TRIGGER_DETAILS_TXOP_DURATION_ALL_ONES_MASK                           0x0000000000000040
326 
327 
328 /* Description		EHT_TRIGGER_RESPONSE
329 
330 			0: Trigger expects an HE TB PPDU Tx response.
331 			1: Trigger expects an EHT TB PPDU Tx response.
332 			<legal 0>
333 */
334 
335 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_OFFSET                           0x0000000000000000
336 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_LSB                              7
337 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MSB                              7
338 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_RESPONSE_MASK                             0x0000000000000080
339 
340 
341 /* Description		PRE_RSSI_COMB
342 
343 			Combined pre_rssi of all chains. Based on primary channel
344 			 RSSI.
345 
346 			RSSI is reported as 8b signed values. Nominally value is
347 			 in dB units above or below the noisefloor(minCCApwr).
348 
349 			The resolution can be:
350 			1dB or 0.5dB. This is statically configured within the PHY
351 			 and MAC
352 
353 			In case of 1dB, the Range is:
354 			 -128dB to 127dB
355 
356 			In case of 0.5dB, the Range is:
357 			 -64dB to 63.5dB
358 
359 			<legal all>
360 */
361 
362 #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_OFFSET                                  0x0000000000000000
363 #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_LSB                                     8
364 #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MSB                                     15
365 #define OFDMA_TRIGGER_DETAILS_PRE_RSSI_COMB_MASK                                    0x000000000000ff00
366 
367 
368 /* Description		RSSI_COMB
369 
370 			Combined rssi of all chains. Based on primary channel RSSI.
371 
372 
373 			RSSI is reported as 8b signed values. Nominally value is
374 			 in dB units above or below the noisefloor(minCCApwr).
375 
376 			The resolution can be:
377 			1dB or 0.5dB. This is statically configured within the PHY
378 			 and MAC
379 
380 			In case of 1dB, the Range is:
381 			 -128dB to 127dB
382 
383 			In case of 0.5dB, the Range is:
384 			 -64dB to 63.5dB
385 
386 			<legal all>
387 */
388 
389 #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_OFFSET                                      0x0000000000000000
390 #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_LSB                                         16
391 #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MSB                                         23
392 #define OFDMA_TRIGGER_DETAILS_RSSI_COMB_MASK                                        0x0000000000ff0000
393 
394 
395 /* Description		RXPCU_PCIE_L0_REQ_DURATION
396 
397 			RXPCU fills the duration in µs for which it has asserted
398 			 the 'L0 request' signal to PCIe when it generates this
399 			TLV. This may be capped by either the max. PCIe L1SS exit
400 			 latency (~75 µs) or the max. value possible for this field.
401 
402 
403 			This is filled as zero if ILP is unsupported
404 
405 			PDG uses this to fill Qos_null_only_response_tx.
406 			<legal all>
407 */
408 
409 #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_OFFSET                     0x0000000000000000
410 #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_LSB                        24
411 #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_MSB                        31
412 #define OFDMA_TRIGGER_DETAILS_RXPCU_PCIE_L0_REQ_DURATION_MASK                       0x00000000ff000000
413 
414 
415 /* Description		HE_TRIGGER_UL_PPDU_LENGTH
416 
417 			Field only valid when ax_trigger_source = he_control_based_trigger
418 
419 
420 			Field extracted from the HE control field.
421 			length of the HE trigger-based PPDU response.
422 
423 			<legal all>
424 */
425 
426 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_OFFSET                      0x0000000000000000
427 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_LSB                         32
428 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_MSB                         36
429 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_PPDU_LENGTH_MASK                        0x0000001f00000000
430 
431 
432 /* Description		HE_TRIGGER_RU_ALLOCATION
433 
434 			Field only valid when ax_trigger_source = he_control_based_trigger
435 
436 
437 			Field extracted from the HE control field.
438 			RU allocation for HE based trigger
439 
440 			<legal all>
441 */
442 
443 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_OFFSET                       0x0000000000000000
444 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_LSB                          37
445 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_MSB                          44
446 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RU_ALLOCATION_MASK                         0x00001fe000000000
447 
448 
449 /* Description		HE_TRIGGER_DL_TX_POWER
450 
451 			Field only valid when ax_trigger_source = he_control_based_trigger
452 
453 
454 			Field extracted from the HE control field.
455 			Downlink TX power
456 
457 			<legal all>
458 */
459 
460 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_OFFSET                         0x0000000000000000
461 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_LSB                            45
462 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_MSB                            49
463 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_DL_TX_POWER_MASK                           0x0003e00000000000
464 
465 
466 /* Description		HE_TRIGGER_UL_TARGET_RSSI
467 
468 			Field only valid when ax_trigger_source = he_control_based_trigger
469 
470 
471 			Field extracted from the HE control field.
472 			Ul target RSSI
473 
474 			<legal all>
475 */
476 
477 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_OFFSET                      0x0000000000000000
478 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_LSB                         50
479 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_MSB                         54
480 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_TARGET_RSSI_MASK                        0x007c000000000000
481 
482 
483 /* Description		HE_TRIGGER_UL_MCS
484 
485 			Field only valid when ax_trigger_source = he_control_based_trigger
486 
487 
488 			Field extracted from the HE control field.
489 			UL MCS
490 
491 			<legal all>
492 */
493 
494 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_OFFSET                              0x0000000000000000
495 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_LSB                                 55
496 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_MSB                                 56
497 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_UL_MCS_MASK                                0x0180000000000000
498 
499 
500 /* Description		HE_TRIGGER_RESERVED
501 
502 			Field only valid when ax_trigger_source = he_control_based_trigger
503 
504 
505 			Field extracted from the HE control field.
506 			Reserved field
507 
508 			<legal all>
509 */
510 
511 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_OFFSET                            0x0000000000000000
512 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_LSB                               57
513 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_MSB                               57
514 #define OFDMA_TRIGGER_DETAILS_HE_TRIGGER_RESERVED_MASK                              0x0200000000000000
515 
516 
517 /* Description		BSS_COLOR
518 
519 			The BSS color of the AP
520 			<legal all>
521 */
522 
523 #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_OFFSET                                      0x0000000000000000
524 #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_LSB                                         58
525 #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_MSB                                         63
526 #define OFDMA_TRIGGER_DETAILS_BSS_COLOR_MASK                                        0xfc00000000000000
527 
528 
529 /* Description		TRIGGER_TYPE
530 
531 			Field only valid when ax_trigger_source = 11ax_trigger_frame
532 
533 
534 			Common trigger info
535 
536 			Indicates what kind of response is required to the received
537 			 OFDMA trigger...
538 
539 			Field not really needed by PDG, but is there for debugging
540 			 purposes to be put in event.
541 
542 			<enum 0 ax_trigger_basic> TXPCU sends back whatever SW has
543 			 programmed...for the basic response..
544 			<enum 1 ax_trigger_brpoll>  TXPCU is only allowed to send
545 			 CBF frame(s) back
546 			<enum 2 ax_trigger_mu_bar> TXPCU shall first send BA info,
547 			and optionally followed with data. No info from SCH is expected
548 
549 			<enum 3 ax_trigger_mu_rts> TXPCU shall only send CTS back.
550 			No info from SCH is expected
551 			<enum 4 ax_trigger_buffer_size> Also known as the BSRP trigger.
552 			TXPCU sends back whatever SW has programmed...for the basic
553 			 response..
554 			<enum 5 ax_trigger_gcr_mu_bar>
555 			<enum 6 ax_trigger_BQRP> Bandwidth Query Report Poll
556 			<enum 7 ax_trigger_NDP_fb_report_poll> NDP feedback report
557 			 Poll
558 			<enum 8 ax_tb_ranging_trigger> ranging Trigger Frame of
559 			subvariant indicated by Ranging_Trigger_Subtype
560 			<enum 9 ax_trigger_reserved_9>
561 			<enum 10 ax_trigger_reserved_10>
562 			<enum 11 ax_trigger_reserved_11>
563 			<enum 12 ax_trigger_reserved_12>
564 			<enum 13 ax_trigger_reserved_13>
565 			<enum 14 ax_trigger_reserved_14>
566 			<enum 15 ax_trigger_reserved_15>
567 			<legal all>
568 */
569 
570 #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_OFFSET                                   0x0000000000000008
571 #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_LSB                                      0
572 #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_MSB                                      3
573 #define OFDMA_TRIGGER_DETAILS_TRIGGER_TYPE_MASK                                     0x000000000000000f
574 
575 
576 /* Description		LSIG_RESPONSE_LENGTH
577 
578 			Field only valid when ax_trigger_source = 11ax_trigger_frame
579 
580 
581 			Common trigger info
582 
583 			Indicates the value of the L-SIG Length field of the HE
584 			trigger-based PPDU that is the response to the Trigger frame
585 
586 
587 			<legal all>
588 */
589 
590 #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_OFFSET                           0x0000000000000008
591 #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_LSB                              4
592 #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_MSB                              15
593 #define OFDMA_TRIGGER_DETAILS_LSIG_RESPONSE_LENGTH_MASK                             0x000000000000fff0
594 
595 
596 /* Description		CASCADE_INDICATION
597 
598 			Field only valid when ax_trigger_source = 11ax_trigger_frame
599 
600 
601 			Common trigger info
602 
603 			When set to 1, then a subsequent Trigger frame follows the
604 			 current Trigger frame.
605 			<legal all>
606 */
607 
608 #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_OFFSET                             0x0000000000000008
609 #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_LSB                                16
610 #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_MSB                                16
611 #define OFDMA_TRIGGER_DETAILS_CASCADE_INDICATION_MASK                               0x0000000000010000
612 
613 
614 /* Description		CARRIER_SENSE
615 
616 			Field only valid when ax_trigger_source = 11ax_trigger_frame
617 
618 
619 			Common trigger info
620 
621 			Need to sense the energy before transmit when CS=1 if allocated
622 			 channel is not available do not transmit . If CS=0 no need
623 			 to check for idle channel.  For region based restrict ignore
624 			 this bit and always check channel before transmit.
625 			<legal all>
626 */
627 
628 #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_OFFSET                                  0x0000000000000008
629 #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_LSB                                     17
630 #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_MSB                                     17
631 #define OFDMA_TRIGGER_DETAILS_CARRIER_SENSE_MASK                                    0x0000000000020000
632 
633 
634 /* Description		BANDWIDTH
635 
636 			Field only valid when ax_trigger_source = 11ax_trigger_frame
637 
638 
639 			Common trigger info
640 
641 			Indicates the bandwidth in the HE-SIG-A/U-SIG of the HE/EHT
642 			 Trigger based PPDU
643 
644 			Also see field Bandwidth_ext that determines 320 MHz bandwidth
645 			 for EHT.
646 
647 			<enum 0 HE_SIG_A_BW20> 20 Mhz
648 			<enum 1 HE_SIG_A_BW40> 40 Mhz
649 			<enum 2 HE_SIG_A_BW80> 80 Mhz
650 			<enum 3 HE_SIG_A_BW160> 160 MHz or 80+80 MHz
651 
652 			<legal all>
653 */
654 
655 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_OFFSET                                      0x0000000000000008
656 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_LSB                                         18
657 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_MSB                                         19
658 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_MASK                                        0x00000000000c0000
659 
660 
661 /* Description		CP_LTF_SIZE
662 
663 			Field only valid when ax_trigger_source = 11ax_trigger_frame
664 
665 
666 			Common trigger info
667 
668 			Indicates the CP and HE-LTF type
669 
670 			<enum 0 Trig_OneX_LTF_1_6CP> 1xLTF + 1.6 us CP
671 			<enum 1 Trig_TwoX_LTF_1_6CP> 2x LTF + 1.6 µs CP
672 			<enum 2 Trig_FourX_LTF_3_2CP> 4x LTF + 3.2 µs CP
673 
674 			<legal 0-2>
675 */
676 
677 #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_OFFSET                                    0x0000000000000008
678 #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_LSB                                       20
679 #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_MSB                                       21
680 #define OFDMA_TRIGGER_DETAILS_CP_LTF_SIZE_MASK                                      0x0000000000300000
681 
682 
683 /* Description		MU_MIMO_LTF_MODE
684 
685 			Field only valid when ax_trigger_source = 11ax_trigger_frame
686 
687 
688 			Common trigger info
689 
690 			MU MIMO LTF mode field indicates the mode in which pilots
691 			 are allocated
692 
693 			Must be set to 0 for HE-Ranging NDPs (11az) or Short-NDP
694 
695 
696 			0: Single-stream pilot
697 			1: Mask LTF sequence of each spatial stream by a distinct
698 			 orthogonal code
699 			<legal all>
700 */
701 
702 #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_OFFSET                               0x0000000000000008
703 #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_LSB                                  22
704 #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_MSB                                  22
705 #define OFDMA_TRIGGER_DETAILS_MU_MIMO_LTF_MODE_MASK                                 0x0000000000400000
706 
707 
708 /* Description		NUMBER_OF_LTFS
709 
710 			Field only valid when ax_trigger_source = 11ax_trigger_frame
711 
712 
713 			Common trigger info
714 
715 			includes the total number of LTFs the STA must include in
716 			 the response TRIG PPDU
717 			<legal all>
718 */
719 
720 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_OFFSET                                 0x0000000000000008
721 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_LSB                                    23
722 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_MSB                                    25
723 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_LTFS_MASK                                   0x0000000003800000
724 
725 
726 /* Description		STBC
727 
728 			Field only valid when ax_trigger_source = 11ax_trigger_frame
729 
730 
731 			Common trigger info
732 
733 			indicates whether STBS is used (for all STAs)
734 			It is set to 1 if STBC encoding is used and set to 0 otherwise.
735 
736 			<legal all>
737 */
738 
739 #define OFDMA_TRIGGER_DETAILS_STBC_OFFSET                                           0x0000000000000008
740 #define OFDMA_TRIGGER_DETAILS_STBC_LSB                                              26
741 #define OFDMA_TRIGGER_DETAILS_STBC_MSB                                              26
742 #define OFDMA_TRIGGER_DETAILS_STBC_MASK                                             0x0000000004000000
743 
744 
745 /* Description		LDPC_EXTRA_SYMBOL
746 
747 			Field only valid when ax_trigger_source = 11ax_trigger_frame
748 
749 
750 			Common trigger info
751 
752 			indicates the status of LDPC Extra Symbol. It is set to
753 			1 when LDPC extra symbol is present and set to 0 otherwise
754 
755 			<legal all>
756 */
757 
758 #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_OFFSET                              0x0000000000000008
759 #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_LSB                                 27
760 #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_MSB                                 27
761 #define OFDMA_TRIGGER_DETAILS_LDPC_EXTRA_SYMBOL_MASK                                0x0000000008000000
762 
763 
764 /* Description		AP_TX_POWER_LSB_PART
765 
766 			Field only valid when ax_trigger_source = 11ax_trigger_frame
767 
768 
769 			Common trigger info
770 
771 			Bits [3:0] of the ap_tx_power
772 
773 			indicates the combined average power per 20 MHz bandwidth
774 			 of all transmit antennas used to transmit the trigger frame
775 			 at the HE AP. The resolution for the transmit power reported
776 			 in the Common Info field is 1dB
777 
778 			Values 0 to 61 maps to -20 dBm to 40 dBm
779 			Other values are reserved.
780 			<legal all>
781 */
782 
783 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_OFFSET                           0x0000000000000008
784 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_LSB                              28
785 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_MSB                              31
786 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_LSB_PART_MASK                             0x00000000f0000000
787 
788 
789 /* Description		AP_TX_POWER_MSB_PART
790 
791 			Field only valid when ax_trigger_source = 11ax_trigger_frame
792 
793 
794 			Common trigger info
795 
796 			Bits [5:4] of the ap_tx_power
797 			See description above
798 			<legal all>
799 */
800 
801 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_OFFSET                           0x0000000000000008
802 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_LSB                              32
803 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_MSB                              33
804 #define OFDMA_TRIGGER_DETAILS_AP_TX_POWER_MSB_PART_MASK                             0x0000000300000000
805 
806 
807 /* Description		PACKET_EXTENSION_A_FACTOR
808 
809 			Field only valid when ax_trigger_source = 11ax_trigger_frame
810 
811 
812 			Common trigger info
813 
814 			the packet extension duration of the trigger-based PPDU
815 			response with these two bits indicating the "a-factor"
816 
817 			<enum 0 a_factor_4>
818 			<enum 1 a_factor_1>
819 			<enum 2 a_factor_2>
820 			<enum 3 a_factor_3>
821 
822 			<legal all>
823 */
824 
825 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_OFFSET                      0x0000000000000008
826 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_LSB                         34
827 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_MSB                         35
828 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_A_FACTOR_MASK                        0x0000000c00000000
829 
830 
831 /* Description		PACKET_EXTENSION_PE_DISAMBIGUITY
832 
833 			Field only valid when ax_trigger_source = 11ax_trigger_frame
834 
835 
836 			Common trigger info
837 
838 			the packet extension duration of the trigger-based PPDU
839 			response with this bit indicating the PE-Disambiguity
840 			<legal all>
841 */
842 
843 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_OFFSET               0x0000000000000008
844 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_LSB                  36
845 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MSB                  36
846 #define OFDMA_TRIGGER_DETAILS_PACKET_EXTENSION_PE_DISAMBIGUITY_MASK                 0x0000001000000000
847 
848 
849 /* Description		SPATIAL_REUSE
850 
851 			Field only valid when ax_trigger_source = 11ax_trigger_frame
852 
853 
854 			Common trigger info
855 
856 			indicates the value of the Spatial Reuse in the HE-SIGA
857 			of the HE_TRIG PPDU transmitted as a response to the Trigger
858 			 frame
859 			<legal all>
860 */
861 
862 #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_OFFSET                                  0x0000000000000008
863 #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_LSB                                     37
864 #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_MSB                                     52
865 #define OFDMA_TRIGGER_DETAILS_SPATIAL_REUSE_MASK                                    0x001fffe000000000
866 
867 
868 /* Description		DOPPLER
869 
870 			Field only valid when ax_trigger_source = 11ax_trigger_frame
871 
872 
873 			Common trigger info
874 
875 			TODO: add description
876 			<legal all>
877 */
878 
879 #define OFDMA_TRIGGER_DETAILS_DOPPLER_OFFSET                                        0x0000000000000008
880 #define OFDMA_TRIGGER_DETAILS_DOPPLER_LSB                                           53
881 #define OFDMA_TRIGGER_DETAILS_DOPPLER_MSB                                           53
882 #define OFDMA_TRIGGER_DETAILS_DOPPLER_MASK                                          0x0020000000000000
883 
884 
885 /* Description		HE_SIGA_RESERVED
886 
887 			Field only valid when ax_trigger_source = 11ax_trigger_frame
888 
889 
890 			Common trigger info
891 
892 			indicates the values of the reserved bits in the HE-SIGA
893 			 of the HE_TRIG PPDU transmitted as a response to the Trigger
894 			 frame
895 
896 			In case of an EHT AP, bits [23:22] indicate the bits [55:54]
897 			of the Trigger 'Common Info' called 'Special User Info Field
898 			 Present' and 'HE/EHT P160.' These are used along with Reserved_18a
899 			 to determine the presence of the EHT 'Special User Info'
900 			field and EHT_trigger_response.
901 */
902 
903 #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_OFFSET                               0x0000000000000008
904 #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_LSB                                  54
905 #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_MSB                                  62
906 #define OFDMA_TRIGGER_DETAILS_HE_SIGA_RESERVED_MASK                                 0x7fc0000000000000
907 
908 
909 /* Description		RESERVED_3B
910 
911 			Field only valid when ax_trigger_source = 11ax_trigger_frame
912 
913 
914 			Common trigger info
915 
916 			Reserved bit 63 in the Trigger 'Common Info'
917 			<legal all>
918 */
919 
920 #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_OFFSET                                    0x0000000000000008
921 #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_LSB                                       63
922 #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_MSB                                       63
923 #define OFDMA_TRIGGER_DETAILS_RESERVED_3B_MASK                                      0x8000000000000000
924 
925 
926 /* Description		AID12
927 
928 			Field only valid when ax_trigger_source = 11ax_trigger_frame
929 
930 
931 			User trigger info
932 
933 			The AID12 subfield of the Per User Info field indicates
934 			the LSB 12 bits of the AID of the STA allocated the RU to
935 			 transmit the MPDU(s) in the HE trigger-based PPDU
936 
937 			Note strictly needed, but added here for debugging purposes.
938 
939 			<legal all>
940 */
941 
942 #define OFDMA_TRIGGER_DETAILS_AID12_OFFSET                                          0x0000000000000010
943 #define OFDMA_TRIGGER_DETAILS_AID12_LSB                                             0
944 #define OFDMA_TRIGGER_DETAILS_AID12_MSB                                             11
945 #define OFDMA_TRIGGER_DETAILS_AID12_MASK                                            0x0000000000000fff
946 
947 
948 /* Description		RU_ALLOCATION
949 
950 			Field only valid when ax_trigger_source = 11ax_trigger_frame
951 
952 
953 			User trigger info
954 
955 			trigger based RU definition
956 
957 			If EHT_trigger_response = 0, only lower 8 bits are valid.
958 
959 			If EHT_trigger_response = 1, all 9 bits re valid.
960 			<legal all>
961 */
962 
963 #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_OFFSET                                  0x0000000000000010
964 #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_LSB                                     12
965 #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_MSB                                     20
966 #define OFDMA_TRIGGER_DETAILS_RU_ALLOCATION_MASK                                    0x00000000001ff000
967 
968 
969 /* Description		MCS
970 
971 			Field only valid when ax_trigger_source = 11ax_trigger_frame
972 
973 
974 			User trigger info
975 
976 			indicates the MCS of the HE trigger-based PPDU response
977 			of the STA identified by User Identifier field
978 			<legal all>
979 */
980 
981 #define OFDMA_TRIGGER_DETAILS_MCS_OFFSET                                            0x0000000000000010
982 #define OFDMA_TRIGGER_DETAILS_MCS_LSB                                               21
983 #define OFDMA_TRIGGER_DETAILS_MCS_MSB                                               24
984 #define OFDMA_TRIGGER_DETAILS_MCS_MASK                                              0x0000000001e00000
985 
986 
987 /* Description		DCM
988 
989 			Field only valid when ax_trigger_source = 11ax_trigger_frame
990 
991 
992 			User trigger info
993 
994 			indicates dual carrier modulation of the HE trigger-based
995 			 PPDU response of the STA identified by User Identifier
996 			subfield. A value of 1 indicates that the HE trigger-based
997 			 PPDU response shall use DCM.
998 			Set to 0 to indicate that DCM shall not be used
999 			<legal all>
1000 */
1001 
1002 #define OFDMA_TRIGGER_DETAILS_DCM_OFFSET                                            0x0000000000000010
1003 #define OFDMA_TRIGGER_DETAILS_DCM_LSB                                               25
1004 #define OFDMA_TRIGGER_DETAILS_DCM_MSB                                               25
1005 #define OFDMA_TRIGGER_DETAILS_DCM_MASK                                              0x0000000002000000
1006 
1007 
1008 /* Description		START_SPATIAL_STREAM
1009 
1010 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1011 
1012 
1013 			User trigger info
1014 
1015 			Indicates the starting spatial stream, STARTING_SS_NUM,
1016 			and is set to STARTING_SS_NUM  - 1 of the HE trigger-based
1017 			 PPDU response of the STA identified by User Identifier
1018 			field.
1019 			<legal all>
1020 */
1021 
1022 #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_OFFSET                           0x0000000000000010
1023 #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_LSB                              26
1024 #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_MSB                              28
1025 #define OFDMA_TRIGGER_DETAILS_START_SPATIAL_STREAM_MASK                             0x000000001c000000
1026 
1027 
1028 /* Description		NUMBER_OF_SPATIAL_STREAM
1029 
1030 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1031 
1032 
1033 			User trigger info
1034 
1035 			indicates the number of spatial streams, NUM_SS and is set
1036 			 to NUM_SS - 1, of the HE trigger-based PPDU response of
1037 			 the STA identified by User Identifier field.
1038 
1039 			In case of EHT_trigger_response=1, RXPCU fills the MSB of
1040 			 STARTING_SS_NUM in bit 31. If this is set, it will cause
1041 			 PDG to indicate to PHY > 4-stream transmission resulting
1042 			 in an abort in EHT R1 chips.
1043 
1044 			TODO: Cleanup for EHT R2 chips
1045 			<legal all>
1046 */
1047 
1048 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_OFFSET                       0x0000000000000010
1049 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_LSB                          29
1050 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_MSB                          31
1051 #define OFDMA_TRIGGER_DETAILS_NUMBER_OF_SPATIAL_STREAM_MASK                         0x00000000e0000000
1052 
1053 
1054 /* Description		TARGET_RSSI
1055 
1056 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1057 
1058 
1059 			User trigger info
1060 
1061 			Indicates the target received signal power of the the HE
1062 			 trigger-based PPDU response. The resolution for the Target
1063 			 RSSI in the Per User Info field is 1dB
1064 
1065 			Values 0 to 90 maps to -110 dBm to -20 dBm
1066 			Other values are reserved.
1067 
1068 			Value 127 indicates to the STA to transmit an HE triggerbased
1069 			 PPDU response at its maximum transmit power for the assigned
1070 			 MCS. If Trigger_type = ax_tb_ranging_trigger and Ranging_Trigger_Subtype
1071 			 = TF_Sound or TF_Secure_Sound, value 127 indicates to the
1072 			 STA to transmit an HE TB-ranging NDP response at its maximum
1073 			 transmit power for MCS 0.
1074 
1075 			Used for power control algorithm
1076 			<legal all>
1077 */
1078 
1079 #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_OFFSET                                    0x0000000000000010
1080 #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_LSB                                       32
1081 #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_MSB                                       38
1082 #define OFDMA_TRIGGER_DETAILS_TARGET_RSSI_MASK                                      0x0000007f00000000
1083 
1084 
1085 /* Description		CODING_TYPE
1086 
1087 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1088 
1089 
1090 			User trigger info
1091 
1092 			indicates the code type of the HE trigger-based PPDU response
1093 			 of the STA identified by User Identifier subfield.
1094 			0: BCC
1095 			1: LDPC
1096 			<legal all>
1097 */
1098 
1099 #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_OFFSET                                    0x0000000000000010
1100 #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_LSB                                       39
1101 #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_MSB                                       39
1102 #define OFDMA_TRIGGER_DETAILS_CODING_TYPE_MASK                                      0x0000008000000000
1103 
1104 
1105 /* Description		MPDU_MU_SPACING_FACTOR
1106 
1107 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1108 
1109 
1110 			Basic trigger variant user info
1111 
1112 			<enum 0 Spacing_multiplier_is_1>
1113 			<enum 1 Spacing_multiplier_is_2>
1114 			<enum 2 Spacing_multiplier_is_4>
1115 			<enum 3 Spacing_multiplier_is_8>
1116 
1117 			<legal all>
1118 */
1119 
1120 #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_OFFSET                         0x0000000000000010
1121 #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_LSB                            40
1122 #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_MSB                            41
1123 #define OFDMA_TRIGGER_DETAILS_MPDU_MU_SPACING_FACTOR_MASK                           0x0000030000000000
1124 
1125 
1126 /* Description		TID_AGGREGATION_LIMIT
1127 
1128 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1129 
1130 
1131 			Basic trigger variant user info
1132 
1133 			indicates the of the number of TIDs that can be aggregated
1134 			 by a STA in a multi-TID A-MPDU carried in the responding
1135 			 Trigger-based PPDU
1136 
1137 
1138 			TXPCU will also evaluate this field, when trigger type is
1139 			 Basic trigger. In that case, when this field is 0, TXPCU
1140 			 will not send any data from user 0, but will immediately
1141 			 go to user 1, which has the QoSNULL data frames...
1142 
1143 			<legal all>
1144 */
1145 
1146 #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_OFFSET                          0x0000000000000010
1147 #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_LSB                             42
1148 #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MSB                             44
1149 #define OFDMA_TRIGGER_DETAILS_TID_AGGREGATION_LIMIT_MASK                            0x00001c0000000000
1150 
1151 
1152 /* Description		RESERVED_5B
1153 
1154 			<legal 0>
1155 */
1156 
1157 #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_OFFSET                                    0x0000000000000010
1158 #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_LSB                                       45
1159 #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MSB                                       45
1160 #define OFDMA_TRIGGER_DETAILS_RESERVED_5B_MASK                                      0x0000200000000000
1161 
1162 
1163 /* Description		PREFERED_AC
1164 
1165 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1166 
1167 
1168 			Basic trigger variant user info
1169 
1170 			<enum 0 Prefered_ac_is_BK>
1171 			<enum 1 Prefered_ac_is_BE>
1172 			<enum 2 Prefered_ac_is_VI>
1173 			<enum 3 Prefered_ac_is_VO>
1174 
1175 			<legal all>
1176 */
1177 
1178 #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_OFFSET                                    0x0000000000000010
1179 #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_LSB                                       46
1180 #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MSB                                       47
1181 #define OFDMA_TRIGGER_DETAILS_PREFERED_AC_MASK                                      0x0000c00000000000
1182 
1183 
1184 /* Description		BAR_CONTROL_ACK_POLICY
1185 
1186 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1187 
1188 
1189 			MU-BAR trigger variant user info
1190 
1191 			Bar control field ack policy extracted from the trigger
1192 			frame
1193 
1194 			<legal all>
1195 */
1196 
1197 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_OFFSET                         0x0000000000000010
1198 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_LSB                            48
1199 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MSB                            48
1200 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_ACK_POLICY_MASK                           0x0001000000000000
1201 
1202 
1203 /* Description		BAR_CONTROL_MULTI_TID
1204 
1205 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1206 
1207 
1208 			MU-BAR trigger variant user info
1209 
1210 			Bar control field multi_tid extracted from the trigger frame
1211 
1212 
1213 			<legal all>
1214 */
1215 
1216 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_OFFSET                          0x0000000000000010
1217 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_LSB                             49
1218 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MSB                             49
1219 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_MULTI_TID_MASK                            0x0002000000000000
1220 
1221 
1222 /* Description		BAR_CONTROL_COMPRESSED_BITMAP
1223 
1224 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1225 
1226 
1227 			MU-BAR trigger variant user info
1228 
1229 			Bar control field compressed bitmap extracted from the trigger
1230 			 frame
1231 
1232 			<legal all>
1233 */
1234 
1235 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_OFFSET                  0x0000000000000010
1236 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_LSB                     50
1237 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MSB                     50
1238 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_COMPRESSED_BITMAP_MASK                    0x0004000000000000
1239 
1240 
1241 /* Description		BAR_CONTROL_RESERVED
1242 
1243 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1244 
1245 
1246 			MU-BAR trigger variant user info
1247 
1248 			Bar control field reserved part extracted from the trigger
1249 			 frame
1250 
1251 			<legal all>
1252 */
1253 
1254 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_OFFSET                           0x0000000000000010
1255 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_LSB                              51
1256 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MSB                              59
1257 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_RESERVED_MASK                             0x0ff8000000000000
1258 
1259 
1260 /* Description		BAR_CONTROL_TID_INFO
1261 
1262 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1263 
1264 
1265 			MU-BAR trigger variant user info
1266 
1267 			Bar control field tid info extracted from the trigger frame
1268 
1269 
1270 			<legal all>
1271 */
1272 
1273 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_OFFSET                           0x0000000000000010
1274 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_LSB                              60
1275 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MSB                              63
1276 #define OFDMA_TRIGGER_DETAILS_BAR_CONTROL_TID_INFO_MASK                             0xf000000000000000
1277 
1278 
1279 /* Description		NR0_PER_TID_INFO_RESERVED
1280 
1281 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1282 
1283 
1284 			MU-BAR trigger variant user info
1285 
1286 			Field only valid if the BAR control type indicates Multi-TID
1287 			 and BAR_control_TID_info >=0
1288 
1289 			Per TID info, field "Reserved
1290 			Field"
1291 
1292 			<legal all>
1293 */
1294 
1295 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000018
1296 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_LSB                         0
1297 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MSB                         11
1298 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_RESERVED_MASK                        0x0000000000000fff
1299 
1300 
1301 /* Description		NR0_PER_TID_INFO_TID_VALUE
1302 
1303 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1304 
1305 
1306 			MU-BAR trigger variant user info
1307 
1308 			Field only valid if the BAR control type indicates Multi-TID
1309 			 and BAR_control_TID_info >=0
1310 
1311 			Per TID info, field "TID value"
1312 
1313 			<legal all>
1314 */
1315 
1316 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000018
1317 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_LSB                        12
1318 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MSB                        15
1319 #define OFDMA_TRIGGER_DETAILS_NR0_PER_TID_INFO_TID_VALUE_MASK                       0x000000000000f000
1320 
1321 
1322 /* Description		NR0_START_SEQ_CTRL_FRAG_NUMBER
1323 
1324 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1325 
1326 
1327 			MU-BAR trigger variant user info
1328 
1329 			Field only valid if the BAR control type indicates Multi-TID
1330 			 and BAR_control_TID_info >=0
1331 
1332 			OR
1333 
1334 			Field only valid if the BAR control type indicates Basic
1335 			 Block ACK request
1336 
1337 
1338 			Start Sequence control, subfield fragment
1339 
1340 			<legal all>
1341 */
1342 
1343 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000018
1344 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_LSB                    16
1345 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MSB                    19
1346 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x00000000000f0000
1347 
1348 
1349 /* Description		NR0_START_SEQ_CTRL_START_SEQ_NUMBER
1350 
1351 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1352 
1353 
1354 			MU-BAR trigger variant user info
1355 
1356 			Field valid if the BAR control type indicates Multi-TID
1357 			and BAR_control_TID_info >=0
1358 
1359 			OR
1360 
1361 			Field valid if the BAR control type indicates Basic Block
1362 			 ACK request
1363 
1364 			Start Sequence control, subfield Start sequence number
1365 
1366 			<legal all>
1367 */
1368 
1369 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000018
1370 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               20
1371 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               31
1372 #define OFDMA_TRIGGER_DETAILS_NR0_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0x00000000fff00000
1373 
1374 
1375 /* Description		NR1_PER_TID_INFO_RESERVED
1376 
1377 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1378 
1379 
1380 			MU-BAR trigger variant user info
1381 
1382 			Field only valid if the BAR control type indicates Multi-TID
1383 			 and BAR_control_TID_info >=1
1384 
1385 			Per TID info, field "Reserved
1386 			Field"
1387 
1388 			<legal all>
1389 */
1390 
1391 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000018
1392 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_LSB                         32
1393 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MSB                         43
1394 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_RESERVED_MASK                        0x00000fff00000000
1395 
1396 
1397 /* Description		NR1_PER_TID_INFO_TID_VALUE
1398 
1399 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1400 
1401 
1402 			MU-BAR trigger variant user info
1403 
1404 
1405 			Field only valid if the BAR control type indicates Multi-TID
1406 			 and BAR_control_TID_info >=1
1407 
1408 			Per TID info, field "TID value"
1409 
1410 			<legal all>
1411 */
1412 
1413 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000018
1414 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_LSB                        44
1415 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MSB                        47
1416 #define OFDMA_TRIGGER_DETAILS_NR1_PER_TID_INFO_TID_VALUE_MASK                       0x0000f00000000000
1417 
1418 
1419 /* Description		NR1_START_SEQ_CTRL_FRAG_NUMBER
1420 
1421 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1422 
1423 
1424 			MU-BAR trigger variant user info
1425 
1426 			Field only valid if the BAR control type indicates Multi-TID
1427 			 and BAR_control_TID_info >=1
1428 
1429 			Start Sequence control, subfield fragment
1430 
1431 			<legal all>
1432 */
1433 
1434 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000018
1435 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_LSB                    48
1436 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MSB                    51
1437 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x000f000000000000
1438 
1439 
1440 /* Description		NR1_START_SEQ_CTRL_START_SEQ_NUMBER
1441 
1442 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1443 
1444 
1445 			MU-BAR trigger variant user info
1446 
1447 			Field valid if the BAR control type indicates Multi-TID
1448 			and BAR_control_TID_info >=1
1449 
1450 			Start Sequence control, subfield Start sequence number
1451 
1452 			<legal all>
1453 */
1454 
1455 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000018
1456 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               52
1457 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               63
1458 #define OFDMA_TRIGGER_DETAILS_NR1_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0xfff0000000000000
1459 
1460 
1461 /* Description		NR2_PER_TID_INFO_RESERVED
1462 
1463 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1464 
1465 
1466 			MU-BAR trigger variant user info
1467 
1468 			Field only valid if the BAR control type indicates Multi-TID
1469 			 and BAR_control_TID_info >=2
1470 
1471 			Per TID info, field "Reserved
1472 			Field"
1473 
1474 			<legal all>
1475 */
1476 
1477 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000020
1478 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_LSB                         0
1479 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MSB                         11
1480 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_RESERVED_MASK                        0x0000000000000fff
1481 
1482 
1483 /* Description		NR2_PER_TID_INFO_TID_VALUE
1484 
1485 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1486 
1487 
1488 			MU-BAR trigger variant user info
1489 
1490 			Field only valid if the BAR control type indicates Multi-TID
1491 			 and BAR_control_TID_info >=2
1492 
1493 			Per TID info, field "TID value"
1494 
1495 			<legal all>
1496 */
1497 
1498 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000020
1499 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_LSB                        12
1500 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MSB                        15
1501 #define OFDMA_TRIGGER_DETAILS_NR2_PER_TID_INFO_TID_VALUE_MASK                       0x000000000000f000
1502 
1503 
1504 /* Description		NR2_START_SEQ_CTRL_FRAG_NUMBER
1505 
1506 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1507 
1508 
1509 			MU-BAR trigger variant user info
1510 
1511 			Field only valid if the BAR control type indicates Multi-TID
1512 			 and BAR_control_TID_info >=2
1513 
1514 			Start Sequence control, subfield fragment
1515 
1516 			<legal all>
1517 */
1518 
1519 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000020
1520 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_LSB                    16
1521 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MSB                    19
1522 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x00000000000f0000
1523 
1524 
1525 /* Description		NR2_START_SEQ_CTRL_START_SEQ_NUMBER
1526 
1527 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1528 
1529 
1530 			MU-BAR trigger variant user info
1531 
1532 			Field valid if the BAR control type indicates Multi-TID
1533 			and BAR_control_TID_info >=2
1534 
1535 			Start Sequence control, subfield Start sequence number
1536 
1537 			<legal all>
1538 */
1539 
1540 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000020
1541 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               20
1542 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               31
1543 #define OFDMA_TRIGGER_DETAILS_NR2_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0x00000000fff00000
1544 
1545 
1546 /* Description		NR3_PER_TID_INFO_RESERVED
1547 
1548 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1549 
1550 
1551 			MU-BAR trigger variant user info
1552 
1553 			Field only valid if the BAR control type indicates Multi-TID
1554 			 and BAR_control_TID_info >=3
1555 
1556 			Per TID info, field "Reserved
1557 			Field"
1558 
1559 			<legal all>
1560 */
1561 
1562 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000020
1563 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_LSB                         32
1564 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MSB                         43
1565 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_RESERVED_MASK                        0x00000fff00000000
1566 
1567 
1568 /* Description		NR3_PER_TID_INFO_TID_VALUE
1569 
1570 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1571 
1572 
1573 			MU-BAR trigger variant user info
1574 
1575 			Field only valid if the BAR control type indicates Multi-TID
1576 			 and BAR_control_TID_info >=3
1577 
1578 			Per TID info, field "TID value"
1579 
1580 			<legal all>
1581 */
1582 
1583 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000020
1584 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_LSB                        44
1585 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MSB                        47
1586 #define OFDMA_TRIGGER_DETAILS_NR3_PER_TID_INFO_TID_VALUE_MASK                       0x0000f00000000000
1587 
1588 
1589 /* Description		NR3_START_SEQ_CTRL_FRAG_NUMBER
1590 
1591 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1592 
1593 
1594 			MU-BAR trigger variant user info
1595 
1596 			Field only valid if the BAR control type indicates Multi-TID
1597 			 and BAR_control_TID_info >=3
1598 
1599 			Start Sequence control, subfield fragment
1600 
1601 			<legal all>
1602 */
1603 
1604 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000020
1605 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_LSB                    48
1606 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MSB                    51
1607 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x000f000000000000
1608 
1609 
1610 /* Description		NR3_START_SEQ_CTRL_START_SEQ_NUMBER
1611 
1612 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1613 
1614 
1615 			MU-BAR trigger variant user info
1616 
1617 
1618 			Field valid if the BAR control type indicates Multi-TID
1619 			and BAR_control_TID_info >=3
1620 
1621 			Start Sequence control, subfield Start sequence number
1622 
1623 			<legal all>
1624 */
1625 
1626 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000020
1627 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               52
1628 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               63
1629 #define OFDMA_TRIGGER_DETAILS_NR3_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0xfff0000000000000
1630 
1631 
1632 /* Description		NR4_PER_TID_INFO_RESERVED
1633 
1634 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1635 
1636 
1637 			MU-BAR trigger variant user info
1638 
1639 			Field only valid if the BAR control type indicates Multi-TID
1640 			 and BAR_control_TID_info >=4
1641 
1642 			Per TID info, field "Reserved
1643 			Field"
1644 
1645 			<legal all>
1646 */
1647 
1648 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000028
1649 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_LSB                         0
1650 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MSB                         11
1651 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_RESERVED_MASK                        0x0000000000000fff
1652 
1653 
1654 /* Description		NR4_PER_TID_INFO_TID_VALUE
1655 
1656 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1657 
1658 
1659 			MU-BAR trigger variant user info
1660 
1661 			Field only valid if the BAR control type indicates Multi-TID
1662 			 and BAR_control_TID_info >=4
1663 
1664 			Per TID info, field "TID value"
1665 
1666 			<legal all>
1667 */
1668 
1669 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000028
1670 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_LSB                        12
1671 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MSB                        15
1672 #define OFDMA_TRIGGER_DETAILS_NR4_PER_TID_INFO_TID_VALUE_MASK                       0x000000000000f000
1673 
1674 
1675 /* Description		NR4_START_SEQ_CTRL_FRAG_NUMBER
1676 
1677 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1678 
1679 
1680 			MU-BAR trigger variant user info
1681 
1682 			Field only valid if the BAR control type indicates Multi-TID
1683 			 and BAR_control_TID_info >=4
1684 
1685 			Start Sequence control, subfield fragment
1686 
1687 			<legal all>
1688 */
1689 
1690 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000028
1691 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_LSB                    16
1692 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MSB                    19
1693 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x00000000000f0000
1694 
1695 
1696 /* Description		NR4_START_SEQ_CTRL_START_SEQ_NUMBER
1697 
1698 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1699 
1700 
1701 			MU-BAR trigger variant user info
1702 
1703 			Field valid if the BAR control type indicates Multi-TID
1704 			and BAR_control_TID_info >=4
1705 
1706 			Start Sequence control, subfield Start sequence number
1707 
1708 			<legal all>
1709 */
1710 
1711 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000028
1712 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               20
1713 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               31
1714 #define OFDMA_TRIGGER_DETAILS_NR4_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0x00000000fff00000
1715 
1716 
1717 /* Description		NR5_PER_TID_INFO_RESERVED
1718 
1719 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1720 
1721 
1722 			MU-BAR trigger variant user info
1723 
1724 			Field only valid if the BAR control type indicates Multi-TID
1725 			 and BAR_control_TID_info >=5
1726 
1727 			Per TID info, field "Reserved
1728 			Field"
1729 
1730 			<legal all>
1731 */
1732 
1733 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000028
1734 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_LSB                         32
1735 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MSB                         43
1736 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_RESERVED_MASK                        0x00000fff00000000
1737 
1738 
1739 /* Description		NR5_PER_TID_INFO_TID_VALUE
1740 
1741 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1742 
1743 
1744 			MU-BAR trigger variant user info
1745 
1746 			Field only valid if the BAR control type indicates Multi-TID
1747 			 and BAR_control_TID_info >=5
1748 
1749 			Per TID info, field "TID value"
1750 
1751 			<legal all>
1752 */
1753 
1754 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000028
1755 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_LSB                        44
1756 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MSB                        47
1757 #define OFDMA_TRIGGER_DETAILS_NR5_PER_TID_INFO_TID_VALUE_MASK                       0x0000f00000000000
1758 
1759 
1760 /* Description		NR5_START_SEQ_CTRL_FRAG_NUMBER
1761 
1762 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1763 
1764 
1765 			MU-BAR trigger variant user info
1766 
1767 			Field only valid if the BAR control type indicates Multi-TID
1768 			 and BAR_control_TID_info >=5
1769 
1770 			Start Sequence control, subfield fragment
1771 
1772 			<legal all>
1773 */
1774 
1775 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000028
1776 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_LSB                    48
1777 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MSB                    51
1778 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x000f000000000000
1779 
1780 
1781 /* Description		NR5_START_SEQ_CTRL_START_SEQ_NUMBER
1782 
1783 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1784 
1785 
1786 			MU-BAR trigger variant user info
1787 
1788 			Field valid if the BAR control type indicates Multi-TID
1789 			and BAR_control_TID_info >=5
1790 
1791 			Start Sequence control, subfield Start sequence number
1792 
1793 			<legal all>
1794 */
1795 
1796 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000028
1797 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               52
1798 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               63
1799 #define OFDMA_TRIGGER_DETAILS_NR5_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0xfff0000000000000
1800 
1801 
1802 /* Description		NR6_PER_TID_INFO_RESERVED
1803 
1804 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1805 
1806 
1807 			MU-BAR trigger variant user info
1808 
1809 			Field only valid if the BAR control type indicates Multi-TID
1810 			 and BAR_control_TID_info >=6
1811 
1812 			Per TID info, field "Reserved
1813 			Field"
1814 
1815 			<legal all>
1816 */
1817 
1818 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000030
1819 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_LSB                         0
1820 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MSB                         11
1821 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_RESERVED_MASK                        0x0000000000000fff
1822 
1823 
1824 /* Description		NR6_PER_TID_INFO_TID_VALUE
1825 
1826 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1827 
1828 
1829 			MU-BAR trigger variant user info
1830 
1831 			Field only valid if the BAR control type indicates Multi-TID
1832 			 and BAR_control_TID_info >=6
1833 
1834 			Per TID info, field "TID value"
1835 
1836 			<legal all>
1837 */
1838 
1839 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000030
1840 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_LSB                        12
1841 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MSB                        15
1842 #define OFDMA_TRIGGER_DETAILS_NR6_PER_TID_INFO_TID_VALUE_MASK                       0x000000000000f000
1843 
1844 
1845 /* Description		NR6_START_SEQ_CTRL_FRAG_NUMBER
1846 
1847 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1848 
1849 
1850 			MU-BAR trigger variant user info
1851 
1852 
1853 			Field only valid if the BAR control type indicates Multi-TID
1854 			 and BAR_control_TID_info >=6
1855 
1856 			Start Sequence control, subfield fragment
1857 
1858 			<legal all>
1859 */
1860 
1861 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000030
1862 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_LSB                    16
1863 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MSB                    19
1864 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x00000000000f0000
1865 
1866 
1867 /* Description		NR6_START_SEQ_CTRL_START_SEQ_NUMBER
1868 
1869 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1870 
1871 
1872 			MU-BAR trigger variant user info
1873 
1874 			Field valid if the BAR control type indicates Multi-TID
1875 			and BAR_control_TID_info >=6
1876 
1877 			Start Sequence control, subfield Start sequence number
1878 
1879 			<legal all>
1880 */
1881 
1882 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000030
1883 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               20
1884 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               31
1885 #define OFDMA_TRIGGER_DETAILS_NR6_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0x00000000fff00000
1886 
1887 
1888 /* Description		NR7_PER_TID_INFO_RESERVED
1889 
1890 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1891 
1892 
1893 			MU-BAR trigger variant user info
1894 
1895 			Field only valid if the BAR control type indicates Multi-TID
1896 			 and BAR_control_TID_info >=7
1897 
1898 			Per TID info, field "Reserved
1899 			Field"
1900 
1901 			<legal all>
1902 */
1903 
1904 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_OFFSET                      0x0000000000000030
1905 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_LSB                         32
1906 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MSB                         43
1907 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_RESERVED_MASK                        0x00000fff00000000
1908 
1909 
1910 /* Description		NR7_PER_TID_INFO_TID_VALUE
1911 
1912 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1913 
1914 
1915 			MU-BAR trigger variant user info
1916 
1917 			Field only valid if the BAR control type indicates Multi-TID
1918 			 and BAR_control_TID_info >=7
1919 
1920 			Per TID info, field "TID value"
1921 
1922 			<legal all>
1923 */
1924 
1925 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_OFFSET                     0x0000000000000030
1926 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_LSB                        44
1927 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MSB                        47
1928 #define OFDMA_TRIGGER_DETAILS_NR7_PER_TID_INFO_TID_VALUE_MASK                       0x0000f00000000000
1929 
1930 
1931 /* Description		NR7_START_SEQ_CTRL_FRAG_NUMBER
1932 
1933 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1934 
1935 
1936 			MU-BAR trigger variant user info
1937 
1938 			Field only valid if the BAR control type indicates Multi-TID
1939 			 and BAR_control_TID_info >=7
1940 
1941 			Start Sequence control, subfield fragment
1942 
1943 			<legal all>
1944 */
1945 
1946 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_OFFSET                 0x0000000000000030
1947 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_LSB                    48
1948 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MSB                    51
1949 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_FRAG_NUMBER_MASK                   0x000f000000000000
1950 
1951 
1952 /* Description		NR7_START_SEQ_CTRL_START_SEQ_NUMBER
1953 
1954 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1955 
1956 
1957 			MU-BAR trigger variant user info
1958 
1959 			Field valid if the BAR control type indicates Multi-TID
1960 			and BAR_control_TID_info >=7
1961 
1962 			Start Sequence control, subfield Start sequence number
1963 
1964 			<legal all>
1965 */
1966 
1967 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_OFFSET            0x0000000000000030
1968 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_LSB               52
1969 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MSB               63
1970 #define OFDMA_TRIGGER_DETAILS_NR7_START_SEQ_CTRL_START_SEQ_NUMBER_MASK              0xfff0000000000000
1971 
1972 
1973 /* Description		FB_SEGMENT_RETRANSMISSION_BITMAP
1974 
1975 			Field only valid when ax_trigger_source = 11ax_trigger_frame
1976 
1977 
1978 			Beamforming_report_poll trigger variant user info
1979 
1980 			Segment information field extracted from the trigger frame
1981 
1982 
1983 			<legal all>
1984 */
1985 
1986 #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_OFFSET               0x0000000000000038
1987 #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_LSB                  0
1988 #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MSB                  7
1989 #define OFDMA_TRIGGER_DETAILS_FB_SEGMENT_RETRANSMISSION_BITMAP_MASK                 0x00000000000000ff
1990 
1991 
1992 /* Description		RESERVED_14A
1993 
1994 			<legal 0>
1995 */
1996 
1997 #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_OFFSET                                   0x0000000000000038
1998 #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_LSB                                      8
1999 #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MSB                                      9
2000 #define OFDMA_TRIGGER_DETAILS_RESERVED_14A_MASK                                     0x0000000000000300
2001 
2002 
2003 /* Description		U_SIG_PUNCTURE_PATTERN_ENCODING
2004 
2005 			This field is only valid if the trigger was received in
2006 			an EHT PPDU.
2007 
2008 			The 6-bit value used in U-SIG and/or EHT-SIG Common field
2009 			 for the puncture pattern
2010 			<legal 0-29>
2011 */
2012 
2013 #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET                0x0000000000000038
2014 #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB                   10
2015 #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB                   15
2016 #define OFDMA_TRIGGER_DETAILS_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK                  0x000000000000fc00
2017 
2018 
2019 /* Description		DOT11BE_PUNCTURE_BITMAP
2020 
2021 			This field is only valid if the trigger was received in
2022 			an EHT PPDU.
2023 
2024 			The bitmap of 20 MHz sub-bands valid in the EHT PPDU reception
2025 
2026 
2027 			RXPCU gets this from the received U-SIG and/or EHT-SIG via
2028 			 PHY microcode.
2029 
2030 			<legal all>
2031 */
2032 
2033 #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_OFFSET                        0x0000000000000038
2034 #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_LSB                           16
2035 #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MSB                           31
2036 #define OFDMA_TRIGGER_DETAILS_DOT11BE_PUNCTURE_BITMAP_MASK                          0x00000000ffff0000
2037 
2038 
2039 /* Description		RX_CHAIN_MASK
2040 
2041 			Description dependent on the setting of field Rx_chain_mask_type.
2042 
2043 
2044 			The chain mask at the start of the reception of this frame
2045 			 when Rx_chain_mask_type is set to 1'b0. In this mode used
2046 			 in 11ax TPC calculations for UL OFDMA/MIMO and has to be
2047 			 in sync with the rssi_comb value as this is also used by
2048 			 the MAC for the TPC calculations.
2049 
2050 
2051 			The final rx chain mask used for the frame reception when
2052 			 Rx_chain_mask_type is set to 1'b1
2053 
2054 			each bit is one antenna
2055 			0: the chain is NOT used
2056 			1: the chain is used
2057 
2058 			Supports up to 8 chains
2059 			<legal all>
2060 */
2061 
2062 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_OFFSET                                  0x0000000000000038
2063 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_LSB                                     32
2064 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MSB                                     39
2065 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_MASK                                    0x000000ff00000000
2066 
2067 
2068 /* Description		RX_DURATION_FIELD
2069 
2070 			The duration field embedded in the received trigger frame.
2071 
2072 			PDG uses this field to calculate what the duration field
2073 			 value should be in the response frame.
2074 			This is returned to the TX PCU
2075 			<legal all>
2076 */
2077 
2078 #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_OFFSET                              0x0000000000000038
2079 #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_LSB                                 40
2080 #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MSB                                 55
2081 #define OFDMA_TRIGGER_DETAILS_RX_DURATION_FIELD_MASK                                0x00ffff0000000000
2082 
2083 
2084 /* Description		SCRAMBLER_SEED
2085 
2086 			This field provides the 7-bit seed for the data scrambler.
2087 
2088 			Used in response generation to MU-RTS trigger, where CTS
2089 			 needs to have the same scrambler seed as the RTS
2090 			<legal all>
2091 */
2092 
2093 #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_OFFSET                                 0x0000000000000038
2094 #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_LSB                                    56
2095 #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MSB                                    62
2096 #define OFDMA_TRIGGER_DETAILS_SCRAMBLER_SEED_MASK                                   0x7f00000000000000
2097 
2098 
2099 /* Description		RX_CHAIN_MASK_TYPE
2100 
2101 			Indicates if the field rx_chain_mask represents the mask
2102 			 at start of reception (on which the Rssi_comb value is
2103 			based), or the setting used during the remainder of the
2104 			reception
2105 
2106 			1'b0: rxtd.listen_pri80_mask
2107 			1'b1: Final receive mask
2108 
2109 			<legal all>
2110 */
2111 
2112 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_OFFSET                             0x0000000000000038
2113 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_LSB                                63
2114 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MSB                                63
2115 #define OFDMA_TRIGGER_DETAILS_RX_CHAIN_MASK_TYPE_MASK                               0x8000000000000000
2116 
2117 
2118 /* Description		MLO_STA_ID_DETAILS_RX
2119 
2120 			Bits 10 and 11 are not valid, bits [9:0] reflect 'NSTR_MLO_STA_ID'
2121 			from address search.
2122 
2123 */
2124 
2125 
2126 /* Description		NSTR_MLO_STA_ID
2127 
2128 			ID of peer participating in non-STR MLO
2129 */
2130 
2131 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET          0x0000000000000040
2132 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB             0
2133 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB             9
2134 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK            0x00000000000003ff
2135 
2136 
2137 /* Description		BLOCK_SELF_ML_SYNC
2138 
2139 			Only valid for TX
2140 
2141 			When set, this provides an indication to block the peer
2142 			for self-link.
2143 */
2144 
2145 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET       0x0000000000000040
2146 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB          10
2147 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB          10
2148 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK         0x0000000000000400
2149 
2150 
2151 /* Description		BLOCK_PARTNER_ML_SYNC
2152 
2153 			Only valid for TX
2154 
2155 			When set, this provides an indication to block the peer
2156 			for partner links.
2157 */
2158 
2159 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET    0x0000000000000040
2160 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB       11
2161 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB       11
2162 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK      0x0000000000000800
2163 
2164 
2165 /* Description		NSTR_MLO_STA_ID_VALID
2166 
2167 			All the fields in this TLV are valid only if this bit is
2168 			 set.
2169 */
2170 
2171 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET    0x0000000000000040
2172 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB       12
2173 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB       12
2174 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK      0x0000000000001000
2175 
2176 
2177 /* Description		RESERVED_0A
2178 
2179 			<legal 0>
2180 */
2181 
2182 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET              0x0000000000000040
2183 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB                 13
2184 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB                 15
2185 #define OFDMA_TRIGGER_DETAILS_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK                0x000000000000e000
2186 
2187 
2188 /* Description		NORMALIZED_PRE_RSSI_COMB
2189 
2190 			Combined pre_rssi of all chains, but "normalized" back to
2191 			 a single chain. This avoids PDG from having to evaluate
2192 			 this in combination with receive chain mask and perform
2193 			 all kinds of pre-processing algorithms.
2194 
2195 			Based on primary channel RSSI.
2196 
2197 			RSSI is reported as 8b signed values. Nominally value is
2198 			 in dB units above or below the noisefloor(minCCApwr).
2199 
2200 			The resolution can be:
2201 			1dB or 0.5dB. This is statically configured within the PHY
2202 			 and MAC
2203 
2204 			In case of 1dB, the Range is:
2205 			 -128dB to 127dB
2206 
2207 			In case of 0.5dB, the Range is:
2208 			 -64dB to 63.5dB
2209 
2210 			<legal all>
2211 */
2212 
2213 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_OFFSET                       0x0000000000000040
2214 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_LSB                          16
2215 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MSB                          23
2216 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_PRE_RSSI_COMB_MASK                         0x0000000000ff0000
2217 
2218 
2219 /* Description		NORMALIZED_RSSI_COMB
2220 
2221 			Combined rssi of all chains, but "normalized" back to a
2222 			single chain. This avoids PDG from having to evaluate this
2223 			 in combination with receive chain mask and perform all
2224 			kinds of pre-processing algorithms.
2225 
2226 			Based on primary channel RSSI.
2227 
2228 			RSSI is reported as 8b signed values. Nominally value is
2229 			 in dB units above or below the noisefloor(minCCApwr).
2230 
2231 			The resolution can be:
2232 			1dB or 0.5dB. This is statically configured within the PHY
2233 			 and MAC
2234 			In case of 1dB, the Range is:
2235 			 -128dB to 127dB
2236 
2237 			In case of 0.5dB, the Range is:
2238 			 -64dB to 63.5dB
2239 
2240 			<legal all>
2241 */
2242 
2243 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_OFFSET                           0x0000000000000040
2244 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_LSB                              24
2245 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MSB                              31
2246 #define OFDMA_TRIGGER_DETAILS_NORMALIZED_RSSI_COMB_MASK                             0x00000000ff000000
2247 
2248 
2249 /* Description		SW_PEER_ID
2250 
2251 			Used by the PHY to correlated received trigger frames with
2252 			 an AP and calculate long term statistics for this AP
2253 			<legal all>
2254 */
2255 
2256 #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_OFFSET                                     0x0000000000000040
2257 #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_LSB                                        32
2258 #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MSB                                        47
2259 #define OFDMA_TRIGGER_DETAILS_SW_PEER_ID_MASK                                       0x0000ffff00000000
2260 
2261 
2262 /* Description		RESPONSE_TX_DURATION
2263 
2264 			Field filled in by PDG based on the value that is given
2265 			in field response_Length in the RECEIVED_TRIGGER_INFO TLV
2266 
2267 
2268 			The amount of time the transmission of the HW response shall
2269 			 take (in us)
2270 
2271 			<legal all>
2272 */
2273 
2274 #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_OFFSET                           0x0000000000000040
2275 #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_LSB                              48
2276 #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MSB                              63
2277 #define OFDMA_TRIGGER_DETAILS_RESPONSE_TX_DURATION_MASK                             0xffff000000000000
2278 
2279 
2280 /* Description		RANGING_TRIGGER_SUBTYPE
2281 
2282 			Indicates the Trigger subtype for the current ranging TF
2283 
2284 
2285 			<enum 0 TF_Poll>
2286 			<enum 1 TF_Sound>
2287 			<enum 2 TF_Secure_Sound>
2288 			<enum 3 TF_Report>
2289 
2290 			<legal 0-3>
2291 */
2292 
2293 #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_OFFSET                        0x0000000000000048
2294 #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_LSB                           0
2295 #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MSB                           3
2296 #define OFDMA_TRIGGER_DETAILS_RANGING_TRIGGER_SUBTYPE_MASK                          0x000000000000000f
2297 
2298 
2299 /* Description		TBR_TRIGGER_COMMON_INFO_79_68
2300 
2301 			Field only valid if Trigger_type = ax_tb_ranging_trigger
2302 
2303 
2304 			Ranging trigger variant common info
2305 
2306 			Includes fields "Reserved," "Token," "Sounding Dialog Token
2307 			 Number"
2308 
2309 			If the Trigger Dependent Common Info sub-field is less than
2310 			 16 bits, the upper bits are set to 0.
2311 
2312 			<legal all>
2313 */
2314 
2315 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_OFFSET                  0x0000000000000048
2316 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_LSB                     4
2317 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MSB                     15
2318 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_COMMON_INFO_79_68_MASK                    0x000000000000fff0
2319 
2320 
2321 /* Description		TBR_TRIGGER_SOUND_RESERVED_20_12
2322 
2323 			Field only valid if Trigger_type = ax_tb_ranging_trigger
2324 			 and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
2325 
2326 
2327 			Ranging trigger variant sounding/secure sounding sub-variant
2328 			 user info bits [20:12]
2329 
2330 			<legal all>
2331 */
2332 
2333 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_OFFSET               0x0000000000000048
2334 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_LSB                  16
2335 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MSB                  24
2336 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_20_12_MASK                 0x0000000001ff0000
2337 
2338 
2339 /* Description		I2R_REP
2340 
2341 			Field only valid if Trigger_type = ax_tb_ranging_trigger
2342 			 and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
2343 
2344 
2345 			Ranging trigger variant sounding/secure sounding sub-variant
2346 			 user info field "I2R Rep"
2347 
2348 			PDG uses this to to populate Nrep in 'MACTX_11AZ_USER_DESC_PER_USER.'
2349 
2350 
2351 			<legal all>
2352 */
2353 
2354 #define OFDMA_TRIGGER_DETAILS_I2R_REP_OFFSET                                        0x0000000000000048
2355 #define OFDMA_TRIGGER_DETAILS_I2R_REP_LSB                                           25
2356 #define OFDMA_TRIGGER_DETAILS_I2R_REP_MSB                                           27
2357 #define OFDMA_TRIGGER_DETAILS_I2R_REP_MASK                                          0x000000000e000000
2358 
2359 
2360 /* Description		TBR_TRIGGER_SOUND_RESERVED_25_24
2361 
2362 			Field only valid if Trigger_type = ax_tb_ranging_trigger
2363 			 and Ranging_Trigger_Subtype = TF_Sound or TF_Secure_Sound
2364 
2365 
2366 			Ranging trigger variant sounding/secure sounding sub-variant
2367 			 user info bits [25:24]
2368 
2369 			<legal all>
2370 */
2371 
2372 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_OFFSET               0x0000000000000048
2373 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_LSB                  28
2374 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MSB                  29
2375 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_RESERVED_25_24_MASK                 0x0000000030000000
2376 
2377 
2378 /* Description		RESERVED_18A
2379 
2380 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2381 
2382 
2383 			User trigger info
2384 
2385 			Reserved bit 39 in the Trigger 'User Info'
2386 
2387 			In case of an EHT AP, the bit 39 of the Trigger 'User Info'
2388 			called 'PS160' is used along with HE_SIGA_Reserved to determine
2389 			 EHT_trigger_response. In case of EHT, 'PS160' is also included
2390 			 in the MSB of field RU_allocation.
2391 
2392 			<legal all>
2393 */
2394 
2395 #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_OFFSET                                   0x0000000000000048
2396 #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_LSB                                      30
2397 #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MSB                                      30
2398 #define OFDMA_TRIGGER_DETAILS_RESERVED_18A_MASK                                     0x0000000040000000
2399 
2400 
2401 /* Description		QOS_NULL_ONLY_RESPONSE_TX
2402 
2403 			Field filled in by PDG based on Rxpcu_PCIe_L0_req_duration
2404 
2405 
2406 			If based on the duration for which RXPCU has asserted the
2407 			 'L0 request' signal to PCIe and the PCIe L1SS exit + MAC
2408 			 + PHY Tx latencies, PDG determines that null delimiters
2409 			 + a programmable minimum MPDU size cannot fit the trigger
2410 			 response, PDG sets this bit.
2411 
2412 			HWSCH uses this bit to determine whether to select only
2413 			the 'SCHEDULER_CMD' with Trig_resp_qos_null_only set, i.e.
2414 			which transmit only QoS Nulls.
2415 
2416 			This is filled as zero if ILP is unsupported or disabled
2417 			<legal all>
2418 */
2419 
2420 #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_OFFSET                      0x0000000000000048
2421 #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_LSB                         31
2422 #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MSB                         31
2423 #define OFDMA_TRIGGER_DETAILS_QOS_NULL_ONLY_RESPONSE_TX_MASK                        0x0000000080000000
2424 
2425 
2426 /* Description		TBR_TRIGGER_SOUND_SAC
2427 
2428 			Field only valid if Trigger_type = ax_tb_ranging_trigger
2429 			 and Ranging_Trigger_Subtype = TF_Secure_Sound
2430 
2431 			Ranging trigger variant secure sounding sub-variant user
2432 			 info field "SAC"
2433 
2434 			<legal all>
2435 */
2436 
2437 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_OFFSET                          0x0000000000000048
2438 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_LSB                             32
2439 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MSB                             47
2440 #define OFDMA_TRIGGER_DETAILS_TBR_TRIGGER_SOUND_SAC_MASK                            0x0000ffff00000000
2441 
2442 
2443 /* Description		RESERVED_19A
2444 
2445 			<legal 0>
2446 */
2447 
2448 #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_OFFSET                                   0x0000000000000048
2449 #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_LSB                                      48
2450 #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MSB                                      55
2451 #define OFDMA_TRIGGER_DETAILS_RESERVED_19A_MASK                                     0x00ff000000000000
2452 
2453 
2454 /* Description		U_SIG_RESERVED2
2455 
2456 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2457 
2458 
2459 			EHT Special User Info
2460 
2461 			Indicates the values of the 5 'disregard' bits [41:37] in
2462 			 the U-SIG of the EHT_TRIG PPDU transmitted as a response
2463 			 to the Trigger frame
2464 			<legal all>
2465 */
2466 
2467 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_OFFSET                                0x0000000000000048
2468 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_LSB                                   56
2469 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MSB                                   60
2470 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED2_MASK                                  0x1f00000000000000
2471 
2472 
2473 /* Description		RESERVED_19B
2474 
2475 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2476 
2477 
2478 			EHT Special User Info
2479 
2480 			Reserved bits in the Trigger
2481 			<legal all>
2482 */
2483 
2484 #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_OFFSET                                   0x0000000000000048
2485 #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_LSB                                      61
2486 #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MSB                                      63
2487 #define OFDMA_TRIGGER_DETAILS_RESERVED_19B_MASK                                     0xe000000000000000
2488 
2489 
2490 /* Description		EHT_SPECIAL_AID12
2491 
2492 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2493 
2494 
2495 			EHT Special User Info
2496 
2497 			The AID12 subfield of the Special User Info field should
2498 			 be '2007' for EHT R1 triggers.
2499 
2500 			Note strictly needed, but added here for debugging purposes.
2501 
2502 			<legal all>
2503 */
2504 
2505 #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_OFFSET                              0x0000000000000050
2506 #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_LSB                                 0
2507 #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MSB                                 11
2508 #define OFDMA_TRIGGER_DETAILS_EHT_SPECIAL_AID12_MASK                                0x0000000000000fff
2509 
2510 
2511 /* Description		PHY_VERSION
2512 
2513 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2514 
2515 
2516 			EHT Special User Info
2517 
2518 			The PHY version should be '0' for EHT R1 triggers.
2519 
2520 			Note strictly needed, but added here for debugging purposes.
2521 
2522 			<legal all>
2523 */
2524 
2525 #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_OFFSET                                    0x0000000000000050
2526 #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_LSB                                       12
2527 #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MSB                                       14
2528 #define OFDMA_TRIGGER_DETAILS_PHY_VERSION_MASK                                      0x0000000000007000
2529 
2530 
2531 /* Description		BANDWIDTH_EXT
2532 
2533 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2534 
2535 
2536 			EHT Special User Info
2537 
2538 
2539 
2540 			This along with the field Bandwidth determines the HE-SIG-A/U-SIG
2541 			 BW value for the HE/EHT Trigger-based PPDU.
2542 
2543 			Bandwidth/Bandwidth_ext:
2544 			0/0: 20 MHz
2545 			1/0: 40 MHz
2546 			2/0: 80 MHz
2547 			3/1: 160 MHz
2548 			3/2: 320 MHz channelization 1
2549 			3/3: 320 MHz channelization 2
2550 			All other cominations are reserved.
2551 
2552 			<legal all>
2553 */
2554 
2555 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_OFFSET                                  0x0000000000000050
2556 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_LSB                                     15
2557 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MSB                                     16
2558 #define OFDMA_TRIGGER_DETAILS_BANDWIDTH_EXT_MASK                                    0x0000000000018000
2559 
2560 
2561 /* Description		EHT_SPATIAL_REUSE
2562 
2563 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2564 
2565 
2566 			EHT Special User Info
2567 
2568 			Indicates the value of the Spatial Reuse in the U-SIG of
2569 			 the EHT_TRIG PPDU transmitted as a response to the Trigger
2570 			 frame
2571 			<legal all>
2572 */
2573 
2574 #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_OFFSET                              0x0000000000000050
2575 #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_LSB                                 17
2576 #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MSB                                 24
2577 #define OFDMA_TRIGGER_DETAILS_EHT_SPATIAL_REUSE_MASK                                0x0000000001fe0000
2578 
2579 
2580 /* Description		U_SIG_RESERVED1
2581 
2582 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2583 
2584 
2585 			EHT Special User Info
2586 
2587 			Indicates the values of the 6 'disregard' bits [25:20] and
2588 			 1 'validate' bit [28] in the U-SIG of the EHT_TRIG PPDU
2589 			 transmitted as a response to the Trigger frame
2590 			<legal all>
2591 */
2592 
2593 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_OFFSET                                0x0000000000000050
2594 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_LSB                                   25
2595 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MSB                                   31
2596 #define OFDMA_TRIGGER_DETAILS_U_SIG_RESERVED1_MASK                                  0x00000000fe000000
2597 
2598 
2599 /* Description		EHT_TRIGGER_SPECIAL_USER_INFO_71_40
2600 
2601 			Field only valid when ax_trigger_source = 11ax_trigger_frame
2602 
2603 
2604 			EHT Trigger Dependent field in Special User Info
2605 
2606 			If the Trigger Dependent User Info sub-field is less than
2607 			 32 bits, the upper bits are set to 0.
2608 
2609 			<legal all>
2610 */
2611 
2612 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_OFFSET            0x0000000000000050
2613 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_LSB               32
2614 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MSB               63
2615 #define OFDMA_TRIGGER_DETAILS_EHT_TRIGGER_SPECIAL_USER_INFO_71_40_MASK              0xffffffff00000000
2616 
2617 
2618 
2619 #endif   // OFDMA_TRIGGER_DETAILS
2620