xref: /wlan-driver/fw-api/hw/qcn6432/pdg_response_rate_setting.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 _PDG_RESPONSE_RATE_SETTING_H_
18*5113495bSYour Name #define _PDG_RESPONSE_RATE_SETTING_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_PDG_RESPONSE_RATE_SETTING 7
24*5113495bSYour Name 
25*5113495bSYour Name 
26*5113495bSYour Name struct pdg_response_rate_setting {
27*5113495bSYour Name #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
28*5113495bSYour Name              uint32_t reserved_0a                                             :  1, // [0:0]
29*5113495bSYour Name                       tx_antenna_sector_ctrl                                  : 24, // [24:1]
30*5113495bSYour Name                       pkt_type                                                :  4, // [28:25]
31*5113495bSYour Name                       smoothing                                               :  1, // [29:29]
32*5113495bSYour Name                       ldpc                                                    :  1, // [30:30]
33*5113495bSYour Name                       stbc                                                    :  1; // [31:31]
34*5113495bSYour Name              uint32_t alt_tx_pwr                                              :  8, // [7:0]
35*5113495bSYour Name                       alt_min_tx_pwr                                          :  8, // [15:8]
36*5113495bSYour Name                       alt_nss                                                 :  3, // [18:16]
37*5113495bSYour Name                       alt_tx_chain_mask                                       :  8, // [26:19]
38*5113495bSYour Name                       alt_bw                                                  :  3, // [29:27]
39*5113495bSYour Name                       stf_ltf_3db_boost                                       :  1, // [30:30]
40*5113495bSYour Name                       force_extra_symbol                                      :  1; // [31:31]
41*5113495bSYour Name              uint32_t alt_rate_mcs                                            :  4, // [3:0]
42*5113495bSYour Name                       nss                                                     :  3, // [6:4]
43*5113495bSYour Name                       dpd_enable                                              :  1, // [7:7]
44*5113495bSYour Name                       tx_pwr                                                  :  8, // [15:8]
45*5113495bSYour Name                       min_tx_pwr                                              :  8, // [23:16]
46*5113495bSYour Name                       tx_chain_mask                                           :  8; // [31:24]
47*5113495bSYour Name              uint32_t reserved_3a                                             :  8, // [7:0]
48*5113495bSYour Name                       sgi                                                     :  2, // [9:8]
49*5113495bSYour Name                       rate_mcs                                                :  4, // [13:10]
50*5113495bSYour Name                       reserved_3b                                             :  2, // [15:14]
51*5113495bSYour Name                       tx_pwr_1                                                :  8, // [23:16]
52*5113495bSYour Name                       alt_tx_pwr_1                                            :  8; // [31:24]
53*5113495bSYour Name              uint32_t aggregation                                             :  1, // [0:0]
54*5113495bSYour Name                       dot11ax_bss_color_id                                    :  6, // [6:1]
55*5113495bSYour Name                       dot11ax_spatial_reuse                                   :  4, // [10:7]
56*5113495bSYour Name                       dot11ax_cp_ltf_size                                     :  2, // [12:11]
57*5113495bSYour Name                       dot11ax_dcm                                             :  1, // [13:13]
58*5113495bSYour Name                       dot11ax_doppler_indication                              :  1, // [14:14]
59*5113495bSYour Name                       dot11ax_su_extended                                     :  1, // [15:15]
60*5113495bSYour Name                       dot11ax_min_packet_extension                            :  2, // [17:16]
61*5113495bSYour Name                       dot11ax_pe_nss                                          :  3, // [20:18]
62*5113495bSYour Name                       dot11ax_pe_content                                      :  1, // [21:21]
63*5113495bSYour Name                       dot11ax_pe_ltf_size                                     :  2, // [23:22]
64*5113495bSYour Name                       dot11ax_chain_csd_en                                    :  1, // [24:24]
65*5113495bSYour Name                       dot11ax_pe_chain_csd_en                                 :  1, // [25:25]
66*5113495bSYour Name                       dot11ax_dl_ul_flag                                      :  1, // [26:26]
67*5113495bSYour Name                       reserved_4a                                             :  5; // [31:27]
68*5113495bSYour Name              uint32_t dot11ax_ext_ru_start_index                              :  4, // [3:0]
69*5113495bSYour Name                       dot11ax_ext_ru_size                                     :  4, // [7:4]
70*5113495bSYour Name                       eht_duplicate_mode                                      :  2, // [9:8]
71*5113495bSYour Name                       he_sigb_dcm                                             :  1, // [10:10]
72*5113495bSYour Name                       he_sigb_0_mcs                                           :  3, // [13:11]
73*5113495bSYour Name                       num_he_sigb_sym                                         :  5, // [18:14]
74*5113495bSYour Name                       required_response_time_source                           :  1, // [19:19]
75*5113495bSYour Name                       reserved_5a                                             :  6, // [25:20]
76*5113495bSYour Name                       u_sig_puncture_pattern_encoding                         :  6; // [31:26]
77*5113495bSYour Name              struct   mlo_sta_id_details                                        mlo_sta_id_details_rx;
78*5113495bSYour Name              uint16_t required_response_time                                  : 12, // [27:16]
79*5113495bSYour Name                       dot11be_params_placeholder                              :  4; // [31:28]
80*5113495bSYour Name #else
81*5113495bSYour Name              uint32_t stbc                                                    :  1, // [31:31]
82*5113495bSYour Name                       ldpc                                                    :  1, // [30:30]
83*5113495bSYour Name                       smoothing                                               :  1, // [29:29]
84*5113495bSYour Name                       pkt_type                                                :  4, // [28:25]
85*5113495bSYour Name                       tx_antenna_sector_ctrl                                  : 24, // [24:1]
86*5113495bSYour Name                       reserved_0a                                             :  1; // [0:0]
87*5113495bSYour Name              uint32_t force_extra_symbol                                      :  1, // [31:31]
88*5113495bSYour Name                       stf_ltf_3db_boost                                       :  1, // [30:30]
89*5113495bSYour Name                       alt_bw                                                  :  3, // [29:27]
90*5113495bSYour Name                       alt_tx_chain_mask                                       :  8, // [26:19]
91*5113495bSYour Name                       alt_nss                                                 :  3, // [18:16]
92*5113495bSYour Name                       alt_min_tx_pwr                                          :  8, // [15:8]
93*5113495bSYour Name                       alt_tx_pwr                                              :  8; // [7:0]
94*5113495bSYour Name              uint32_t tx_chain_mask                                           :  8, // [31:24]
95*5113495bSYour Name                       min_tx_pwr                                              :  8, // [23:16]
96*5113495bSYour Name                       tx_pwr                                                  :  8, // [15:8]
97*5113495bSYour Name                       dpd_enable                                              :  1, // [7:7]
98*5113495bSYour Name                       nss                                                     :  3, // [6:4]
99*5113495bSYour Name                       alt_rate_mcs                                            :  4; // [3:0]
100*5113495bSYour Name              uint32_t alt_tx_pwr_1                                            :  8, // [31:24]
101*5113495bSYour Name                       tx_pwr_1                                                :  8, // [23:16]
102*5113495bSYour Name                       reserved_3b                                             :  2, // [15:14]
103*5113495bSYour Name                       rate_mcs                                                :  4, // [13:10]
104*5113495bSYour Name                       sgi                                                     :  2, // [9:8]
105*5113495bSYour Name                       reserved_3a                                             :  8; // [7:0]
106*5113495bSYour Name              uint32_t reserved_4a                                             :  5, // [31:27]
107*5113495bSYour Name                       dot11ax_dl_ul_flag                                      :  1, // [26:26]
108*5113495bSYour Name                       dot11ax_pe_chain_csd_en                                 :  1, // [25:25]
109*5113495bSYour Name                       dot11ax_chain_csd_en                                    :  1, // [24:24]
110*5113495bSYour Name                       dot11ax_pe_ltf_size                                     :  2, // [23:22]
111*5113495bSYour Name                       dot11ax_pe_content                                      :  1, // [21:21]
112*5113495bSYour Name                       dot11ax_pe_nss                                          :  3, // [20:18]
113*5113495bSYour Name                       dot11ax_min_packet_extension                            :  2, // [17:16]
114*5113495bSYour Name                       dot11ax_su_extended                                     :  1, // [15:15]
115*5113495bSYour Name                       dot11ax_doppler_indication                              :  1, // [14:14]
116*5113495bSYour Name                       dot11ax_dcm                                             :  1, // [13:13]
117*5113495bSYour Name                       dot11ax_cp_ltf_size                                     :  2, // [12:11]
118*5113495bSYour Name                       dot11ax_spatial_reuse                                   :  4, // [10:7]
119*5113495bSYour Name                       dot11ax_bss_color_id                                    :  6, // [6:1]
120*5113495bSYour Name                       aggregation                                             :  1; // [0:0]
121*5113495bSYour Name              uint32_t u_sig_puncture_pattern_encoding                         :  6, // [31:26]
122*5113495bSYour Name                       reserved_5a                                             :  6, // [25:20]
123*5113495bSYour Name                       required_response_time_source                           :  1, // [19:19]
124*5113495bSYour Name                       num_he_sigb_sym                                         :  5, // [18:14]
125*5113495bSYour Name                       he_sigb_0_mcs                                           :  3, // [13:11]
126*5113495bSYour Name                       he_sigb_dcm                                             :  1, // [10:10]
127*5113495bSYour Name                       eht_duplicate_mode                                      :  2, // [9:8]
128*5113495bSYour Name                       dot11ax_ext_ru_size                                     :  4, // [7:4]
129*5113495bSYour Name                       dot11ax_ext_ru_start_index                              :  4; // [3:0]
130*5113495bSYour Name              uint32_t dot11be_params_placeholder                              :  4, // [31:28]
131*5113495bSYour Name                       required_response_time                                  : 12; // [27:16]
132*5113495bSYour Name              struct   mlo_sta_id_details                                        mlo_sta_id_details_rx;
133*5113495bSYour Name #endif
134*5113495bSYour Name };
135*5113495bSYour Name 
136*5113495bSYour Name 
137*5113495bSYour Name /* Description		RESERVED_0A
138*5113495bSYour Name 
139*5113495bSYour Name 
140*5113495bSYour Name 			<legal 0>
141*5113495bSYour Name */
142*5113495bSYour Name 
143*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_OFFSET                                0x00000000
144*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_LSB                                   0
145*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_MSB                                   0
146*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_0A_MASK                                  0x00000001
147*5113495bSYour Name 
148*5113495bSYour Name 
149*5113495bSYour Name /* Description		TX_ANTENNA_SECTOR_CTRL
150*5113495bSYour Name 
151*5113495bSYour Name 			Sectored transmit antenna
152*5113495bSYour Name 			<legal all>
153*5113495bSYour Name */
154*5113495bSYour Name 
155*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_OFFSET                     0x00000000
156*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_LSB                        1
157*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_MSB                        24
158*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_ANTENNA_SECTOR_CTRL_MASK                       0x01fffffe
159*5113495bSYour Name 
160*5113495bSYour Name 
161*5113495bSYour Name /* Description		PKT_TYPE
162*5113495bSYour Name 
163*5113495bSYour Name 			Packet type:
164*5113495bSYour Name 			<enum 0 dot11a>802.11a PPDU type
165*5113495bSYour Name 			<enum 1 dot11b>802.11b PPDU type
166*5113495bSYour Name 			<enum 2 dot11n_mm>802.11n Mixed Mode PPDU type
167*5113495bSYour Name 			<enum 3 dot11ac>802.11ac PPDU type
168*5113495bSYour Name 			<enum 4 dot11ax>802.11ax PPDU type
169*5113495bSYour Name 			<enum 5 dot11ba>802.11ba (WUR) PPDU type
170*5113495bSYour Name 			<enum 6 dot11be>802.11be PPDU type
171*5113495bSYour Name 			<enum 7 dot11az>802.11az (ranging) PPDU type
172*5113495bSYour Name 			<enum 8 dot11n_gf>802.11n Green Field PPDU type (unsupported
173*5113495bSYour Name 			 & aborted)
174*5113495bSYour Name */
175*5113495bSYour Name 
176*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_OFFSET                                   0x00000000
177*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_LSB                                      25
178*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_MSB                                      28
179*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_PKT_TYPE_MASK                                     0x1e000000
180*5113495bSYour Name 
181*5113495bSYour Name 
182*5113495bSYour Name /* Description		SMOOTHING
183*5113495bSYour Name 
184*5113495bSYour Name 			This field is used by PDG to populate the SMOOTHING filed
185*5113495bSYour Name 			 in the SIG Preamble of the PPDU
186*5113495bSYour Name 			<legal 0-1>
187*5113495bSYour Name */
188*5113495bSYour Name 
189*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_OFFSET                                  0x00000000
190*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_LSB                                     29
191*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_MSB                                     29
192*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SMOOTHING_MASK                                    0x20000000
193*5113495bSYour Name 
194*5113495bSYour Name 
195*5113495bSYour Name /* Description		LDPC
196*5113495bSYour Name 
197*5113495bSYour Name 			When set, use LDPC transmission rates
198*5113495bSYour Name */
199*5113495bSYour Name 
200*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_LDPC_OFFSET                                       0x00000000
201*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_LDPC_LSB                                          30
202*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_LDPC_MSB                                          30
203*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_LDPC_MASK                                         0x40000000
204*5113495bSYour Name 
205*5113495bSYour Name 
206*5113495bSYour Name /* Description		STBC
207*5113495bSYour Name 
208*5113495bSYour Name 			When set, use STBC transmission rates
209*5113495bSYour Name */
210*5113495bSYour Name 
211*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STBC_OFFSET                                       0x00000000
212*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STBC_LSB                                          31
213*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STBC_MSB                                          31
214*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STBC_MASK                                         0x80000000
215*5113495bSYour Name 
216*5113495bSYour Name 
217*5113495bSYour Name /* Description		ALT_TX_PWR
218*5113495bSYour Name 
219*5113495bSYour Name 			Coex related AlternativeTransmit parameter
220*5113495bSYour Name 
221*5113495bSYour Name 			Transmit Power in s6.2 format.
222*5113495bSYour Name 			In units of 0.25 dBm
223*5113495bSYour Name 			<legal all>
224*5113495bSYour Name */
225*5113495bSYour Name 
226*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_OFFSET                                 0x00000004
227*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_LSB                                    0
228*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_MSB                                    7
229*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_MASK                                   0x000000ff
230*5113495bSYour Name 
231*5113495bSYour Name 
232*5113495bSYour Name /* Description		ALT_MIN_TX_PWR
233*5113495bSYour Name 
234*5113495bSYour Name 			Coex related Alternative Transmit parameter
235*5113495bSYour Name 
236*5113495bSYour Name 			Minimum allowed Transmit Power in s6.2 format.
237*5113495bSYour Name 			In units of 0.25 dBm
238*5113495bSYour Name 			<legal all>
239*5113495bSYour Name */
240*5113495bSYour Name 
241*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_OFFSET                             0x00000004
242*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_LSB                                8
243*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_MSB                                15
244*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_MIN_TX_PWR_MASK                               0x0000ff00
245*5113495bSYour Name 
246*5113495bSYour Name 
247*5113495bSYour Name /* Description		ALT_NSS
248*5113495bSYour Name 
249*5113495bSYour Name 			Coex related Alternative Transmit parameter
250*5113495bSYour Name 
251*5113495bSYour Name 			Number of spatial streams.
252*5113495bSYour Name 
253*5113495bSYour Name 			<enum 0 1_spatial_stream>Single spatial stream
254*5113495bSYour Name 			<enum 1 2_spatial_streams>2 spatial streams
255*5113495bSYour Name 			<enum 2 3_spatial_streams>3 spatial streams
256*5113495bSYour Name 			<enum 3 4_spatial_streams>4 spatial streams
257*5113495bSYour Name 			<enum 4 5_spatial_streams>5 spatial streams
258*5113495bSYour Name 			<enum 5 6_spatial_streams>6 spatial streams
259*5113495bSYour Name 			<enum 6 7_spatial_streams>7 spatial streams
260*5113495bSYour Name 			<enum 7 8_spatial_streams>8 spatial streams
261*5113495bSYour Name */
262*5113495bSYour Name 
263*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_OFFSET                                    0x00000004
264*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_LSB                                       16
265*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_MSB                                       18
266*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_NSS_MASK                                      0x00070000
267*5113495bSYour Name 
268*5113495bSYour Name 
269*5113495bSYour Name /* Description		ALT_TX_CHAIN_MASK
270*5113495bSYour Name 
271*5113495bSYour Name 			Coex related Alternative Transmit parameter
272*5113495bSYour Name 
273*5113495bSYour Name 			Chain mask to support up to 8 antennas.
274*5113495bSYour Name 			<legal 1-255>
275*5113495bSYour Name */
276*5113495bSYour Name 
277*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_OFFSET                          0x00000004
278*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_LSB                             19
279*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_MSB                             26
280*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_CHAIN_MASK_MASK                            0x07f80000
281*5113495bSYour Name 
282*5113495bSYour Name 
283*5113495bSYour Name /* Description		ALT_BW
284*5113495bSYour Name 
285*5113495bSYour Name 			Coex related Alternative Transmit parameter
286*5113495bSYour Name 
287*5113495bSYour Name 			The BW of the upcoming transmission.
288*5113495bSYour Name 
289*5113495bSYour Name 			<enum 0 20_mhz>20 Mhz BW
290*5113495bSYour Name 			<enum 1 40_mhz>40 Mhz BW
291*5113495bSYour Name 			<enum 2 80_mhz>80 Mhz BW
292*5113495bSYour Name 			<enum 3 160_mhz>160 Mhz BW
293*5113495bSYour Name 			<enum 4 320_mhz>320 Mhz BW
294*5113495bSYour Name 			<enum 5 240_mhz>240 Mhz BW
295*5113495bSYour Name */
296*5113495bSYour Name 
297*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_BW_OFFSET                                     0x00000004
298*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_BW_LSB                                        27
299*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_BW_MSB                                        29
300*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_BW_MASK                                       0x38000000
301*5113495bSYour Name 
302*5113495bSYour Name 
303*5113495bSYour Name /* Description		STF_LTF_3DB_BOOST
304*5113495bSYour Name 
305*5113495bSYour Name 			Boost the STF and LTF power by 3dB in 11a/n/ac packets.
306*5113495bSYour Name 			This includes both the legacy preambles and the HT/VHT preambles.0:
307*5113495bSYour Name 			disable power boost1: enable power boost
308*5113495bSYour Name 			<legal all>
309*5113495bSYour Name */
310*5113495bSYour Name 
311*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_OFFSET                          0x00000004
312*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_LSB                             30
313*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_MSB                             30
314*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_STF_LTF_3DB_BOOST_MASK                            0x40000000
315*5113495bSYour Name 
316*5113495bSYour Name 
317*5113495bSYour Name /* Description		FORCE_EXTRA_SYMBOL
318*5113495bSYour Name 
319*5113495bSYour Name 			Set to 1 to force an extra OFDM symbol (or symbols) even
320*5113495bSYour Name 			 if the PPDU encoding process does not result in an extra
321*5113495bSYour Name 			 OFDM symbol (or symbols)
322*5113495bSYour Name */
323*5113495bSYour Name 
324*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_OFFSET                         0x00000004
325*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_LSB                            31
326*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_MSB                            31
327*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_FORCE_EXTRA_SYMBOL_MASK                           0x80000000
328*5113495bSYour Name 
329*5113495bSYour Name 
330*5113495bSYour Name /* Description		ALT_RATE_MCS
331*5113495bSYour Name 
332*5113495bSYour Name 			Coex related Alternative Transmit parameter
333*5113495bSYour Name 
334*5113495bSYour Name 			For details, refer to  MCS_TYPE
335*5113495bSYour Name 			Note: This is "rate" in case of 11a/11b
336*5113495bSYour Name 			description
337*5113495bSYour Name 			<legal all>
338*5113495bSYour Name */
339*5113495bSYour Name 
340*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_OFFSET                               0x00000008
341*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_LSB                                  0
342*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_MSB                                  3
343*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_RATE_MCS_MASK                                 0x0000000f
344*5113495bSYour Name 
345*5113495bSYour Name 
346*5113495bSYour Name /* Description		NSS
347*5113495bSYour Name 
348*5113495bSYour Name 			Number of spatial streams.
349*5113495bSYour Name 
350*5113495bSYour Name 			<enum 0 1_spatial_stream>Single spatial stream
351*5113495bSYour Name 			<enum 1 2_spatial_streams>2 spatial streams
352*5113495bSYour Name 			<enum 2 3_spatial_streams>3 spatial streams
353*5113495bSYour Name 			<enum 3 4_spatial_streams>4 spatial streams
354*5113495bSYour Name 			<enum 4 5_spatial_streams>5 spatial streams
355*5113495bSYour Name 			<enum 5 6_spatial_streams>6 spatial streams
356*5113495bSYour Name 			<enum 6 7_spatial_streams>7 spatial streams
357*5113495bSYour Name 			<enum 7 8_spatial_streams>8 spatial streams
358*5113495bSYour Name */
359*5113495bSYour Name 
360*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NSS_OFFSET                                        0x00000008
361*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NSS_LSB                                           4
362*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NSS_MSB                                           6
363*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NSS_MASK                                          0x00000070
364*5113495bSYour Name 
365*5113495bSYour Name 
366*5113495bSYour Name /* Description		DPD_ENABLE
367*5113495bSYour Name 
368*5113495bSYour Name 			DPD enable control
369*5113495bSYour Name 
370*5113495bSYour Name 			This is needed on a per packet basis
371*5113495bSYour Name 			<enum 0     dpd_off> DPD profile not applied to current
372*5113495bSYour Name 			packet
373*5113495bSYour Name 			<enum 1     dpd_on> DPD profile applied to current packet
374*5113495bSYour Name 			 if available
375*5113495bSYour Name 			<legal 0-1>
376*5113495bSYour Name 
377*5113495bSYour Name 			This field is not applicable in11ah mode of operation and
378*5113495bSYour Name 			 is ignored by the HW
379*5113495bSYour Name */
380*5113495bSYour Name 
381*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_OFFSET                                 0x00000008
382*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_LSB                                    7
383*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_MSB                                    7
384*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DPD_ENABLE_MASK                                   0x00000080
385*5113495bSYour Name 
386*5113495bSYour Name 
387*5113495bSYour Name /* Description		TX_PWR
388*5113495bSYour Name 
389*5113495bSYour Name 			Transmit Power in s6.2 format.
390*5113495bSYour Name 			In units of 0.25 dBm
391*5113495bSYour Name 			<legal all>
392*5113495bSYour Name */
393*5113495bSYour Name 
394*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_OFFSET                                     0x00000008
395*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_LSB                                        8
396*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_MSB                                        15
397*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_MASK                                       0x0000ff00
398*5113495bSYour Name 
399*5113495bSYour Name 
400*5113495bSYour Name /* Description		MIN_TX_PWR
401*5113495bSYour Name 
402*5113495bSYour Name 			Coex related field:
403*5113495bSYour Name 
404*5113495bSYour Name 			Minimum allowed Transmit Power in s6.2 format.
405*5113495bSYour Name 			In units of 0.25 dBm
406*5113495bSYour Name 			<legal all>
407*5113495bSYour Name */
408*5113495bSYour Name 
409*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_OFFSET                                 0x00000008
410*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_LSB                                    16
411*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_MSB                                    23
412*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MIN_TX_PWR_MASK                                   0x00ff0000
413*5113495bSYour Name 
414*5113495bSYour Name 
415*5113495bSYour Name /* Description		TX_CHAIN_MASK
416*5113495bSYour Name 
417*5113495bSYour Name 			Chain mask to support up to 8 antennas.
418*5113495bSYour Name 			<legal 1-255>
419*5113495bSYour Name */
420*5113495bSYour Name 
421*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_OFFSET                              0x00000008
422*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_LSB                                 24
423*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_MSB                                 31
424*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_CHAIN_MASK_MASK                                0xff000000
425*5113495bSYour Name 
426*5113495bSYour Name 
427*5113495bSYour Name /* Description		RESERVED_3A
428*5113495bSYour Name 
429*5113495bSYour Name 			 <legal 0>
430*5113495bSYour Name */
431*5113495bSYour Name 
432*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_OFFSET                                0x0000000c
433*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_LSB                                   0
434*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_MSB                                   7
435*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3A_MASK                                  0x000000ff
436*5113495bSYour Name 
437*5113495bSYour Name 
438*5113495bSYour Name /* Description		SGI
439*5113495bSYour Name 
440*5113495bSYour Name 			Field only valid when pkt type is HT or VHT.For 11ax see
441*5113495bSYour Name 			 field Dot11ax_CP_LTF_size
442*5113495bSYour Name 
443*5113495bSYour Name 			<enum 0     0_8_us_sgi > Legacy normal GI. Can also be used
444*5113495bSYour Name 			 for HE
445*5113495bSYour Name 			<enum 1     0_4_us_sgi > Legacy short GI. Can also be used
446*5113495bSYour Name 			 for HE
447*5113495bSYour Name 			<enum 2     1_6_us_sgi > Not used for pre 11ax pkt_types.
448*5113495bSYour Name 
449*5113495bSYour Name 			<enum 3     3_2_us_sgi > Not used for pre 11ax pkt_types
450*5113495bSYour Name 
451*5113495bSYour Name 
452*5113495bSYour Name 			<legal 0 - 3>
453*5113495bSYour Name */
454*5113495bSYour Name 
455*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SGI_OFFSET                                        0x0000000c
456*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SGI_LSB                                           8
457*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SGI_MSB                                           9
458*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_SGI_MASK                                          0x00000300
459*5113495bSYour Name 
460*5113495bSYour Name 
461*5113495bSYour Name /* Description		RATE_MCS
462*5113495bSYour Name 
463*5113495bSYour Name 			For details, refer to  MCS_TYPE description
464*5113495bSYour Name 			Note: This is "rate" in case of 11a/11b
465*5113495bSYour Name 
466*5113495bSYour Name 			<legal all>
467*5113495bSYour Name */
468*5113495bSYour Name 
469*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_OFFSET                                   0x0000000c
470*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_LSB                                      10
471*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_MSB                                      13
472*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RATE_MCS_MASK                                     0x00003c00
473*5113495bSYour Name 
474*5113495bSYour Name 
475*5113495bSYour Name /* Description		RESERVED_3B
476*5113495bSYour Name 
477*5113495bSYour Name 			 <legal 0>
478*5113495bSYour Name */
479*5113495bSYour Name 
480*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_OFFSET                                0x0000000c
481*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_LSB                                   14
482*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_MSB                                   15
483*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_3B_MASK                                  0x0000c000
484*5113495bSYour Name 
485*5113495bSYour Name 
486*5113495bSYour Name /* Description		TX_PWR_1
487*5113495bSYour Name 
488*5113495bSYour Name 			Default (desired) transmit parameter for the second chain
489*5113495bSYour Name 
490*5113495bSYour Name 
491*5113495bSYour Name 			Transmit Power in s6.2 format.
492*5113495bSYour Name 			In units of 0.25 dBm
493*5113495bSYour Name 
494*5113495bSYour Name 			Note that there is no Min value for this
495*5113495bSYour Name 			<legal all>
496*5113495bSYour Name */
497*5113495bSYour Name 
498*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_OFFSET                                   0x0000000c
499*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_LSB                                      16
500*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_MSB                                      23
501*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_TX_PWR_1_MASK                                     0x00ff0000
502*5113495bSYour Name 
503*5113495bSYour Name 
504*5113495bSYour Name /* Description		ALT_TX_PWR_1
505*5113495bSYour Name 
506*5113495bSYour Name 			Alternate (desired) transmit parameter for the second chain
507*5113495bSYour Name 
508*5113495bSYour Name 
509*5113495bSYour Name 			Transmit Power in s6.2 format.
510*5113495bSYour Name 			In units of 0.25 dBm
511*5113495bSYour Name 
512*5113495bSYour Name 			Note that there is no Min value for this
513*5113495bSYour Name 			<legal all>
514*5113495bSYour Name */
515*5113495bSYour Name 
516*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_OFFSET                               0x0000000c
517*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_LSB                                  24
518*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_MSB                                  31
519*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_ALT_TX_PWR_1_MASK                                 0xff000000
520*5113495bSYour Name 
521*5113495bSYour Name 
522*5113495bSYour Name /* Description		AGGREGATION
523*5113495bSYour Name 
524*5113495bSYour Name 			Field only valid in case of pkt_type == 11n
525*5113495bSYour Name 
526*5113495bSYour Name 			<enum 0     mpdu> Indicates MPDU format. TXPCU will select
527*5113495bSYour Name 			 this setting if the CBF response only contains a single
528*5113495bSYour Name 			 segment
529*5113495bSYour Name 			<enum 1     a_mpdu> Indicates A-MPDU format. TXPCU will
530*5113495bSYour Name 			select this setting if the CBF response will contain two
531*5113495bSYour Name 			 or more segments
532*5113495bSYour Name 			<legal 0-1>
533*5113495bSYour Name */
534*5113495bSYour Name 
535*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_OFFSET                                0x00000010
536*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_LSB                                   0
537*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_MSB                                   0
538*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_AGGREGATION_MASK                                  0x00000001
539*5113495bSYour Name 
540*5113495bSYour Name 
541*5113495bSYour Name /* Description		DOT11AX_BSS_COLOR_ID
542*5113495bSYour Name 
543*5113495bSYour Name 			BSS color of the nextwork to which this STA belongs.
544*5113495bSYour Name 			When generated by TXPCU, this field is set equal to: Dot11ax_received_Bss_color_id
545*5113495bSYour Name 
546*5113495bSYour Name 
547*5113495bSYour Name 			<legal all>
548*5113495bSYour Name */
549*5113495bSYour Name 
550*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_OFFSET                       0x00000010
551*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_LSB                          1
552*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_MSB                          6
553*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_BSS_COLOR_ID_MASK                         0x0000007e
554*5113495bSYour Name 
555*5113495bSYour Name 
556*5113495bSYour Name /* Description		DOT11AX_SPATIAL_REUSE
557*5113495bSYour Name 
558*5113495bSYour Name 			This field is only valid for pkt_type == 11ax
559*5113495bSYour Name 
560*5113495bSYour Name 			Spatial re-use
561*5113495bSYour Name 			<legal all>
562*5113495bSYour Name */
563*5113495bSYour Name 
564*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_OFFSET                      0x00000010
565*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_LSB                         7
566*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_MSB                         10
567*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SPATIAL_REUSE_MASK                        0x00000780
568*5113495bSYour Name 
569*5113495bSYour Name 
570*5113495bSYour Name /* Description		DOT11AX_CP_LTF_SIZE
571*5113495bSYour Name 
572*5113495bSYour Name 			field is only valid for pkt_type == 11ax
573*5113495bSYour Name 
574*5113495bSYour Name 			Indicates the CP and HE-LTF type
575*5113495bSYour Name 
576*5113495bSYour Name 			<enum 0 OneX_LTF_0_8CP> 1xLTF + 0.8 us CP
577*5113495bSYour Name 			<enum 1 TwoX_LTF_0_8CP> 2x LTF + 0.8 µs CP
578*5113495bSYour Name 			<enum 2 TwoX_LTF_1_6CP> 2x LTF + 1.6 µs CP
579*5113495bSYour Name 			<enum 3 FourX_LTF_0_8CP_3_2CP>
580*5113495bSYour Name 			When DCM == 0 OR STBC == 0: 4x LTF + 3.2 µs CP
581*5113495bSYour Name 			When DCM == 1 AND STBC == 1: 4x LTF + 0.8 µs CP. Note:
582*5113495bSYour Name 			In this scenario, Neither DCM nor STBC is applied to HE
583*5113495bSYour Name 			data field.
584*5113495bSYour Name 
585*5113495bSYour Name 			If ( DCM == 1 ) and ( MCS > 0 ) and (STBC == 0)
586*5113495bSYour Name 			0      = 1xLTF + 0.4 usec
587*5113495bSYour Name 			1      = 2xLTF + 0.4 usec
588*5113495bSYour Name 			2~3 = Reserved
589*5113495bSYour Name 
590*5113495bSYour Name 			<legal all>
591*5113495bSYour Name */
592*5113495bSYour Name 
593*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_OFFSET                        0x00000010
594*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_LSB                           11
595*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_MSB                           12
596*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CP_LTF_SIZE_MASK                          0x00001800
597*5113495bSYour Name 
598*5113495bSYour Name 
599*5113495bSYour Name /* Description		DOT11AX_DCM
600*5113495bSYour Name 
601*5113495bSYour Name 			field is only valid for pkt_type == 11ax
602*5113495bSYour Name 
603*5113495bSYour Name 			Indicates whether dual sub-carrier modulation is applied
604*5113495bSYour Name 
605*5113495bSYour Name 			0: No DCM
606*5113495bSYour Name 			1:DCM
607*5113495bSYour Name 			<legal all>
608*5113495bSYour Name */
609*5113495bSYour Name 
610*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_OFFSET                                0x00000010
611*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_LSB                                   13
612*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_MSB                                   13
613*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DCM_MASK                                  0x00002000
614*5113495bSYour Name 
615*5113495bSYour Name 
616*5113495bSYour Name /* Description		DOT11AX_DOPPLER_INDICATION
617*5113495bSYour Name 
618*5113495bSYour Name 			field is only valid for pkt_type == 11ax
619*5113495bSYour Name 
620*5113495bSYour Name 			0: No Doppler support
621*5113495bSYour Name 			1: Doppler support
622*5113495bSYour Name 			<legal all>
623*5113495bSYour Name */
624*5113495bSYour Name 
625*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_OFFSET                 0x00000010
626*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_LSB                    14
627*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_MSB                    14
628*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DOPPLER_INDICATION_MASK                   0x00004000
629*5113495bSYour Name 
630*5113495bSYour Name 
631*5113495bSYour Name /* Description		DOT11AX_SU_EXTENDED
632*5113495bSYour Name 
633*5113495bSYour Name 			field is only valid for pkt_type == 11ax OR pkt_type ==
634*5113495bSYour Name 			11be
635*5113495bSYour Name 
636*5113495bSYour Name 			When set, the 11ax or 11be frame is of the extended range
637*5113495bSYour Name 			 format
638*5113495bSYour Name 			<legal all>
639*5113495bSYour Name */
640*5113495bSYour Name 
641*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_OFFSET                        0x00000010
642*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_LSB                           15
643*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_MSB                           15
644*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_SU_EXTENDED_MASK                          0x00008000
645*5113495bSYour Name 
646*5113495bSYour Name 
647*5113495bSYour Name /* Description		DOT11AX_MIN_PACKET_EXTENSION
648*5113495bSYour Name 
649*5113495bSYour Name 			field is only valid for pkt_type == 11ax OR pkt_type ==
650*5113495bSYour Name 			11be
651*5113495bSYour Name 
652*5113495bSYour Name 			The min packet extension duration for this user.
653*5113495bSYour Name 			0: no extension
654*5113495bSYour Name 			1: 8us
655*5113495bSYour Name 			2: 16 us
656*5113495bSYour Name 			3: 20 us (only for .11be)
657*5113495bSYour Name 			<legal 0-3>
658*5113495bSYour Name */
659*5113495bSYour Name 
660*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_OFFSET               0x00000010
661*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_LSB                  16
662*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_MSB                  17
663*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_MIN_PACKET_EXTENSION_MASK                 0x00030000
664*5113495bSYour Name 
665*5113495bSYour Name 
666*5113495bSYour Name /* Description		DOT11AX_PE_NSS
667*5113495bSYour Name 
668*5113495bSYour Name 			Number of active spatial streams during packet extension.
669*5113495bSYour Name 
670*5113495bSYour Name 
671*5113495bSYour Name 			<enum 0 1_spatial_stream>Single spatial stream
672*5113495bSYour Name 			<enum 1 2_spatial_streams>2 spatial streams
673*5113495bSYour Name 			<enum 2 3_spatial_streams>3 spatial streams
674*5113495bSYour Name 			<enum 3 4_spatial_streams>4 spatial streams
675*5113495bSYour Name 			<enum 4 5_spatial_streams>5 spatial streams
676*5113495bSYour Name 			<enum 5 6_spatial_streams>6 spatial streams
677*5113495bSYour Name 			<enum 6 7_spatial_streams>7 spatial streams
678*5113495bSYour Name 			<enum 7 8_spatial_streams>8 spatial streams
679*5113495bSYour Name */
680*5113495bSYour Name 
681*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_OFFSET                             0x00000010
682*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_LSB                                18
683*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_MSB                                20
684*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_NSS_MASK                               0x001c0000
685*5113495bSYour Name 
686*5113495bSYour Name 
687*5113495bSYour Name /* Description		DOT11AX_PE_CONTENT
688*5113495bSYour Name 
689*5113495bSYour Name 			Content of packet extension. Valid for all 11ax packets
690*5113495bSYour Name 			having packet extension
691*5113495bSYour Name 
692*5113495bSYour Name 			0-he_ltf, 1-last_data_symbol
693*5113495bSYour Name 			<legal all>
694*5113495bSYour Name */
695*5113495bSYour Name 
696*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_OFFSET                         0x00000010
697*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_LSB                            21
698*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_MSB                            21
699*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CONTENT_MASK                           0x00200000
700*5113495bSYour Name 
701*5113495bSYour Name 
702*5113495bSYour Name /* Description		DOT11AX_PE_LTF_SIZE
703*5113495bSYour Name 
704*5113495bSYour Name 			LTF size to be used during packet extention. . This field
705*5113495bSYour Name 			 is valid for both FTM and non-FTM packets.
706*5113495bSYour Name 			0-1x
707*5113495bSYour Name 			1-2x (unsupported un HWK-1)
708*5113495bSYour Name 			2-4x (unsupported un HWK-1)
709*5113495bSYour Name 			<legal all>
710*5113495bSYour Name */
711*5113495bSYour Name 
712*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_OFFSET                        0x00000010
713*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_LSB                           22
714*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_MSB                           23
715*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_LTF_SIZE_MASK                          0x00c00000
716*5113495bSYour Name 
717*5113495bSYour Name 
718*5113495bSYour Name /* Description		DOT11AX_CHAIN_CSD_EN
719*5113495bSYour Name 
720*5113495bSYour Name 			This field denotes whether to apply CSD on the preamble
721*5113495bSYour Name 			and data portion of the packet. This field is valid for
722*5113495bSYour Name 			all transmit packets
723*5113495bSYour Name 			0: disable per-chain csd
724*5113495bSYour Name 			1: enable per-chain csd
725*5113495bSYour Name 			<legal all>
726*5113495bSYour Name */
727*5113495bSYour Name 
728*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_OFFSET                       0x00000010
729*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_LSB                          24
730*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_MSB                          24
731*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_CHAIN_CSD_EN_MASK                         0x01000000
732*5113495bSYour Name 
733*5113495bSYour Name 
734*5113495bSYour Name /* Description		DOT11AX_PE_CHAIN_CSD_EN
735*5113495bSYour Name 
736*5113495bSYour Name 			This field denotes whether to apply CSD on the packet extension
737*5113495bSYour Name 			 portion of the packet. This field is valid for all 11ax
738*5113495bSYour Name 			 packets.
739*5113495bSYour Name 			0: disable per-chain csd
740*5113495bSYour Name 			1: enable per-chain csd
741*5113495bSYour Name 			<legal all>
742*5113495bSYour Name */
743*5113495bSYour Name 
744*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_OFFSET                    0x00000010
745*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_LSB                       25
746*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_MSB                       25
747*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_PE_CHAIN_CSD_EN_MASK                      0x02000000
748*5113495bSYour Name 
749*5113495bSYour Name 
750*5113495bSYour Name /* Description		DOT11AX_DL_UL_FLAG
751*5113495bSYour Name 
752*5113495bSYour Name 			field is only valid for pkt_type == 11ax
753*5113495bSYour Name 
754*5113495bSYour Name 			<enum 0 DL_UL_FLAG_IS_DL_OR_TDLS>
755*5113495bSYour Name 			<enum 1 DL_UL_FLAG_IS_UL>
756*5113495bSYour Name 
757*5113495bSYour Name 			<legal all>
758*5113495bSYour Name */
759*5113495bSYour Name 
760*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_OFFSET                         0x00000010
761*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_LSB                            26
762*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_MSB                            26
763*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_DL_UL_FLAG_MASK                           0x04000000
764*5113495bSYour Name 
765*5113495bSYour Name 
766*5113495bSYour Name /* Description		RESERVED_4A
767*5113495bSYour Name 
768*5113495bSYour Name 			 <legal 0>
769*5113495bSYour Name */
770*5113495bSYour Name 
771*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_OFFSET                                0x00000010
772*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_LSB                                   27
773*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_MSB                                   31
774*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_4A_MASK                                  0xf8000000
775*5113495bSYour Name 
776*5113495bSYour Name 
777*5113495bSYour Name /* Description		DOT11AX_EXT_RU_START_INDEX
778*5113495bSYour Name 
779*5113495bSYour Name 			field is only valid for pkt_type == 11ax and  Dot11ax_su_extended
780*5113495bSYour Name 			 == 1
781*5113495bSYour Name 
782*5113495bSYour Name 			RU Number to which User is assigned
783*5113495bSYour Name 
784*5113495bSYour Name 			The RU numbering bitwidth  is only enough to cover the 20MHz
785*5113495bSYour Name 			 BW that extended range allows
786*5113495bSYour Name 			<legal 0-8>
787*5113495bSYour Name */
788*5113495bSYour Name 
789*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_OFFSET                 0x00000014
790*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_LSB                    0
791*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_MSB                    3
792*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_START_INDEX_MASK                   0x0000000f
793*5113495bSYour Name 
794*5113495bSYour Name 
795*5113495bSYour Name /* Description		DOT11AX_EXT_RU_SIZE
796*5113495bSYour Name 
797*5113495bSYour Name 			field is only valid for pkt_type == 11ax and  Dot11ax_su_extended
798*5113495bSYour Name 			 == 1 or pkt_type == 11be and EHT_duplicate_mode == 1
799*5113495bSYour Name 
800*5113495bSYour Name 			The size of the RU for this user.
801*5113495bSYour Name 
802*5113495bSYour Name 			In case of EHT duplicate transmissions, this field indicates
803*5113495bSYour Name 			 the width of the actual content before duplication, e.g.
804*5113495bSYour Name 			a 40 MHz PPDU duplicated to 160 MHz will have the bandwidth
805*5113495bSYour Name 			 fields indicating 160 MHz and this field set to e-num 4
806*5113495bSYour Name 			 (RU_484).
807*5113495bSYour Name 
808*5113495bSYour Name 			<enum 0 RU_26>
809*5113495bSYour Name 			<enum 1 RU_52>
810*5113495bSYour Name 			<enum 2 RU_106>
811*5113495bSYour Name 			<enum 3 RU_242>
812*5113495bSYour Name 			<enum 4 RU_484>
813*5113495bSYour Name 			<enum 5 RU_996>
814*5113495bSYour Name 			<enum 6 RU_1992>
815*5113495bSYour Name 			<enum 7 RU_FULLBW> Set when the RU occupies the full packet
816*5113495bSYour Name 			 bandwidth
817*5113495bSYour Name 			<enum 8 RU_FULLBW_240> Set when the RU occupies the full
818*5113495bSYour Name 			 packet bandwidth
819*5113495bSYour Name 			<enum 9 RU_FULLBW_320> Set when the RU occupies the full
820*5113495bSYour Name 			 packet bandwidth
821*5113495bSYour Name 			<enum 10 RU_MULTI_LARGE> DO NOT USE
822*5113495bSYour Name 			<enum 11 RU_78> DO NOT USE
823*5113495bSYour Name 			<enum 12 RU_132> DO NOT USE
824*5113495bSYour Name 			<legal 0-12>
825*5113495bSYour Name */
826*5113495bSYour Name 
827*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_OFFSET                        0x00000014
828*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_LSB                           4
829*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_MSB                           7
830*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11AX_EXT_RU_SIZE_MASK                          0x000000f0
831*5113495bSYour Name 
832*5113495bSYour Name 
833*5113495bSYour Name /* Description		EHT_DUPLICATE_MODE
834*5113495bSYour Name 
835*5113495bSYour Name 			Field only valid for pkt_type == 11be
836*5113495bSYour Name 
837*5113495bSYour Name 			Indicates EHT duplicate modulation
838*5113495bSYour Name 
839*5113495bSYour Name 			<enum 0 eht_no_duplicate>
840*5113495bSYour Name 			<enum 1 eht_2x_duplicate>
841*5113495bSYour Name 			<enum 2 eht_4x_duplicate>
842*5113495bSYour Name 
843*5113495bSYour Name 			<legal 0-2>
844*5113495bSYour Name */
845*5113495bSYour Name 
846*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_OFFSET                         0x00000014
847*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_LSB                            8
848*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_MSB                            9
849*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_EHT_DUPLICATE_MODE_MASK                           0x00000300
850*5113495bSYour Name 
851*5113495bSYour Name 
852*5113495bSYour Name /* Description		HE_SIGB_DCM
853*5113495bSYour Name 
854*5113495bSYour Name 			Indicates whether dual sub-carrier modulation is applied
855*5113495bSYour Name 			 to EHT-SIG
856*5113495bSYour Name 			<legal all>
857*5113495bSYour Name */
858*5113495bSYour Name 
859*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_OFFSET                                0x00000014
860*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_LSB                                   10
861*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_MSB                                   10
862*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_DCM_MASK                                  0x00000400
863*5113495bSYour Name 
864*5113495bSYour Name 
865*5113495bSYour Name /* Description		HE_SIGB_0_MCS
866*5113495bSYour Name 
867*5113495bSYour Name 			Indicates the MCS of EHT-SIG
868*5113495bSYour Name 
869*5113495bSYour Name 			For details, refer to  MCS_TYPE description
870*5113495bSYour Name 			<legal all>
871*5113495bSYour Name */
872*5113495bSYour Name 
873*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_OFFSET                              0x00000014
874*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_LSB                                 11
875*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_MSB                                 13
876*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_HE_SIGB_0_MCS_MASK                                0x00003800
877*5113495bSYour Name 
878*5113495bSYour Name 
879*5113495bSYour Name /* Description		NUM_HE_SIGB_SYM
880*5113495bSYour Name 
881*5113495bSYour Name 			Indicates the number of EHT-SIG symbols
882*5113495bSYour Name 
883*5113495bSYour Name 			This field is 0-based with 0 indicating that 1 eht_sig symbol
884*5113495bSYour Name 			 needs to be transmitted.
885*5113495bSYour Name 			<legal all>
886*5113495bSYour Name */
887*5113495bSYour Name 
888*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_OFFSET                            0x00000014
889*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_LSB                               14
890*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_MSB                               18
891*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_NUM_HE_SIGB_SYM_MASK                              0x0007c000
892*5113495bSYour Name 
893*5113495bSYour Name 
894*5113495bSYour Name /* Description		REQUIRED_RESPONSE_TIME_SOURCE
895*5113495bSYour Name 
896*5113495bSYour Name 			<enum 0 reqd_resp_time_src_is_RXPCU> Typically from received
897*5113495bSYour Name 			 HT Control for sync MLO response
898*5113495bSYour Name 			<enum 1 reqd_resp_time_src_is_FW>
899*5113495bSYour Name 			Typically from 'PCU_PPDU_SETUP_INIT' for sync MLO response
900*5113495bSYour Name 			 to response
901*5113495bSYour Name 			<legal all>
902*5113495bSYour Name */
903*5113495bSYour Name 
904*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_OFFSET              0x00000014
905*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_LSB                 19
906*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_MSB                 19
907*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_SOURCE_MASK                0x00080000
908*5113495bSYour Name 
909*5113495bSYour Name 
910*5113495bSYour Name /* Description		RESERVED_5A
911*5113495bSYour Name 
912*5113495bSYour Name 			 <legal 0>
913*5113495bSYour Name */
914*5113495bSYour Name 
915*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_OFFSET                                0x00000014
916*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_LSB                                   20
917*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_MSB                                   25
918*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_RESERVED_5A_MASK                                  0x03f00000
919*5113495bSYour Name 
920*5113495bSYour Name 
921*5113495bSYour Name /* Description		U_SIG_PUNCTURE_PATTERN_ENCODING
922*5113495bSYour Name 
923*5113495bSYour Name 			6-bit value copied from 'RX_RESPONSE_REQUIRED_INFO' and 'TX_CBF_INFO'
924*5113495bSYour Name 			to pass on to PDG
925*5113495bSYour Name 			<legal 0-29>
926*5113495bSYour Name */
927*5113495bSYour Name 
928*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_OFFSET            0x00000014
929*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_LSB               26
930*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_MSB               31
931*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_U_SIG_PUNCTURE_PATTERN_ENCODING_MASK              0xfc000000
932*5113495bSYour Name 
933*5113495bSYour Name 
934*5113495bSYour Name /* Description		MLO_STA_ID_DETAILS_RX
935*5113495bSYour Name 
936*5113495bSYour Name 			16-bi value copied from 'RX_RESPONSE_REQUIRED_INFO' to pass
937*5113495bSYour Name 			 on to PDG
938*5113495bSYour Name 
939*5113495bSYour Name 			Bits 10 and 11 are not valid, bits [9:0] reflect 'NSTR_MLO_STA_ID'
940*5113495bSYour Name 			from address search.
941*5113495bSYour Name 
942*5113495bSYour Name 			See definition of mlo_sta_id_details.
943*5113495bSYour Name */
944*5113495bSYour Name 
945*5113495bSYour Name 
946*5113495bSYour Name /* Description		NSTR_MLO_STA_ID
947*5113495bSYour Name 
948*5113495bSYour Name 			ID of peer participating in non-STR MLO
949*5113495bSYour Name */
950*5113495bSYour Name 
951*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_OFFSET      0x00000018
952*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_LSB         0
953*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MSB         9
954*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_MASK        0x000003ff
955*5113495bSYour Name 
956*5113495bSYour Name 
957*5113495bSYour Name /* Description		BLOCK_SELF_ML_SYNC
958*5113495bSYour Name 
959*5113495bSYour Name 			Only valid for TX
960*5113495bSYour Name 
961*5113495bSYour Name 			When set, this provides an indication to block the peer
962*5113495bSYour Name 			for self-link.
963*5113495bSYour Name */
964*5113495bSYour Name 
965*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_OFFSET   0x00000018
966*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_LSB      10
967*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MSB      10
968*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_SELF_ML_SYNC_MASK     0x00000400
969*5113495bSYour Name 
970*5113495bSYour Name 
971*5113495bSYour Name /* Description		BLOCK_PARTNER_ML_SYNC
972*5113495bSYour Name 
973*5113495bSYour Name 			Only valid for TX
974*5113495bSYour Name 
975*5113495bSYour Name 			When set, this provides an indication to block the peer
976*5113495bSYour Name 			for partner links.
977*5113495bSYour Name */
978*5113495bSYour Name 
979*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_OFFSET 0x00000018
980*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_LSB   11
981*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MSB   11
982*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_BLOCK_PARTNER_ML_SYNC_MASK  0x00000800
983*5113495bSYour Name 
984*5113495bSYour Name 
985*5113495bSYour Name /* Description		NSTR_MLO_STA_ID_VALID
986*5113495bSYour Name 
987*5113495bSYour Name 			All the fields in this TLV are valid only if this bit is
988*5113495bSYour Name 			 set.
989*5113495bSYour Name */
990*5113495bSYour Name 
991*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_OFFSET 0x00000018
992*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_LSB   12
993*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MSB   12
994*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_NSTR_MLO_STA_ID_VALID_MASK  0x00001000
995*5113495bSYour Name 
996*5113495bSYour Name 
997*5113495bSYour Name /* Description		RESERVED_0A
998*5113495bSYour Name 
999*5113495bSYour Name 			<legal 0>
1000*5113495bSYour Name */
1001*5113495bSYour Name 
1002*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_OFFSET          0x00000018
1003*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_LSB             13
1004*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MSB             15
1005*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_MLO_STA_ID_DETAILS_RX_RESERVED_0A_MASK            0x0000e000
1006*5113495bSYour Name 
1007*5113495bSYour Name 
1008*5113495bSYour Name /* Description		REQUIRED_RESPONSE_TIME
1009*5113495bSYour Name 
1010*5113495bSYour Name 			When non-zero, indicates that PDG shall pad the response
1011*5113495bSYour Name 			 transmission to the indicated duration (in us)
1012*5113495bSYour Name */
1013*5113495bSYour Name 
1014*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_OFFSET                     0x00000018
1015*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_LSB                        16
1016*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_MSB                        27
1017*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_REQUIRED_RESPONSE_TIME_MASK                       0x0fff0000
1018*5113495bSYour Name 
1019*5113495bSYour Name 
1020*5113495bSYour Name /* Description		DOT11BE_PARAMS_PLACEHOLDER
1021*5113495bSYour Name 
1022*5113495bSYour Name 			4 bytes for use as placeholders for 'Dot11be_*' parameters
1023*5113495bSYour Name 
1024*5113495bSYour Name */
1025*5113495bSYour Name 
1026*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_OFFSET                 0x00000018
1027*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_LSB                    28
1028*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_MSB                    31
1029*5113495bSYour Name #define PDG_RESPONSE_RATE_SETTING_DOT11BE_PARAMS_PLACEHOLDER_MASK                   0xf0000000
1030*5113495bSYour Name 
1031*5113495bSYour Name 
1032*5113495bSYour Name 
1033*5113495bSYour Name #endif   // PDG_RESPONSE_RATE_SETTING
1034