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