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