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