xref: /wlan-driver/fw-api/hw/kiwi/v2/tx_queue_extension.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1*5113495bSYour Name 
2*5113495bSYour Name /*
3*5113495bSYour Name  * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
4*5113495bSYour Name  *
5*5113495bSYour Name  * Permission to use, copy, modify, and/or distribute this software for any
6*5113495bSYour Name  * purpose with or without fee is hereby granted, provided that the above
7*5113495bSYour Name  * copyright notice and this permission notice appear in all copies.
8*5113495bSYour Name  *
9*5113495bSYour Name  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10*5113495bSYour Name  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11*5113495bSYour Name  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12*5113495bSYour Name  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13*5113495bSYour Name  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14*5113495bSYour Name  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15*5113495bSYour Name  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16*5113495bSYour Name  */
17*5113495bSYour Name 
18*5113495bSYour Name 
19*5113495bSYour Name 
20*5113495bSYour Name #ifndef _TX_QUEUE_EXTENSION_H_
21*5113495bSYour Name #define _TX_QUEUE_EXTENSION_H_
22*5113495bSYour Name #if !defined(__ASSEMBLER__)
23*5113495bSYour Name #endif
24*5113495bSYour Name 
25*5113495bSYour Name #define NUM_OF_DWORDS_TX_QUEUE_EXTENSION 14
26*5113495bSYour Name 
27*5113495bSYour Name #define NUM_OF_QWORDS_TX_QUEUE_EXTENSION 7
28*5113495bSYour Name 
29*5113495bSYour Name struct tx_queue_extension {
30*5113495bSYour Name #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
31*5113495bSYour Name              uint32_t frame_ctl                                               : 16,
32*5113495bSYour Name                       qos_ctl                                                 : 16;
33*5113495bSYour Name              uint32_t ampdu_flag                                              :  1,
34*5113495bSYour Name                       tx_notify_no_htc_override                               :  1,
35*5113495bSYour Name                       reserved_1a                                             :  7,
36*5113495bSYour Name                       checksum_tso_disable_for_frag                           :  1,
37*5113495bSYour Name                       key_id                                                  :  8,
38*5113495bSYour Name                       qos_buf_state_overwrite                                 :  1,
39*5113495bSYour Name                       buf_state_sta_id                                        :  1,
40*5113495bSYour Name                       buf_state_source                                        :  1,
41*5113495bSYour Name                       ht_control_overwrite_enable                             :  1,
42*5113495bSYour Name                       ht_control_overwrite_source                             :  4,
43*5113495bSYour Name                       reserved_1b                                             :  6;
44*5113495bSYour Name              uint32_t ul_headroom_insertion_enable                            :  1,
45*5113495bSYour Name                       ul_headroom_offset                                      :  5,
46*5113495bSYour Name                       bqrp_insertion_enable                                   :  1,
47*5113495bSYour Name                       bqrp_offset                                             :  5,
48*5113495bSYour Name                       ul_headroom_rsvd_7_6                                    :  2,
49*5113495bSYour Name                       bqr_rsvd_9_8                                            :  2,
50*5113495bSYour Name                       base_pn_63_48                                           : 16;
51*5113495bSYour Name              uint32_t base_pn_95_64                                           : 32;
52*5113495bSYour Name              uint32_t base_pn_127_96                                          : 32;
53*5113495bSYour Name              uint32_t ht_control_field_bw20                                   : 32;
54*5113495bSYour Name              uint32_t ht_control_field_bw40                                   : 32;
55*5113495bSYour Name              uint32_t ht_control_field_bw80                                   : 32;
56*5113495bSYour Name              uint32_t ht_control_field_bw160                                  : 32;
57*5113495bSYour Name              uint32_t ht_control_overwrite_mask                               : 32;
58*5113495bSYour Name              uint32_t cas_control_info                                        :  8,
59*5113495bSYour Name                       cas_offset                                              :  5,
60*5113495bSYour Name                       cas_insertion_enable                                    :  1,
61*5113495bSYour Name                       reserved_10a                                            :  2,
62*5113495bSYour Name                       ht_control_overwrite_source_for_srp                     :  4,
63*5113495bSYour Name                       ht_control_overwrite_source_for_bsrp                    :  4,
64*5113495bSYour Name                       reserved_10b                                            :  6,
65*5113495bSYour Name                       mpdu_hdr_len_override_en                                :  1,
66*5113495bSYour Name                       bar_ssn_overwrite_enable                                :  1;
67*5113495bSYour Name              uint32_t bar_ssn_offset                                          : 12,
68*5113495bSYour Name                       mpdu_hdr_len_override_val                               :  9,
69*5113495bSYour Name                       reserved_11a                                            : 11;
70*5113495bSYour Name              uint32_t ht_control_field_bw320                                  : 32;
71*5113495bSYour Name              uint32_t fw2sw_info                                              : 32;
72*5113495bSYour Name #else
73*5113495bSYour Name              uint32_t qos_ctl                                                 : 16,
74*5113495bSYour Name                       frame_ctl                                               : 16;
75*5113495bSYour Name              uint32_t reserved_1b                                             :  6,
76*5113495bSYour Name                       ht_control_overwrite_source                             :  4,
77*5113495bSYour Name                       ht_control_overwrite_enable                             :  1,
78*5113495bSYour Name                       buf_state_source                                        :  1,
79*5113495bSYour Name                       buf_state_sta_id                                        :  1,
80*5113495bSYour Name                       qos_buf_state_overwrite                                 :  1,
81*5113495bSYour Name                       key_id                                                  :  8,
82*5113495bSYour Name                       checksum_tso_disable_for_frag                           :  1,
83*5113495bSYour Name                       reserved_1a                                             :  7,
84*5113495bSYour Name                       tx_notify_no_htc_override                               :  1,
85*5113495bSYour Name                       ampdu_flag                                              :  1;
86*5113495bSYour Name              uint32_t base_pn_63_48                                           : 16,
87*5113495bSYour Name                       bqr_rsvd_9_8                                            :  2,
88*5113495bSYour Name                       ul_headroom_rsvd_7_6                                    :  2,
89*5113495bSYour Name                       bqrp_offset                                             :  5,
90*5113495bSYour Name                       bqrp_insertion_enable                                   :  1,
91*5113495bSYour Name                       ul_headroom_offset                                      :  5,
92*5113495bSYour Name                       ul_headroom_insertion_enable                            :  1;
93*5113495bSYour Name              uint32_t base_pn_95_64                                           : 32;
94*5113495bSYour Name              uint32_t base_pn_127_96                                          : 32;
95*5113495bSYour Name              uint32_t ht_control_field_bw20                                   : 32;
96*5113495bSYour Name              uint32_t ht_control_field_bw40                                   : 32;
97*5113495bSYour Name              uint32_t ht_control_field_bw80                                   : 32;
98*5113495bSYour Name              uint32_t ht_control_field_bw160                                  : 32;
99*5113495bSYour Name              uint32_t ht_control_overwrite_mask                               : 32;
100*5113495bSYour Name              uint32_t bar_ssn_overwrite_enable                                :  1,
101*5113495bSYour Name                       mpdu_hdr_len_override_en                                :  1,
102*5113495bSYour Name                       reserved_10b                                            :  6,
103*5113495bSYour Name                       ht_control_overwrite_source_for_bsrp                    :  4,
104*5113495bSYour Name                       ht_control_overwrite_source_for_srp                     :  4,
105*5113495bSYour Name                       reserved_10a                                            :  2,
106*5113495bSYour Name                       cas_insertion_enable                                    :  1,
107*5113495bSYour Name                       cas_offset                                              :  5,
108*5113495bSYour Name                       cas_control_info                                        :  8;
109*5113495bSYour Name              uint32_t reserved_11a                                            : 11,
110*5113495bSYour Name                       mpdu_hdr_len_override_val                               :  9,
111*5113495bSYour Name                       bar_ssn_offset                                          : 12;
112*5113495bSYour Name              uint32_t ht_control_field_bw320                                  : 32;
113*5113495bSYour Name              uint32_t fw2sw_info                                              : 32;
114*5113495bSYour Name #endif
115*5113495bSYour Name };
116*5113495bSYour Name 
117*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_OFFSET                                         0x0000000000000000
118*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_LSB                                            0
119*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_MSB                                            15
120*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_MASK                                           0x000000000000ffff
121*5113495bSYour Name 
122*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_OFFSET                                           0x0000000000000000
123*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_LSB                                              16
124*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_MSB                                              31
125*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_MASK                                             0x00000000ffff0000
126*5113495bSYour Name 
127*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_OFFSET                                        0x0000000000000000
128*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_LSB                                           32
129*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_MSB                                           32
130*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_MASK                                          0x0000000100000000
131*5113495bSYour Name 
132*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_OFFSET                         0x0000000000000000
133*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_LSB                            33
134*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_MSB                            33
135*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_MASK                           0x0000000200000000
136*5113495bSYour Name 
137*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_OFFSET                                       0x0000000000000000
138*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_LSB                                          34
139*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_MSB                                          40
140*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_MASK                                         0x000001fc00000000
141*5113495bSYour Name 
142*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_OFFSET                     0x0000000000000000
143*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_LSB                        41
144*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_MSB                        41
145*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_MASK                       0x0000020000000000
146*5113495bSYour Name 
147*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_OFFSET                                            0x0000000000000000
148*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_LSB                                               42
149*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_MSB                                               49
150*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_MASK                                              0x0003fc0000000000
151*5113495bSYour Name 
152*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_OFFSET                           0x0000000000000000
153*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_LSB                              50
154*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_MSB                              50
155*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_MASK                             0x0004000000000000
156*5113495bSYour Name 
157*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_OFFSET                                  0x0000000000000000
158*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_LSB                                     51
159*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_MSB                                     51
160*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_MASK                                    0x0008000000000000
161*5113495bSYour Name 
162*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_OFFSET                                  0x0000000000000000
163*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_LSB                                     52
164*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_MSB                                     52
165*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_MASK                                    0x0010000000000000
166*5113495bSYour Name 
167*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_OFFSET                       0x0000000000000000
168*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_LSB                          53
169*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_MSB                          53
170*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_MASK                         0x0020000000000000
171*5113495bSYour Name 
172*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_OFFSET                       0x0000000000000000
173*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_LSB                          54
174*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_MSB                          57
175*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_MASK                         0x03c0000000000000
176*5113495bSYour Name 
177*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_OFFSET                                       0x0000000000000000
178*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_LSB                                          58
179*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_MSB                                          63
180*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_MASK                                         0xfc00000000000000
181*5113495bSYour Name 
182*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_OFFSET                      0x0000000000000008
183*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_LSB                         0
184*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_MSB                         0
185*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_MASK                        0x0000000000000001
186*5113495bSYour Name 
187*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_OFFSET                                0x0000000000000008
188*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_LSB                                   1
189*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_MSB                                   5
190*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_MASK                                  0x000000000000003e
191*5113495bSYour Name 
192*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_OFFSET                             0x0000000000000008
193*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_LSB                                6
194*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_MSB                                6
195*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_MASK                               0x0000000000000040
196*5113495bSYour Name 
197*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_OFFSET                                       0x0000000000000008
198*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_LSB                                          7
199*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_MSB                                          11
200*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_MASK                                         0x0000000000000f80
201*5113495bSYour Name 
202*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_OFFSET                              0x0000000000000008
203*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_LSB                                 12
204*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_MSB                                 13
205*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_MASK                                0x0000000000003000
206*5113495bSYour Name 
207*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_OFFSET                                      0x0000000000000008
208*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_LSB                                         14
209*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_MSB                                         15
210*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_MASK                                        0x000000000000c000
211*5113495bSYour Name 
212*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_OFFSET                                     0x0000000000000008
213*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_LSB                                        16
214*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_MSB                                        31
215*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_MASK                                       0x00000000ffff0000
216*5113495bSYour Name 
217*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_OFFSET                                     0x0000000000000008
218*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_LSB                                        32
219*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_MSB                                        63
220*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_MASK                                       0xffffffff00000000
221*5113495bSYour Name 
222*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_OFFSET                                    0x0000000000000010
223*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_LSB                                       0
224*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_MSB                                       31
225*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_MASK                                      0x00000000ffffffff
226*5113495bSYour Name 
227*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_OFFSET                             0x0000000000000010
228*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_LSB                                32
229*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_MSB                                63
230*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_MASK                               0xffffffff00000000
231*5113495bSYour Name 
232*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_OFFSET                             0x0000000000000018
233*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_LSB                                0
234*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_MSB                                31
235*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_MASK                               0x00000000ffffffff
236*5113495bSYour Name 
237*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_OFFSET                             0x0000000000000018
238*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_LSB                                32
239*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_MSB                                63
240*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_MASK                               0xffffffff00000000
241*5113495bSYour Name 
242*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_OFFSET                            0x0000000000000020
243*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_LSB                               0
244*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_MSB                               31
245*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_MASK                              0x00000000ffffffff
246*5113495bSYour Name 
247*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_OFFSET                         0x0000000000000020
248*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_LSB                            32
249*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_MSB                            63
250*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_MASK                           0xffffffff00000000
251*5113495bSYour Name 
252*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_OFFSET                                  0x0000000000000028
253*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_LSB                                     0
254*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_MSB                                     7
255*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_MASK                                    0x00000000000000ff
256*5113495bSYour Name 
257*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_OFFSET                                        0x0000000000000028
258*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_LSB                                           8
259*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_MSB                                           12
260*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_MASK                                          0x0000000000001f00
261*5113495bSYour Name 
262*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_OFFSET                              0x0000000000000028
263*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_LSB                                 13
264*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_MSB                                 13
265*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_MASK                                0x0000000000002000
266*5113495bSYour Name 
267*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_OFFSET                                      0x0000000000000028
268*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_LSB                                         14
269*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_MSB                                         15
270*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_MASK                                        0x000000000000c000
271*5113495bSYour Name 
272*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_OFFSET               0x0000000000000028
273*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_LSB                  16
274*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_MSB                  19
275*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_MASK                 0x00000000000f0000
276*5113495bSYour Name 
277*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_OFFSET              0x0000000000000028
278*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_LSB                 20
279*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_MSB                 23
280*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_MASK                0x0000000000f00000
281*5113495bSYour Name 
282*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_OFFSET                                      0x0000000000000028
283*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_LSB                                         24
284*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_MSB                                         29
285*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_MASK                                        0x000000003f000000
286*5113495bSYour Name 
287*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_OFFSET                          0x0000000000000028
288*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_LSB                             30
289*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_MSB                             30
290*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_MASK                            0x0000000040000000
291*5113495bSYour Name 
292*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_OFFSET                          0x0000000000000028
293*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_LSB                             31
294*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_MSB                             31
295*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_MASK                            0x0000000080000000
296*5113495bSYour Name 
297*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_OFFSET                                    0x0000000000000028
298*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_LSB                                       32
299*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_MSB                                       43
300*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_MASK                                      0x00000fff00000000
301*5113495bSYour Name 
302*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_OFFSET                         0x0000000000000028
303*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_LSB                            44
304*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_MSB                            52
305*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_MASK                           0x001ff00000000000
306*5113495bSYour Name 
307*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_OFFSET                                      0x0000000000000028
308*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_LSB                                         53
309*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_MSB                                         63
310*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_MASK                                        0xffe0000000000000
311*5113495bSYour Name 
312*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_OFFSET                            0x0000000000000030
313*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_LSB                               0
314*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_MSB                               31
315*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_MASK                              0x00000000ffffffff
316*5113495bSYour Name 
317*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_OFFSET                                        0x0000000000000030
318*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_LSB                                           32
319*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_MSB                                           63
320*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_MASK                                          0xffffffff00000000
321*5113495bSYour Name 
322*5113495bSYour Name #endif
323