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 _TX_QUEUE_EXTENSION_H_ 27*5113495bSYour Name #define _TX_QUEUE_EXTENSION_H_ 28*5113495bSYour Name #if !defined(__ASSEMBLER__) 29*5113495bSYour Name #endif 30*5113495bSYour Name 31*5113495bSYour Name #define NUM_OF_DWORDS_TX_QUEUE_EXTENSION 14 32*5113495bSYour Name 33*5113495bSYour Name #define NUM_OF_QWORDS_TX_QUEUE_EXTENSION 7 34*5113495bSYour Name 35*5113495bSYour Name 36*5113495bSYour Name struct tx_queue_extension { 37*5113495bSYour Name #ifndef WIFI_BIT_ORDER_BIG_ENDIAN 38*5113495bSYour Name uint32_t frame_ctl : 16, 39*5113495bSYour Name qos_ctl : 16; 40*5113495bSYour Name uint32_t ampdu_flag : 1, 41*5113495bSYour Name tx_notify_no_htc_override : 1, 42*5113495bSYour Name reserved_1a : 7, 43*5113495bSYour Name checksum_tso_disable_for_frag : 1, 44*5113495bSYour Name key_id : 8, 45*5113495bSYour Name qos_buf_state_overwrite : 1, 46*5113495bSYour Name buf_state_sta_id : 1, 47*5113495bSYour Name buf_state_source : 1, 48*5113495bSYour Name ht_control_overwrite_enable : 1, 49*5113495bSYour Name ht_control_overwrite_source : 4, 50*5113495bSYour Name reserved_1b : 6; 51*5113495bSYour Name uint32_t ul_headroom_insertion_enable : 1, 52*5113495bSYour Name ul_headroom_offset : 5, 53*5113495bSYour Name bqrp_insertion_enable : 1, 54*5113495bSYour Name bqrp_offset : 5, 55*5113495bSYour Name ul_headroom_rsvd_7_6 : 2, 56*5113495bSYour Name bqr_rsvd_9_8 : 2, 57*5113495bSYour Name base_pn_63_48 : 16; 58*5113495bSYour Name uint32_t base_pn_95_64 : 32; 59*5113495bSYour Name uint32_t base_pn_127_96 : 32; 60*5113495bSYour Name uint32_t ht_control_field_bw20 : 32; 61*5113495bSYour Name uint32_t ht_control_field_bw40 : 32; 62*5113495bSYour Name uint32_t ht_control_field_bw80 : 32; 63*5113495bSYour Name uint32_t ht_control_field_bw160 : 32; 64*5113495bSYour Name uint32_t ht_control_overwrite_mask : 32; 65*5113495bSYour Name uint32_t cas_control_info : 8, 66*5113495bSYour Name cas_offset : 5, 67*5113495bSYour Name cas_insertion_enable : 1, 68*5113495bSYour Name reserved_10a : 2, 69*5113495bSYour Name ht_control_overwrite_source_for_srp : 4, 70*5113495bSYour Name ht_control_overwrite_source_for_bsrp : 4, 71*5113495bSYour Name reserved_10b : 6, 72*5113495bSYour Name mpdu_hdr_len_override_en : 1, 73*5113495bSYour Name bar_ssn_overwrite_enable : 1; 74*5113495bSYour Name uint32_t bar_ssn_offset : 12, 75*5113495bSYour Name mpdu_hdr_len_override_val : 9, 76*5113495bSYour Name reserved_11a : 11; 77*5113495bSYour Name uint32_t ht_control_field_bw320 : 32; 78*5113495bSYour Name uint32_t fw2sw_info : 32; 79*5113495bSYour Name #else 80*5113495bSYour Name uint32_t qos_ctl : 16, 81*5113495bSYour Name frame_ctl : 16; 82*5113495bSYour Name uint32_t reserved_1b : 6, 83*5113495bSYour Name ht_control_overwrite_source : 4, 84*5113495bSYour Name ht_control_overwrite_enable : 1, 85*5113495bSYour Name buf_state_source : 1, 86*5113495bSYour Name buf_state_sta_id : 1, 87*5113495bSYour Name qos_buf_state_overwrite : 1, 88*5113495bSYour Name key_id : 8, 89*5113495bSYour Name checksum_tso_disable_for_frag : 1, 90*5113495bSYour Name reserved_1a : 7, 91*5113495bSYour Name tx_notify_no_htc_override : 1, 92*5113495bSYour Name ampdu_flag : 1; 93*5113495bSYour Name uint32_t base_pn_63_48 : 16, 94*5113495bSYour Name bqr_rsvd_9_8 : 2, 95*5113495bSYour Name ul_headroom_rsvd_7_6 : 2, 96*5113495bSYour Name bqrp_offset : 5, 97*5113495bSYour Name bqrp_insertion_enable : 1, 98*5113495bSYour Name ul_headroom_offset : 5, 99*5113495bSYour Name ul_headroom_insertion_enable : 1; 100*5113495bSYour Name uint32_t base_pn_95_64 : 32; 101*5113495bSYour Name uint32_t base_pn_127_96 : 32; 102*5113495bSYour Name uint32_t ht_control_field_bw20 : 32; 103*5113495bSYour Name uint32_t ht_control_field_bw40 : 32; 104*5113495bSYour Name uint32_t ht_control_field_bw80 : 32; 105*5113495bSYour Name uint32_t ht_control_field_bw160 : 32; 106*5113495bSYour Name uint32_t ht_control_overwrite_mask : 32; 107*5113495bSYour Name uint32_t bar_ssn_overwrite_enable : 1, 108*5113495bSYour Name mpdu_hdr_len_override_en : 1, 109*5113495bSYour Name reserved_10b : 6, 110*5113495bSYour Name ht_control_overwrite_source_for_bsrp : 4, 111*5113495bSYour Name ht_control_overwrite_source_for_srp : 4, 112*5113495bSYour Name reserved_10a : 2, 113*5113495bSYour Name cas_insertion_enable : 1, 114*5113495bSYour Name cas_offset : 5, 115*5113495bSYour Name cas_control_info : 8; 116*5113495bSYour Name uint32_t reserved_11a : 11, 117*5113495bSYour Name mpdu_hdr_len_override_val : 9, 118*5113495bSYour Name bar_ssn_offset : 12; 119*5113495bSYour Name uint32_t ht_control_field_bw320 : 32; 120*5113495bSYour Name uint32_t fw2sw_info : 32; 121*5113495bSYour Name #endif 122*5113495bSYour Name }; 123*5113495bSYour Name 124*5113495bSYour Name 125*5113495bSYour Name 126*5113495bSYour Name 127*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_OFFSET 0x0000000000000000 128*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_LSB 0 129*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_MSB 15 130*5113495bSYour Name #define TX_QUEUE_EXTENSION_FRAME_CTL_MASK 0x000000000000ffff 131*5113495bSYour Name 132*5113495bSYour Name 133*5113495bSYour Name 134*5113495bSYour Name 135*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_OFFSET 0x0000000000000000 136*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_LSB 16 137*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_MSB 31 138*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_CTL_MASK 0x00000000ffff0000 139*5113495bSYour Name 140*5113495bSYour Name 141*5113495bSYour Name 142*5113495bSYour Name 143*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_OFFSET 0x0000000000000000 144*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_LSB 32 145*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_MSB 32 146*5113495bSYour Name #define TX_QUEUE_EXTENSION_AMPDU_FLAG_MASK 0x0000000100000000 147*5113495bSYour Name 148*5113495bSYour Name 149*5113495bSYour Name 150*5113495bSYour Name 151*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_OFFSET 0x0000000000000000 152*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_LSB 33 153*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_MSB 33 154*5113495bSYour Name #define TX_QUEUE_EXTENSION_TX_NOTIFY_NO_HTC_OVERRIDE_MASK 0x0000000200000000 155*5113495bSYour Name 156*5113495bSYour Name 157*5113495bSYour Name 158*5113495bSYour Name 159*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_OFFSET 0x0000000000000000 160*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_LSB 34 161*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_MSB 40 162*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1A_MASK 0x000001fc00000000 163*5113495bSYour Name 164*5113495bSYour Name 165*5113495bSYour Name 166*5113495bSYour Name 167*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_OFFSET 0x0000000000000000 168*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_LSB 41 169*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_MSB 41 170*5113495bSYour Name #define TX_QUEUE_EXTENSION_CHECKSUM_TSO_DISABLE_FOR_FRAG_MASK 0x0000020000000000 171*5113495bSYour Name 172*5113495bSYour Name 173*5113495bSYour Name 174*5113495bSYour Name 175*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_OFFSET 0x0000000000000000 176*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_LSB 42 177*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_MSB 49 178*5113495bSYour Name #define TX_QUEUE_EXTENSION_KEY_ID_MASK 0x0003fc0000000000 179*5113495bSYour Name 180*5113495bSYour Name 181*5113495bSYour Name 182*5113495bSYour Name 183*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_OFFSET 0x0000000000000000 184*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_LSB 50 185*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_MSB 50 186*5113495bSYour Name #define TX_QUEUE_EXTENSION_QOS_BUF_STATE_OVERWRITE_MASK 0x0004000000000000 187*5113495bSYour Name 188*5113495bSYour Name 189*5113495bSYour Name 190*5113495bSYour Name 191*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_OFFSET 0x0000000000000000 192*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_LSB 51 193*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_MSB 51 194*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_STA_ID_MASK 0x0008000000000000 195*5113495bSYour Name 196*5113495bSYour Name 197*5113495bSYour Name 198*5113495bSYour Name 199*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_OFFSET 0x0000000000000000 200*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_LSB 52 201*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_MSB 52 202*5113495bSYour Name #define TX_QUEUE_EXTENSION_BUF_STATE_SOURCE_MASK 0x0010000000000000 203*5113495bSYour Name 204*5113495bSYour Name 205*5113495bSYour Name 206*5113495bSYour Name 207*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_OFFSET 0x0000000000000000 208*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_LSB 53 209*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_MSB 53 210*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_ENABLE_MASK 0x0020000000000000 211*5113495bSYour Name 212*5113495bSYour Name 213*5113495bSYour Name 214*5113495bSYour Name 215*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_OFFSET 0x0000000000000000 216*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_LSB 54 217*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_MSB 57 218*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_MASK 0x03c0000000000000 219*5113495bSYour Name 220*5113495bSYour Name 221*5113495bSYour Name 222*5113495bSYour Name 223*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_OFFSET 0x0000000000000000 224*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_LSB 58 225*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_MSB 63 226*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_1B_MASK 0xfc00000000000000 227*5113495bSYour Name 228*5113495bSYour Name 229*5113495bSYour Name 230*5113495bSYour Name 231*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_OFFSET 0x0000000000000008 232*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_LSB 0 233*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_MSB 0 234*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_INSERTION_ENABLE_MASK 0x0000000000000001 235*5113495bSYour Name 236*5113495bSYour Name 237*5113495bSYour Name 238*5113495bSYour Name 239*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_OFFSET 0x0000000000000008 240*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_LSB 1 241*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_MSB 5 242*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_OFFSET_MASK 0x000000000000003e 243*5113495bSYour Name 244*5113495bSYour Name 245*5113495bSYour Name 246*5113495bSYour Name 247*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_OFFSET 0x0000000000000008 248*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_LSB 6 249*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_MSB 6 250*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_INSERTION_ENABLE_MASK 0x0000000000000040 251*5113495bSYour Name 252*5113495bSYour Name 253*5113495bSYour Name 254*5113495bSYour Name 255*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_OFFSET 0x0000000000000008 256*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_LSB 7 257*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_MSB 11 258*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQRP_OFFSET_MASK 0x0000000000000f80 259*5113495bSYour Name 260*5113495bSYour Name 261*5113495bSYour Name 262*5113495bSYour Name 263*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_OFFSET 0x0000000000000008 264*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_LSB 12 265*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_MSB 13 266*5113495bSYour Name #define TX_QUEUE_EXTENSION_UL_HEADROOM_RSVD_7_6_MASK 0x0000000000003000 267*5113495bSYour Name 268*5113495bSYour Name 269*5113495bSYour Name 270*5113495bSYour Name 271*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_OFFSET 0x0000000000000008 272*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_LSB 14 273*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_MSB 15 274*5113495bSYour Name #define TX_QUEUE_EXTENSION_BQR_RSVD_9_8_MASK 0x000000000000c000 275*5113495bSYour Name 276*5113495bSYour Name 277*5113495bSYour Name 278*5113495bSYour Name 279*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_OFFSET 0x0000000000000008 280*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_LSB 16 281*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_MSB 31 282*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_63_48_MASK 0x00000000ffff0000 283*5113495bSYour Name 284*5113495bSYour Name 285*5113495bSYour Name 286*5113495bSYour Name 287*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_OFFSET 0x0000000000000008 288*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_LSB 32 289*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_MSB 63 290*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_95_64_MASK 0xffffffff00000000 291*5113495bSYour Name 292*5113495bSYour Name 293*5113495bSYour Name 294*5113495bSYour Name 295*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_OFFSET 0x0000000000000010 296*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_LSB 0 297*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_MSB 31 298*5113495bSYour Name #define TX_QUEUE_EXTENSION_BASE_PN_127_96_MASK 0x00000000ffffffff 299*5113495bSYour Name 300*5113495bSYour Name 301*5113495bSYour Name 302*5113495bSYour Name 303*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_OFFSET 0x0000000000000010 304*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_LSB 32 305*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_MSB 63 306*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW20_MASK 0xffffffff00000000 307*5113495bSYour Name 308*5113495bSYour Name 309*5113495bSYour Name 310*5113495bSYour Name 311*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_OFFSET 0x0000000000000018 312*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_LSB 0 313*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_MSB 31 314*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW40_MASK 0x00000000ffffffff 315*5113495bSYour Name 316*5113495bSYour Name 317*5113495bSYour Name 318*5113495bSYour Name 319*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_OFFSET 0x0000000000000018 320*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_LSB 32 321*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_MSB 63 322*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW80_MASK 0xffffffff00000000 323*5113495bSYour Name 324*5113495bSYour Name 325*5113495bSYour Name 326*5113495bSYour Name 327*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_OFFSET 0x0000000000000020 328*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_LSB 0 329*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_MSB 31 330*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW160_MASK 0x00000000ffffffff 331*5113495bSYour Name 332*5113495bSYour Name 333*5113495bSYour Name 334*5113495bSYour Name 335*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_OFFSET 0x0000000000000020 336*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_LSB 32 337*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_MSB 63 338*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_MASK_MASK 0xffffffff00000000 339*5113495bSYour Name 340*5113495bSYour Name 341*5113495bSYour Name 342*5113495bSYour Name 343*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_OFFSET 0x0000000000000028 344*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_LSB 0 345*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_MSB 7 346*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_CONTROL_INFO_MASK 0x00000000000000ff 347*5113495bSYour Name 348*5113495bSYour Name 349*5113495bSYour Name 350*5113495bSYour Name 351*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_OFFSET 0x0000000000000028 352*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_LSB 8 353*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_MSB 12 354*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_OFFSET_MASK 0x0000000000001f00 355*5113495bSYour Name 356*5113495bSYour Name 357*5113495bSYour Name 358*5113495bSYour Name 359*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_OFFSET 0x0000000000000028 360*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_LSB 13 361*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_MSB 13 362*5113495bSYour Name #define TX_QUEUE_EXTENSION_CAS_INSERTION_ENABLE_MASK 0x0000000000002000 363*5113495bSYour Name 364*5113495bSYour Name 365*5113495bSYour Name 366*5113495bSYour Name 367*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_OFFSET 0x0000000000000028 368*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_LSB 14 369*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_MSB 15 370*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10A_MASK 0x000000000000c000 371*5113495bSYour Name 372*5113495bSYour Name 373*5113495bSYour Name 374*5113495bSYour Name 375*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_OFFSET 0x0000000000000028 376*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_LSB 16 377*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_MSB 19 378*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_SRP_MASK 0x00000000000f0000 379*5113495bSYour Name 380*5113495bSYour Name 381*5113495bSYour Name 382*5113495bSYour Name 383*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_OFFSET 0x0000000000000028 384*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_LSB 20 385*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_MSB 23 386*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_OVERWRITE_SOURCE_FOR_BSRP_MASK 0x0000000000f00000 387*5113495bSYour Name 388*5113495bSYour Name 389*5113495bSYour Name 390*5113495bSYour Name 391*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_OFFSET 0x0000000000000028 392*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_LSB 24 393*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_MSB 29 394*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_10B_MASK 0x000000003f000000 395*5113495bSYour Name 396*5113495bSYour Name 397*5113495bSYour Name 398*5113495bSYour Name 399*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_OFFSET 0x0000000000000028 400*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_LSB 30 401*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_MSB 30 402*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_EN_MASK 0x0000000040000000 403*5113495bSYour Name 404*5113495bSYour Name 405*5113495bSYour Name 406*5113495bSYour Name 407*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_OFFSET 0x0000000000000028 408*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_LSB 31 409*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_MSB 31 410*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OVERWRITE_ENABLE_MASK 0x0000000080000000 411*5113495bSYour Name 412*5113495bSYour Name 413*5113495bSYour Name 414*5113495bSYour Name 415*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_OFFSET 0x0000000000000028 416*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_LSB 32 417*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_MSB 43 418*5113495bSYour Name #define TX_QUEUE_EXTENSION_BAR_SSN_OFFSET_MASK 0x00000fff00000000 419*5113495bSYour Name 420*5113495bSYour Name 421*5113495bSYour Name 422*5113495bSYour Name 423*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_OFFSET 0x0000000000000028 424*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_LSB 44 425*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_MSB 52 426*5113495bSYour Name #define TX_QUEUE_EXTENSION_MPDU_HDR_LEN_OVERRIDE_VAL_MASK 0x001ff00000000000 427*5113495bSYour Name 428*5113495bSYour Name 429*5113495bSYour Name 430*5113495bSYour Name 431*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_OFFSET 0x0000000000000028 432*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_LSB 53 433*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_MSB 63 434*5113495bSYour Name #define TX_QUEUE_EXTENSION_RESERVED_11A_MASK 0xffe0000000000000 435*5113495bSYour Name 436*5113495bSYour Name 437*5113495bSYour Name 438*5113495bSYour Name 439*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_OFFSET 0x0000000000000030 440*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_LSB 0 441*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_MSB 31 442*5113495bSYour Name #define TX_QUEUE_EXTENSION_HT_CONTROL_FIELD_BW320_MASK 0x00000000ffffffff 443*5113495bSYour Name 444*5113495bSYour Name 445*5113495bSYour Name 446*5113495bSYour Name 447*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_OFFSET 0x0000000000000030 448*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_LSB 32 449*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_MSB 63 450*5113495bSYour Name #define TX_QUEUE_EXTENSION_FW2SW_INFO_MASK 0xffffffff00000000 451*5113495bSYour Name 452*5113495bSYour Name 453*5113495bSYour Name 454*5113495bSYour Name #endif 455