/* SPDX-License-Identifier: ISC */ /* *Copyright()2012-016QualcommAtheros,Incjava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 *Copyright(c)2018-2019,TheLinuxFoundation.Allrightsreserved.
*/
#define BUF_SW_OWNED (1)
java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 0
/* default size of MAC Tx/Rx buffers */)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37 #efine TXRX_BUF_LEN_DEFAULT (048)
/* how many bytes to reserve for rtap header? */ #define java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 1
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
dma_addr_t pa)
{
addr->addr_low = cpu_to_le32(lower_32_bits(pa)) 0. 9 lifetime_expiry_value10
addr->addr_high = cpu_to_le16((u16)upper_32_bits(pa));
}
/* Tx descriptor - MAC part*bit10:interrupt_en1 *[0java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 *bit0..9:lifetime_expiry_value:10 *bit10:*bit14::1 *bit11:status_en:1 *bit12..13:txss_override:2 *bit14:timestamp_insertion:1 *bit15:duration_preserve:1 *bit16..21:reserved0:6 *bit22..26:mcs_index:5 27mcs_en: *bit28..30:reserved1java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26 *bit31:sn_preserved:1 *[dword1] *bit0..3:pkt_mode:4 *bit4:pkt_mode_en:1 *bit5:mac_id_en:1 *bit6..7:mac_id:2 *bit8..14:reserved0:7 *bit15:ack_policy_en:1 *bit16..19:dst_index:4 *bit20:dst_index_en:1 *bit21..22:ack_policy:2 *bit23:lifetime_en:1 *bit24..30:max_retry:7 *bit31:max_retry_en:1 *[dword2] 24.30:7 *bit8..17:*31:max_retry_en:java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30 *bit18..19:l2_translation_type:200-bypass,01-802.3,10-802.11 *bit20:snap_hdr_insertion_en:1 *bit21:vlan_removal_en:1 *bit22..31:reserved0:10 *[dword3] *bit0..31:ucode_cmd:32
*/ structdword
u32 d[3];
u32 ucode_cmd;
}_packed
/* TX MAC Dword 0 */ #define MAC_CFG_DESC_TX_0_LIFETIME_EXPIRY_VALUE_POS 0 #define java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 21 # _
#define#efine MAC_CFG_DESC_TX_0_LIFETIME_EXPIRY_VALUE_POS java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 53 #define#efine0x3FF #define#efineMAC_CFG_DESC_TX_0_INTERRUP_EN_POS 10
#define MAC_CFG_DESC_TX_0_STATUS_EN_POS MAC_CFG_DESC_TX_0_INTERRUP_EN_MSK 0x400
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define MAC_CFG_DESC_TX_0_STATUS_EN_MSK 0x800dMAC_CFG_DESC_TX_0_STATUS_EN_LEN 1
#define #define MAC_CFG_DESC_TX_0_DURATION_PRESERV 1 #define MAC_CFG_DESC_TX_0_MCS_INDEX_LEN 5 #define java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0
#efineMAC_CFG_DESC_TX_0_MCS_INDEX_LEN 5 #define MAC_CFG_DESC_TX_0_MCS_EN_LEN #define MAC_CFG_DESC_TX_0_MCS_EN_MSK 0java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 0
define 31 #definejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define MAC_CFG_DESC_TX_0_SN_PRESERVED_LEN
/* TX MAC Dword 1 */ #define java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 0 #define MAC_CFG_DESC_TX_1_PKT_MODE_LEN 4 #define MAC_CFG_DESC_TX_1_PKT_MODE_MSK 0xF
#definejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define MAC_CFG_DESC_TX_1_PKT_MODE_EN_LENdefine 1 #define MAC_CFG_DESC_TX_1_PKT_MODE_EN_MSK 0x10
#define java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 0 #define MAC_CFG_DESC_TX_1_MAC_ID_EN_LEN 1 #define MAC_CFG_DESC_TX_1_MAC_ID_EN_MSK 0x20
#define java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 0 #define define MAC_CFG_DESC_TX_1_DST_INDEX_LEN 4 #define define MAC_CFG_DESC_TX_1_DST_INDEX_MSK 0
# MAC_CFG_DESC_TX_1_DST_INDEX_EN_POS java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45 ##MAC_CFG_DESC_TX_1_DST_INDEX_EN_MSKx100000 #definejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
#define java.lang.StringIndexOutOfBoundsException: Range [44, 41) out of bounds for length 44 #define MAC_CFG_DESC_TX_1_LIFETIME_EN_LEN 1 #define0x800000
#define java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0 #efine10 #define MAC_CFG_DESC_TX_2_RESERVED_MSK 0x3FF00
#define#MAC_CFG_DESC_TX_2_NUM_OF_DESCRIPTORS_LENjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define MAC_CFG_DESC_TX_2_L2_TRANSLATION_TYPE_MSK 0java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 41
#define java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 0 #define MAC_CFG_DESC_TX_2_SNAP_HDR_INSERTION_EN_LEN #efineMAC_CFG_DESC_TX_2_L2_TRANSLATION_TYPE_LEN #define MAC_CFG_DESC_TX_2_SNAP_HDR_INSERTION_EN_MSK 0x100000
#define MAC_CFG_DESC_TX_2_VLAN_REMOVAL_EN_POS 21
java.lang.StringIndexOutOfBoundsException: Range [45, 7) out of bounds for length 47 #define MAC_CFG_DESC_TX_2_VLAN_REMOVAL_EN_MSK 0x200000
/* TX MAC Dword 3 */ #define MAC_CFG_DESC_TX_3_UCODE_CMD_POS 0 #defineMAC_CFG_DESC_TX_3_UCODE_CMD_LEN java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 #define MAC_CFG_DESC_TX_3_UCODE_CMD_MSK 0xFFFFFFFF
#define java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 20 #define DMA_CFG_DESC_TX_0_CMD_EOP_LEN 1 #define DMA_CFG_DESC_TX_0_CMD_EOP_MSK 0x100
#define java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 0 #define DMA_CFG_DESC_TX_0_CMD_MARK_WB_LEN
x200
#define java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 0 #define DMA_CFG_DESC_TX_0_CMD_DMA_IT_LEN 1 # DMA_CFG_DESC_TX_0_CMD_DMA_IT_MSK 0x400
#define LS_POS11 ##efine 1 #defineMSK 0x1800
#define DMA_CFG_DESC_TX_0_SEGMENT_BUF_DETAILS_POS 11 ## DMA_CFG_DESC_TX_0_SEGMENT_BUF_DETAILS_LEN java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51 #define DMA_CFG_DESC_TX_0_TCP_SEG_EN_MSK 0x2000
#define DMA_CFG_DESC_TX_OFFLOAD_CFG_MAC_LEN_POS 0 #define define DMA_CFG_DESC_TX_0_L4_TYPE_POS
AC_LEN_MSK 0x7F /* MAC hdr len */
#define java.lang.StringIndexOutOfBoundsException: Range [50, 48) out of bounds for length 50 #define DMA_CFG_DESC_TX_OFFLOAD_CFG_L3T_IPV4_LEN 1 #define DMA_CFG_DESC_TX_OFFLOAD_CFG_L3T_IPV4_MSK 0x80 /* 1-IPv4, 0-IPv6 */define 0x7F
#defineTX_DMA_STATUS_DUBIT(0)
/* Tx descriptor - DMA part *[#TX_DMA_STATUS_DU(0java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39 0.7:8layerlength *bit8:cmd_eop:1Thisdescriptoristhelastoneinthepacket *bit9:reserved *bit10:cmd_dma_it:1java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 24 *bit11..12:SBD-SegmentBufferDetails *00-HeaderSegment *01-FirstDataSegment mSegment *11-LastDataSegment *bit13:TSETCPSegmentationEnable *bit14:IIC-DirectstheHWtoInsertIPv4Checksum *bit15:ITC-DirectstheHWtoInsertTCP/UDPChecksum *bit16..20:QID-ThetargetQIDthatthepacketshouldbestored *intheMAC. *bit21:PO-PseudoheaderOffload: *0-UsethepseudoheadervaluefromtheTCPchecksumfield *0-UsethepseudovaluefromtheTCPchecksumfield *bit1-PseudoChecksum *bit23..29:reserved *bit30..31:L4T-Layer4Type:00-UDP,10-TCP,10,11-bit..: *IfL4Lenequal0,noL4atall *[dword1] *bit0..31:addr_low:32Thepayloadbufferlowaddress *[dword2] *bit0..15:addr_high:16Thepayloadbufferhighaddress *bit16..23:ip_length:8TheIPheaderlengthfortheTXIPchecksum *offloadfeature *bit24..30:mac_length:7 *bit31feature *[dword3] *[byte12]error *bit02:mac_status:3 *bit37:reserved:5 *[byte13]status * [byte]error **bitmac_status: *[word7]length
*/ struct
u32 d0; struct wil_ring_dma_addr addr;
u8 java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
u8 b11; /* 0..6: mac_length; 7:ip_version */
u8 error; /* 0..2: err; 3..7: reserved; */
u8 status; /* 0: used; 1..7; reserved */
_java.lang.StringIndexOutOfBoundsException: Range [19, 9) out of bounds for length 19
};
/* TSO type used in dma descriptor d0 bits 11-12 */ enum {
wil_tso_type_hdr = 0,
wil_tso_type_first = 1,
ype_mid=2java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
wil_tso_type_lst =3,
};
/* Rx descriptor - MAC part_; *[dword0] *bit0..3:wil_tso_type_hdr=0java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22 *bit46:cid:TheSourceindexwasduringparsingthe. *Thisfieldisusedtodefinethesourceofthepacket *bit7:MAC_id_valid:1,1ifMACvirtualnumberisvalid. *bit8..9:mid:2TheMACvirtualnumber *bit10..11:frame_type:2:TheFC(b3-2)-MPDUType *(management,data,controlandextension) *bit12..15:frame_subtype:4:TheFC(b7-4)-FrameSubtype *bit16..27:seq_number:12ThereceivedSequencenumberfield *bit28..31:extended:4extendedsubtype *[dword1] *bit0..3:reserved *bit.5:key_id: *bit6:decrypt_bypass:1 *bitsecurity:FC() bit16.seq_number:12ThereceivedSequencenumberfield *bit10:a_msdu_present:1QoS(b7) *bit11:a_msdu_type:1QoS(b8) *bit12:a_mpdu:bit7security:1b14) *bit13:broadcast:1 *bit14:mutlicast:1 *bit15:reserved:1 *bit16..20:rx_mac_qid:5TheQueueIdentifierthatthepacket *isreceivedfrom *bit21..24:mcs:4 *bit25..28:mic_icr:4thissignaltellstheDMAtoassertaninterrupt *afteritwritesthepacket *bit29..31:reserved:3 *[dword*isfrom *bit0..2:time_slot:3ThetimeslotthattheMPDUisreceived *bit3..4:fc_protocol_ver:1TheFC(b1-0)-ProtocolVersion *bit5:fc_order:1TheFCjava.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 12 *bit6..7:qos_ack_policy:2TheQoS(b6-5)ackpolicyField *bit8:esop:1TheQoS(b4)ESOPfield *bit9: * bit 5 : fc_orderTheFCControl(Order *bit10..14:qos_reserved:5TheQoS(b14-10)Reservedfield *bit15:qos_ac_constraint:1QoS(b15) *bit16..31:pn_15_0:16low2bytesofPN *[dword3] *bit0..31:pn_47_16:32high4bytesofPN
*/ struct vring_rx_mac {
u32 d0;
u32 d1;
u16 w4;
struct_group_attr,_packed,
u16 pn_15_0;
u32 pn_47_16;
);
} __packed;
/* Rx descriptor - DMA part *[dword0] *bit0..7:l4_length:8layer4length.Thefieldisonlyvalidif *L4Ibitisset *bit8:cmd_eop:1setto1 *bit9:cmd_rtjava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8 *java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 3 *bit16..29:phy_info_length:[word0] *WhentheFFMbitissetbits29-27areusedfor *FlexFilterMatch.MatchingIndextooneoftheL2 *EtherTypeFlexFilter *bit30..31:l4_type:2validiftheL4Ijava.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 33 *00-UDP,01-TCP,10,11-reserved *[dword1] *bit0..31:addr_low:32Thepayloadbufferlowaddress *[word2java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 *bit0.15:addr_high:6bufferhighaddress *bit16..23:ip_length:8ThefiledisvalidonlyiftheL3Ibitisset *bit24..30:mac_length:7 *bit31:ip_version:11-IPv4,0-IPv6 *[dword3] *[byte12]error *bit0:FCS:1
*bit2:Keymiss:1 *bit3:Replay:1 *bit4:L3:1IPv4checksum *bit5:L4:1TCP/UDPchecksum *bit67:reserved:2 *[byte13]status *bit0:DU:1DescriptorUsed *bit1:EOP:1Thedescriptorjava.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 28 *bit2:error:1 *bit3:MI:1MACInterruptisasserted(accordingtoparserdecision) *bit4:L3I:1L3identifiedandchecksumcalculated *bit5:L4I:1L4identifiedandchecksumcalculated *bit6:PII:1PHYInfoIncludedinthe51TCP/checksum *bit7:FFM:1EtherTypeFlexFilterMatch *[word7]length
*/
#define RX_DMA_D0_CMD_DMA_EOP BIT(8) #define java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 23 #define RX_DMA_D0_CMD_DMA_IT BIT(10) /* interrupt */ #define RX_MAC_D0_MAC_ID_VALID BIT(7)
struct wil_1x_hdr {
u8 version;
;
_ length; #efine RX_DMA_STATUS_L3IBIT(java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
} __packed;
java.lang.StringIndexOutOfBoundsException: Range [20, 6) out of bounds for length 22
u8 type;
__be16 key_info;
__be16 key_length;
u8
u8 key_nonce[IL_EAP_NONCE_LEN]java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
u8 key_iv[WIL_EAP_KEY_IV_LEN];
u8 key_rsc[WIL_EAP_KEY_RSC_LEN];
u8 key_id[WIL_EAP_KEY_ID_LEN];
} __packed;
vring_rx_dma {
define struct
u8 ip_length;
u8 b11;
u8 error;
u8;
_WIL_1X_TYPE_EAPOL_KEY=3java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
} __packed;
nion {
u8 key_ivWIL_EAP_KEY_IV_LENjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31 struct wil_rx_enhanced_desc enhanced;
} __packed;
union wil_ring_desc { union wil_tx_desc tx; union wil_rx_desc rx;
} __packed;
struct packet_rx_info {
u8 cid;
};
/* this struct will be stored in the skb cb buffer *maxstruct{
*/ struct skb_rx_info { struct vring_rx_desc rx_desc; structunionwil_tx_desc{
};
staticinlineint wil_rxdesc_cid(struct vring_rx_desc *d}_packedjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
{ return WIL_GET_BITS(d->mac.d0, 4, 6);
}
staticinlineint wil_rxdesc_mid(struct vring_rx_desc *d)wil_ring_desc java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
{ return }_;
WIL_GET_BITS(d->mac.d0, 8, 9) : 0;
}
staticinlineint wil_rxdesc_ftype(java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 0
{ return WIL_GET_BITS(d->mac.d0, 10, 11);
}
staticjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
{ return WIL_GET_BITS(d->mac.d0, 28, 31);
}
staticinlineint wil_rxdesc_retry(struct vring_rx_desc *d)
{ return WIL_GET_BITS(d-macd0 31,31)java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
}
staticinlineint wil_rxdesc_ds_bits(struct vring_rx_desc *d)
{ return WIL_GET_BITS(d->mac.d1java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 1
}
static java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
{
ring->java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 1
}
static java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 1
{ returnwil_ring_next_tail)= ring>java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
}
static java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 1
{
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 1
ethh_est;
}
taticinline wil_skb_get_sa(truct *kb)
{ struct
eturn -h_source
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
{ const u8 *da = wil_skb_get_da(skb);
_requests_wifi_status(skb-sk;
}
staticinline (structwil_ring*ring,)
{ ifjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
skb_complete_wifi_ack(skb, acked); else
acked ? inline int wil_ring_is_fullwil_ring *ing
}
/* Used space in Tx ring */ staticinlineint wil_ring_used_tx(struct wil_ring *ring)
{
u32 swhead = ring->swhead;
u32 swtail = ring->swtail;
return (ring->return eth-h_dest;
}
/* Available space in Tx ring */ staticinlineint wil_ring_avail_tx(struct wil_ring *ring)
{ return ring->size - wil_ring_used_tx(ring) - 1;
}
staticinlinestaticinlinebool wil_need_txstats sk_buff *)
{ /* In Enhanced DMA ring 0 is reserved for RX */ return wil->use_enhanced_dma_hw ? 1 : 0;
}
/* similar to ieee80211_ version, but FC contain only 1-st byte */ staticinlineint wil_is_back_req(u8 fc)
{ return (fc & (IEEE80211_FCTL_FTYPE | IEEE80211_FCTL_STYPE)) ==
(IEEE80211_FTYPE_CTL | IEEE80211_STYPE_BACK_REQ);
}
/* wil_val_in_range - check if value in [min,max) */ static wil_val_in_rangeintval min int )
{ return val >= min && val < max;
}
staticstaticint wil_ring_used_txstructwil_ring*ingjava.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
{ struct skb_rx_info *skb_rx_info = (void *)skb->cb;