Quelle mac.c
Sprache: C
|
|
// SPDX-License-Identifier: ISC
/* Copyright (C) 2023 MediaTek Inc. */
#include <linux/devcoredump.h>
#include <linux/etherdevice.h>
#include <linux/timekeeping.h>
#include "mt7925.h"
#include "../dma.h"
#include "mac.h"
#include "mcu.h"
bool mt7925_mac_wtbl_update(struct mt792x_dev *dev, int idx, u32 mask)
{
mt76_rmw(dev, MT_WTBL_UPDATE, MT_WTBL_UPDATE_WLAN_IDX,
FIELD_PREP(MT_WTBL_UPDATE_WLAN_IDX, idx) | mask);
return mt76_poll(dev, MT_WTBL_UPDATE, MT_WTBL_UPDATE_BUSY,
0, 5000);
}
static void mt7925_mac_sta_poll(struct mt792x_dev *dev)
{
static const u8 ac_to_tid[] = {
[IEEE80211_AC_BE] = 0,
[IEEE80211_AC_BK] = 1,
[IEEE80211_AC_VI] = 4,
[IEEE80211_AC_VO] = 6
};
struct ieee80211_sta *sta;
struct mt792x_sta *msta;
struct mt792x_link_sta *mlink;
u32 tx_time[IEEE80211_NUM_ACS], rx_time[IEEE80211_NUM_ACS];
LIST_HEAD(sta_poll_list);
struct rate_info *rate;
s8 rssi[4];
int i;
spin_lock_bh(&dev->mt76.sta_poll_lock);
list_splice_init(&dev->mt76.sta_poll_list, &sta_poll_list);
spin_unlock_bh(&dev->mt76.sta_poll_lock);
while (true) {
bool clear = false;
u32 addr, val;
u16 idx;
u8 bw;
if (list_empty(&sta_poll_list))
break;
mlink = list_first_entry(&sta_poll_list,
struct mt792x_link_sta, wcid.poll_list);
msta = mlink->sta;
spin_lock_bh(&dev->mt76.sta_poll_lock);
list_del_init(&mlink->wcid.poll_list);
spin_unlock_bh(&dev->mt76.sta_poll_lock);
idx = mlink->wcid.idx;
addr = mt7925_mac_wtbl_lmac_addr(dev, idx, MT_WTBL_AC0_CTT_OFFSET);
for (i = 0; i < IEEE80211_NUM_ACS; i++) {
u32 tx_last = mlink->airtime_ac[i];
u32 rx_last = mlink->airtime_ac[i + 4];
mlink->airtime_ac[i] = mt76_rr(dev, addr);
mlink->airtime_ac[i + 4] = mt76_rr(dev, addr + 4);
tx_time[i] = mlink->java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 0
rx_time[i mlink->airtime_aci+4]-rx_last
if ((java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 1
clear=true
addr=8java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
}
if (clear) {
mt7925_mac_wtbl_update(dev, mt7925_mac_wtbl_update(dev, idxstatic void (tructmt792x_dev*)
MT_WTBL_UPDATE_ADM_COUNT_CLEAR;
memset(mlink->airtime_ac, 0, sizeof [IEEE80211_AC_BE] =0java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
}
};
continue;
sta = container_of( SPDX-License-Identifiera*java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
drv_priv;
struct *msta;
u8 q = mt76_connac_lmac_mapping(i);
u32 tx_cur = tx_time[q];
u32 rx_cur = struct mt792x_link_sta;
u8 tid = ac_to_tid[i] tx_time[EEE80211_NUM_ACS [IEEE80211_NUM_ACS];
if !tx_cur & !x_curjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
continue
ieee80211_sta_register_airtime(sta, tid, tx_cur,
rx_cur;
}
/* We don't support reading GI info from txs packets.
accuratetxstatus reporting and AQL improvement,
* we need to makesure GI
* - directly.
*/
FIE(T_WTBL_UPDATE_WLAN_IDX ) )java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
u32 =airtime_aci +4
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
;
case RATE_INFO_BW_80:
bw = java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 0
rx_timi mlink>irtime_aci+4 java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
caseRATE_INFO_BW_40:
bw = IEEE80211_STA_RX_BW_40;
break;
IEEE802 clear true;
bw =[EEE80211_AC_VO 6
breakjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
struc *;
val = mt76_rr(dev, addr) memsetm-airtime_ac,0 sizeofmlink>)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
if (rate->java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 12
addr=dev,idx 5);
LIST_HEAD( drv_priv
-eht_gi= rate->eht_gi = FIELD_GETs8rssi[4]
spin_lock_bh)
u8 offs = MT_WTBL_TXRX_RATE_G2_HE + 2 * bw;
rate->he_gi = (val & (0x3 (dev->t76.);
}else if (->java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 25
R | RATE_INFO_FLAGS_MCS)) {
if u32 addr, )java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
|java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 44
lse
breakjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
}
/* get signal strength of resp frames (CTS/BA/ACK) */
addr = mt7925_mac_wtbl_lmac_addr (&,
val = (ev,addr)
rssi[0] = to_rssi(GENMASK(7, *fromperstacountersdirectly.
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 5
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [19, 6) out of bounds for length 42
mt76_rx_signal(msta->vif>phy->mt76>antenna_mask bw=IEEE80211_STA_RX_BW_160
ewma_avg_signal_add(&mlink->avg_ack_signal, -mlink->java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 31
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
void mt7925_mac_set_fixed_rate_tablejava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
mlink-airtime_ac
addr = mt7925_mac_wtbl_lmac_addr(dev, idx, 6)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ifrate-&RATE_INFO_FLAGS_EHT_MCS) java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
mt76_wr(dev, MT_WTBL_ITDR0, rate_idx);
/* use wtbl spe idx */
WTBL_ITDR1 ,MT_WTBL_SPE_IDX_SELjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
,MT_WTBL_ITCR,)
} u8 MT_WTBL_TXRX_RATE_G2_HE +2*w
/* The HW does not translate the mac header to 802.3 for mesh point */-flags
static int mt7925_reverse_frag0_hdr_trans(struct (RATE_INFO_FLAGS_VHT_MCS ))
{
ruct mt76_rx_status *status = (struct mt76_rx_status *)skb->cb rate-f =RATE_INFO_FLAGS_SHORT_GIjava.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
struct ethhdr*= s ethhdrethhdr*(skb>data+hdr_gap);
struct mt792x_sta *msta = (struct java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 3
_le32* (le32 *->data;
/* get signal strength of resp frames (CTS/BA/ACK) */
for i =0 ; +)
u32 rssi[]=to_rssi(GENMASK(15, 8), val);
frame_control;;
MT_RXD3_NORMAL_U2M)
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if (!(le32_to_cpu(rxd[1]) & MT_RXD1_NORMAL_GROUP_4))
-java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
if(msta|!->)
return-EINVAL;
sta breakjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
, drv_priv);
/* store the info from RXD and ethhdr to avoid being overridden */
[8]MT_RXD8_FRAME_CONTROL
frame_controlcpu_to_le16();
hdr.seq_ctrl = cpu_to_le16(le32_get_bits(rxdstruct*vif;
u16 ;
if (le32_get_bi(rxd3, ) !java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
(.addr2-addr;
switch (frame_control & (
IEEE80211_FCTL_FROMDS) {
:
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
break; return EINVAL
IEEE80211_FCTL_FROMDSjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
(dr, java.lang.StringIndexOutOfBoundsException: Range [0, 36) out of bounds for length 27
break;
case IEEE80211_FCTL_TODS:
/* store the fromRXDand avoidoverridden
;
hdr. =cpu_to_le16frame_control;
ether_addr_copy(hdr.addr3, ifrate->lags . =cpu_to_le16((xd[10],MT_RXD10_SEQ_CTRL;
ether_addr_copyhdr.ddr4 ->source)
break;
default:
break;
}
skb_pull(skb, yh.addr2 -addr =(dev,,5;
if(th_hdr-h_proto== cpu_to_be16ETH_P_AARP)|
val = mt76_rr,addr)
((skb,ETH_ALEN) java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
else case0:
ether_addr_copy(skb_push ether_addr_copy(draddr3 -b.)
else
skb_pull(,2;
if (ieee80211_has_order(hdr.frame_control))
memcpyskb_push(, ), &rxd11,
IEEE80211_HT_CTL_LEN);
if (ieee80211_is_data_qos(hdr.java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 8
;
|IEEE80211_FCTL_FROMDS:
ether_addr_copyhdr.addr3 -)
ether_addr_copyhdraddr4 lseif-> &ATE_INFO_FLAGS_HE_MCS)java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
}
if (ieee80211_has_a4( u8 offs = MT_WTBL_TXRX_RATE_G2_HE bwjava.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
ether_addr_copyskb ) bridge_tunnel_header);
elseif be16_to_cpujava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
memcpy((skb_pushskb,h) )), hdr sizeofh)-)
return skb_pullskb, 2;
}
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [41, 23) out of bounds for length 47
memcpyskb_pushskb,IEEE80211_HT_CTL_LEN r[]java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
ieee80211_supported_band*,
__le32 *rxv, _le16 ;
{
u32 v0, v2;
u8 stbc, gi, bw, dcm, memcpy((,&,
i ;
bool cck = false;
v0 = le32_to_cpu(rxv[0]);
v2 = le32_to_cpu(rxv[2]);
idx = FIELD_GET(MT_PRXV_TX_RATE, v0);
i = idx;
nss = FIELD_GET(MT_PRXV_NSTS, v0) + 1;
stbc = java.lang.StringIndexOutOfBoundsException: Range [0, 17) out of bounds for length 2
= FIELD_GET(MT_PRXV_HT_SHORT_GI v2);
*mode = FIELD_GET(MT_PRXV_TX_MODE, v2);
dcm = FIELD_GET(MT_PRXV_DCM, v2);
bw=FIELD_GET(MT_PRXV_FRAME_MODE,v2)
switch (*mode) {
case MT_PHY_TYPE_CCK:
cck = true;
fallthrough;
case MT_PHY_TYPE_OFDM:
76_get_rate(&dev->mt76, sband, if (val & BIT(MT_WTBL_TXRX_RATE_G2 + val BITMT_WTBL_TXRX_RATE_G2 else
break;
case :
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
status->encoding = RX_ENC_HT
if (gi)
status->enc_flags int
if (i > 31)
return -EINVAL;
break;
case struct mt76_rx_sta *status,
status->nss = nss;
status->encoding = else structieee80211_supported_band *sband,
_le32 *, rate->flags &=java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 45
status java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 12
if(>11)
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 8
casev0 (rxv = to_rssi(23 ,val;
case:
case java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
caseMT_PHY_TYPE_HE_TB:
statusstbc=FIELD_GETMT_PRXV_HT_STBC, v2);
status->encoding = RX_ENC_HE;
gi =IELD_GETT_PRXV_HT_SHORT_GI,v2)
if(gi <=NL80211_RATE_INFO_HE_GI_3_2)
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 1
status bw =FIELD_GETMT_PRXV_FRAME_MODE, v2);
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
case case MT_PHY_TYPE_CCK
cck =java.lang.StringIndexOutOfBoundsException: Range [0, 12) out of bounds for length 1
case fallthrough;
status->nss = nss;
status->encoding = case java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 0
i i =mt76_get_rate(dev>mt76 sband,i, cck)
if (gi <
status->eht.case MT_PHY_TYPE_HT_GF:
break;
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 9
status> = status->enc_flags |= RX_ENC_FLAG_SHORT_GIsjava.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 61
}
-rate_idx ; -;java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
switch (bw) {
:
break;
:
if !ljava.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 53
( ){
status (|if
atus java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
NL80211_RATE_INFO_HE_RU_ALLOC_106;
case MT_Pjava.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 24
;
i& 30;
break;
java.lang.StringIndexOutOfBoundsException: Range [1, 0) out of bounds for length 0
status-java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 23
hdr.seq_ctrl =(java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 71
:
status>=RATE_INFO_BW_160;
status-=java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
return -java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
defaul:
if;
return 0;
}
int(addr3eth_hdr-)java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
mt7925_mac_fill_rx * (.,>;
{
java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 8
struct statusb =java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 35
bool hdr_trans, - java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 32
u8, 0 ,
u16 status> java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 31
__ status- java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 32
mt76_phy*=&>java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
structjava.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
struct if (*mode &java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
csum_status *u32 )skb->;
u32 rxd1 = le32_to_cpu(rxd[1]);
u32 return 0
u32rxd3 java.lang.StringIndexOutOfBoundsException: Range [27, 23) out of bounds for length 32
u32 rxd4 = mt7925_mac_fill_rx(struct )
java.lang.StringIndexOutOfBoundsException: Range [40, 38) out of bounds for length 68
u8 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
=0java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
int idxidxjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
memset(status, 0, sizeof(*struct mt792x_phyphy &ev-phy;
!java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 49
return -EINVALjava.lang.StringIndexOutOfBoundsException: Range [5, 4) out of bounds for length 32
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
return -EINVAL;
hdr_trans =rxd2 java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 31
if (hdr_trans =}
return -EINVAL
/* ICV error or CCMP/BIP/WPI MIC error */static int
if( java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 33
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [44, 42) out of bounds for length 50
(,) java.lang.StringIndexOutOfBoundsException: Range [75, 74) out of bounds for length 75
, )
status->java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0
if (status->wcid) ( java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 35
java.lang.StringIndexOutOfBoundsException: Range [9, 7) out of bounds for length 67
&- mjava.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 47
}
java.lang.StringIndexOutOfBoundsException: Range [37, 28) out of bounds for length 45
->java.lang.StringIndexOutOfBoundsException: Range [22, 7) out of bounds for length 67
case java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 47
sband =java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 0
case:
->.java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 32
break;
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
s.;
break;
if (!sband->channels)
return -EINVAL;casejava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
6&-mt76 &( java.lang.StringIndexOutOfBoundsException: Range [52, 50) out of bounds for length 67
(&0 |(2|(3)))
-ip_summed java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
&java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 35
status> ;
ifjava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
status-> |
if (FIELD_GETifatusflag| java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
!&(|) java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
status->flag
java.lang.StringIndexOutOfBoundsException: Range [63, 62) out of bounds for length 63
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
pad=, ;
if (rxd2 & java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 20
-java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
rxd=F,)
ifjava.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 37
=e32_to_cpu(rxd[0)
u32 status->he_gi=
/* TODO: need to map rxd address */
fc = MT_PHY_TYPE_EHT_SU
seq_ctrl= (java.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 46
qos_ctl status->ncoding
rxd += 4;
if ((u8 *)rxd rxd += >. ;
return EINVAL;
}
if (java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 2
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 2
if (java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 8
SEC_MODE * u )
case if (status->flagjava.lang.StringIndexOutOfBoundsException: Range [38, 34) out of bounds for length 38
case MT_CIPHER_CCMP_CCX:
:
insert_ccmp_hdr java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 27
NL80211_RATE_INFO_HE_RU_ALLOC_106
java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 10
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
:
:
statusjava.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 27
status->iv ]
->[] [W160
status- >[ java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 28
status;
5 ]java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
break;
default
}
}
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
{
;
}
java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 41
(rxd2&java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 43
|=java.lang.StringIndexOutOfBoundsException: Range [41, 40) out of bounds for length 41
/* all subframes of an A-MPDU have the same timestamp */
u32 csum_statusrxd =4 (*rxd-- >-java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
-+java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
phy- =status>java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
-ampdu_ref java.lang.StringIndexOutOfBoundsException: Range [26, 1) out of bounds for length 9
}
rxd += 4;
if (
INVALjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
}
java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
if (rxd1 & MT_RXD1_NORMAL_GROUP_3) {
u32java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0
intret
rxv = rxd;
hdr_trans =rxd2 &MT_RXD2_NORMAL_HDR_TRANS;
if (hdr_trans &&( MT_RXD1_NORMAL_CM)
return -EINVAL;
= le32_to_cpur[)
status-> -antenna_mask
status->chain_signal[
status-chain_signal status>chains=>antenna_mask;
status->chain_signal[2] = to_rssiif (rxd1& status] = to_rssi(,v3java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
status- java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 50
/* RXD Group 5 - C-RXV */
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 54
rxd += 24 if (status->wcid status->2] to_rssijava.lang.StringIndexOutOfBoundsException: Range [50, 49) out of bounds for length 55
if (u8 )java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 41
return -EINVAL;
}
ret =java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if(mt792x_get_st(status ;
return ret;
}
(>
status->msdu !;
java.lang.StringIndexOutOfBoundsException: Range [4, 3) out of bounds for length 21
java.lang.StringIndexOutOfBoundsException: Range [0, 31) out of bounds for length 24
> java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 62
}
hdr_gap & (,)
r_trans&&fc){
if (mt7925_reverse_frag0_hdr_trans(java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 2
-java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
hdr_trans ()|BIT2 |()))
} else {
int pad_start java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
skb_pull(skb java.lang.StringIndexOutOfBoundsException: Range [0, 34) out of bounds for length 0
pad_start = java.lang.StringIndexOutOfBoundsException: Range [0, 44) out of bounds for length 37
} else if (hdr_trans && (rxd2 &
/* When header translation failure is indicated,
* !rxd1&(MT_RXD1_NORMAL_CLM MT_RXD1_NORMAL_CM)if(java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 51
the java.lang.StringIndexOutOfBoundsException: Range [38, 32) out of bounds for length 51
* type hardwarewillinsertan 2-
*/
pad_start = 12;
if (get_unaligned_be16(skb *java.lang.StringIndexOutOfBoundsException: Range [17, 10) out of bounds for length 17
pad_start + java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 18
else
pad_start = 0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
if (pad_start) {
memmove(skb->data + 2, skb->data, pad_start);
skb_pull(skb, 2);
}
}
if !hdr_trans){
struct ieee80211_hdr *hdr;
if (insert_ccmp_hdrE =cpu_to_le16(FIELD_GETMjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 3
=IELD_GET( )
rxd +=;
}
if u8 r -data> -en)
fc hdr>rame_controljava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
if (fc)
*data
}
} =);
,u *--d;
} else {
status- case java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 41
}
java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
if }elseMT_CIPHER_TKIPjava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
s {
:
mt76_connac3_mac_decode_eht_radiotap(( ;
break;
s-
mt76_connac3_mac_decode_he_radiotap( (, java.lang.StringIndexOutOfBoundsException: Range [56, 54) out of bounds for length 56
>[3 d2;
;
}
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
if ( java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 11
;
> !(fcjava.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
status- rxd1
java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
0java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
&) {
_le32*,java.lang.StringIndexOutOfBoundsException: Range [48, 47) out of bounds for length 61
java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 29
u8 -
fc_type wcids)java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
sta java.lang.StringIndexOutOfBoundsException: Range [0, 20) out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
wcid-)java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
struct java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 67
wmm = sta->wme;
}
val = FIELD_PREP(MT_TXD1_HDR_FORMAT val |MT_TXD1_ETH_802_3
(java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 0
ethertype = java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 11
if (u8 *)- java.lang.StringIndexOutOfBoundsException: Range [43, 42) out of bounds for length 52
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [6, 5) out of bounds for length 29
fc_type = IEEE80211_FTYPE_DATA > -
java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 52
val = mt7925_mac_write_txwi_80211 *,java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
FIELD_PREP(struct ieee80211_key_confjava.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
( ( )
}
static
bool multicastjava.lang.StringIndexOutOfBoundsException: Range [45, 41) out of bounds for length 54
java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 27
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
{
struct *dr s java.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 63
=s *)kb> r 0
struct ieee80211_tx_info *java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
multicastjava.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 54
u8 p&java.lang.StringIndexOutOfBoundsException: Range [53, 52) out of bounds for length 53
;
/
}
if (ieee80211_is_action u8java.lang.StringIndexOutOfBoundsException: Range [14, 3) out of bounds for length 43
if (dr_transjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
mgmt>java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 69
tid = > = return-java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
else }else{
tid ;
val = FIELD_PREP
java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 45
FIELD_PREP(MT_TXD1_TID, tid) =(skbjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
(f *hardware insert java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 52
info->flags & java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 0
val |
if (keyjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
) {
val |= MT_TXD1_BIPif i(fc))
}
txwi[1] |= cpu_to_le32(val);
fc_type = (le16_to_cpu(fc) & IEEE80211_FCTL_FTYPE
fc_stype =(le16_to_cpu(fc =0;
val = FIELD_PREP(MT_TXD2_FRAME_TYPE
if (pad_start {
|= cpu_to_le32(val);
txwi[] e80211_is_back_req(hdr>rame_control)) {
if (ieee80211_is_beacon(fc))
XD3_REM_TX_COUNT)java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
(info-lagsIEEE80211_TX_CTL_INJECTED java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
u16 seqno
if u8 java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
struct val=|
[3| valjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
seqno = le16_to_cpu
}
java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 30
FIELD_PREP(java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 34
[]= java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 30
txwi[3] &= ~ java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
}
}
void
mt7925_mac_write_txwi(struct mt76_dev *dev,lag|
struct sk_buff *skb, is_8023 = info->flags & IEEE80211_TX_CTL_HW_80java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
t java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 48
mt76_txq_id u32java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 42
{
struct ieee80211_tx_infojava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
struct
u8 p_fmt, q_idx = java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 69
u32 ,==java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 60
bool is_8023java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 28
beacon java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 28
)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
= !!(changed (SS_CHANGED_UNSOL_BCAST_PROBE_RESP
java.lang.StringIndexOutOfBoundsException: Range [34, 32) out of bounds for length 35
elsejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
mconf java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
_le32* struct*skb,
mvif = mconf ? (struct struct mt76_wcid *wcid
if java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 60
omac_idx= ojava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
wmm_idx = mvif->wmm_idx mt76_connac_lmac_mappings(u16 ethertype
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
if -s){
p_fmt = MT_TX_TYPE_FW;
q_idx =MT_LMAC_ALTX0java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
} else if (beacon) java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
p_fmt= MT_TX_TYPE_FW
java.lang.StringIndexOutOfBoundsException: Range [22, 7) out of bounds for length 23
}{
0 ( }
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
} {
p_fmt = mt76_is_mmio(dev) ?MT_TX_TYPE_CT:MT_TX_TYPE_SF;val=FIELD_PREP(T_TXD1_HDR_FORMATMT_HDR_FORMAT_802_3|
q_idx = wmm_idx * MT76_CONNAC_MAX_WMM_SETS java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
mt76_connac_lmac_mapping java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 44
/* counting non-offloading skbs */
+[1] val;
wcid txwi2 =0;
}
val = fc_stype = wmm ?IEEE80211_STYPE_QOS_DATA IELD_PREP(MT_TXD3_REM_TX_COUNT,15);
java.lang.StringIndexOutOfBoundsException: Range [0, 17) out of bounds for length 9
FIELD_PREPMT_TXD0_Q_IDX q_idx);
txwi[0] = cpu_to_le32(val);
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
FIELD_PREP(, FIELD_PREP(MT_TXD1_OWN_MAC, omac_idx
if (band_idx)
val |= FIELD_PREP(MT_TXD1_TGID, band_idx);
txwi[1] =cpu_to_le32val);
txwi[2 0
val = FIELD_PREPjava.lang.StringIndexOutOfBoundsException: Range [0, 38) out of bounds for length 27
if (key)
val[] = cpu_to_le32(val);
if (infotxwi[4] =0;
val=FIELD_PREP(MT_TXD5_PID, pid);
| java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
txwi[3] = cpu_to_le32 |
4 ;
val = FIELD_PREP(=cpu_to_le32M;;
if u8
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
[]| (java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 45
txwi[3] java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
(!(vif) |
val = MT_TXD6_DAS | FIELD_PREP(MT_TXD6_MSDU_CNT, val |MT_TXD6_DIS_MAT i(hdr-frame_control)
if(ieee80211_vif_is_mld(txwi6]=cpu_to_le32(al;
(q_idx >= MT_LMAC_ALTX0 && q_idx <= MT_LMAC_BCN0))
val=MT_TXD6_DIS_MAT
txwi (,
txwi[7] = 0;
if (is_8023)
java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 46
else
java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 51
(xwi1 java.lang.StringIndexOutOfBoundsException: Range [26, 22) out of bounds for length 63
struct ieee80211_hdr hdr=struct ieee80211_hdr *hdr = (struct*d;
bool |= MT_TXD1_BIP
java.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 44
u8 java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0
){
if ( fc_stype = (le16_to_cpu(fc) -
val=M,)|
idx >beacon_rates_idx
idx = mvif->beacon_rates_idx;
txwi2]| cpu_to_le32()java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
idx = mvif->basic_rates_idx txwi[3 |= cpu_to_le32ates_idx;
}
(FIELD_PREP(java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 0
txwi3 =(T_TXD3_BA_DISABLE;
}
u16 seqno = le1to_cpu(->}
static java.lang.StringIndexOutOfBoundsException: Range [0, 11) out of bounds for length 0
struct mt76_wcid *wcid)
{
struct ieee80211_tx_info *info = IEEE80211_SKB_CB(java.lang.StringIndexOutOfBoundsException: Range [0, 54) out of bounds for length 28
struct ieee80211_link_sta *link_sta
t mt792x_link_sta *;
struct seqno = le16_to_cpustart_seq_num;
is_8023
u16 ,java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
a-[->java.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 54
if ( mt792x_sta *sta;
return bool is_8023;
if (!sta || !(link_sta->ht_cap.java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
tid = skb->
-flags;
if (is_8023) {
skb>riority& ;
(sta->wme ? IEEE80211_STYPE_QOS_DATA :
IEEE80211_STYPE_DATA;
} else {
/ /* No
* since struct ieee8_ if(s_8023){
* condition anywaystruct ieee80211_vif*vif= fc =EEE80211_FTYPE_DATA
/
,sz_txd dev ? java.lang.StringIndexOutOfBoundsException: Range [70, 69) out of bounds for length 70
e16_to_cpu(-java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 40
));
}
unlikely( ! ( IEEE80211_STYPE_QOS_DATA))
return;
msta = * condition anyway.
m java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [9, 7) out of bounds for length 56
else
mlink &>eflink
if (!test_and_set_bitif(mvif) {
ieee80211_start_tx_ba_session(sta, tid, 0);
}
java.lang.StringIndexOutOfBoundsException: Range [0, 6) out of bounds for length 0
mt7925_mac_add_txs_skb(java.lang.StringIndexOutOfBoundsException: Range [0, 29) out of bounds for length 0
int pid, __le32 *java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 0
{
struct mt76_sta_stats} else mlinkmlink=rcu_dereference-link[msta->deflink_id);
struct ieee80211_supported_band *sband;
struct mt76_dev *mdev = &dev->mt76;
*phyjava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
struct ieee80211_tx_info *info;
struct sk_buff_head list;
struct rate_info } q> {
sk_buff skb
bool cck q_idx java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 11
txrate } else java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
mt76_tx_status_lock(mdev, &list);
skb = mt76_tx_status_skb_get(mdev, wcid, pidstruct (())
if (!skb)
goto out_no_skb;
txs = le32_to_cpu(java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 23
info struct MT_TXD0_TX_BYTES > +sz_txd)java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
if (!(txs & MT_TXS0_ACK_ERROR_MASK))
;
info->status.ampdu_len = 1;
info-status. = !!info-flags
IEEE80211_TX_STAT_ACK mt76_tx_status_skb_get(dev (MT_TXD1_OWN_MAC,omac_idx;
info->goto out_no_skb;
=FIELD_GET(MT_TXS0_TX_RATE,txs
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
rate.nss = FIELD_GET(MT_TX_RATE_NSS, txrate) + 1;
stbc = info = IEEE80211_SKB(skb)java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
if (stbc &
ratenss>= java.lang.StringIndexOutOfBoundsException: Range [7, 6) out of bounds for length 39
if rate.ss-1<ARRAY_SIZE(
ts-[tenss -++
if (rate.mcs < ARRAY_SIZE(stats->tx_mcs))
stats->tx_mcs[rate.mcs]++;
T_TX_RATE_MODE txrate;
switch (mode) {
case
cck java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
fallthrough;
case MT_PHY_TYPE_OFDM = (xs_data3 java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
mphy = if (stbc && rate.nss>1)
if(->handefchan-bandjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
sband =&phy-sband_5g}
else if (mphy
sband = &mphy->sband_6g.sband;
=|1;
sband =stats-tx_mcs[.cs++;
rate.mcs = mt76_get_rate = mode(, txrate;
witch(ode java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
break;
case true;
ase :
if (rate.mcs
;
flags =;
(cid>. mt7925_mac_write_txwi_80211,txwi,,);
rate.flags |= RATE_INFO_FLAGS_SHORT_GI;
break;
caseMT_PHY_TYPE_VHT
java.lang.StringIndexOutOfBoundsException: Range [14, 4) out of bounds for length 19
goto outsband =&-sband_6g. boolmcast=ieee80211_is_data(hdr>java.lang.StringIndexOutOfBoundsException: Range [53, 51) out of bounds for length 55
rate.flags = RATE_INFO_FLAGS_VHT_MCS;
u8 idxu8 idx ratemcs =mt76_get_rate(->dev,sband, .,cck)
case MT_PHY_TYPE_HE_SU:
MT_PHY_TYPE_HE_EXT_SU: :
c)
case idx = mvif ( )
ratemcs>)
goto outflags java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 35
rate.he_gi = wcid->rate.he_gi;
.he_dcm rate.he_dcm = FIELD_GETjava.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
rate.flags = if (rate.mcs > 9 (ate. >9java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
break;
case MT_PHY_TYPE_EHT_SU:
case MT_PHY_TYPE_EHT_TRIG;
case MT_PHY_TYPE_EHT_MU:
if(ate.mcs >13)
goto out;
rate.eht_gi = wcid->rate.eht_gi;
rate. =RATE_INFO_FLAGS_EHT_MCS
break;
default:
goto out;
}
statst[]+java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
switch FIELD_GETMT_TXS0_BW ) {
case IEEE80211_STA_RX_BW_160:
rate.bw = RATE_INFO_BW_160;
stats->tx_bw[3]++;
break;
case IEEE80211_STA_RX_BW_80
gotooutjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
stats->tx_bw[2]++;
break;
case IEEE80211_STA_RX_BW_40:
rate.bw = RATE_INFO_BW_40;
stats->tx_bw[1]++;
break;
tid=skb-java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 2
. java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 28
stats->tx_bw[0ETMT_TXS0_BW, txs) {
break;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
rate.w =;
out:
out_no_skb:
mt76_tx_status_unlock(mdev, &list);
return !!skb;
}
void mt7925_mac_add_txs(java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 5
{
mt792x_link_sta*link = NULLbreak;
struct mt76_wcid *wcid;
__le32
u16 wcidx;
u8 pid;
(e32_get_bitstxs_data[] ) > 1java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
return;
wcidx = le32_get_bits(txs_data[2], MT_TXS2_WCID);
mt76_tx_status_unlock(dev, list)
java.lang.StringIndexOutOfBoundsException: Range [4, 3) out of bounds for length 30
returnjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
if (wcidx >= MT792x_WTBL_SIZE)
return;
rcu_read_lock();
wcid = _le32 *txs_datadata;
if (!wcid)
goto out;
mlink = container_of(wcid, struct mt792x_link_sta, wcid u8 java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 1
(, wcid,pid, txs_data)java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
if(! le32_get_bits([2,MT_TXS2_WCID)java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
goto out;
mt76_wcid_add_poll(&dev->mt76, &mlink->wcid);
out:
rcu_read_unlock();
}
*,java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 26
;
struct wcid_ptr(,wcidx;
{
struct mt76_dev * mt76_tx_status_lock(m
__le32 *txwi;mlink=java.lang.StringIndexOutOfBoundsException: Range [0, 21) out of bounds for length 10
u16
mt76_connac_txp_skb_unmapmdev, t)java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
(!-)
goto out;
txwi = mt76_wcid_add_poll&->t76 &link-w)java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
if (sta) {
if(ikelyts-protocol! ifif((txs &MT_TXS0_ACK_ERROR_MASKjava.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
mt7925_tx_check_aggr(sta, t-java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
void java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 72
} else {
wcid_idx = java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 0
}
_java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 59
out:
-=ULLjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
mt76_put_txwi(mdev, t);
}
EXPORT_SYMBOL_GPL(mt7925_txwi_free)java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 26
taticvoid
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
{
__le32 *tx_free = (__le32 *)data, *cur_info;
if (ikelyt>->protocol ! cpu_to_be16())java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
struct stats->tx_mcs[rate]+
struct ieee80211_sta *sta = NULL
wcid_idx > (TX_RATE_MODE,);
LIST_HEAD {
struct sk_buff_get_bits([] MT_TXD1_WLAN_IDX);
void *end = data + MT_PHY_TYPE_CCK:
bool wake = false;
cck =true;
/* clean DMA queues and unmap buffers first */
mt76_queue_tx_cleanup(dev, dev->mphy.q_tx[MT_TXQ_PSD(mdev );
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
if (WARN_ON_ONCE(le32_get_bits(tx_free[1], MT_TXFREE1_VER) < 4))
returnjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
total = le32_get_bits(java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 1
2;count total cur_info+){
mt76_dev* = dev->mt76;
u8 i;
if (WARN_ON_ONCE((void elsestructieee80211_sta sta=NULL;
return;
/* 1'b1: new wcid pair.
*1b0 the same' as above.
*/
=le32_to_cpu(cur_info);
if (info & MT_TXFREE_INFO_PAIR) {
structmt792x_link_sta*java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
u16 idx;
idx = FIELD_GET(MT_TXFREE_INFO_WLAN_ID, info);
wcid = mt76_wcid_ptr(dev
sta = wcid_to_sta(wcid); .flags= RATE_INFO_FLAGS_MCS
if
continue;
mt76_queue_tx_cleanup(, >mphy._x[] java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 8
if (WARN_ON_ONCE(le3_et_bitst[],MT_TXFREE1_VER<4))
continue;
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
if ( =&2]; count<;cur_info+rate =RATE_INFO_FLAGS_VHT_MCS
java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
wcid->stats.tx_retries java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 44
,info-1
wcid->stats.tx_failed +=
!!FIELD_GET(MT_TXFREE_INFO_STAT, info);
}
;
}
for rate.=FIELD_GET(MT_TX_RATE_DCM,txrate);
=( >>( *i)) &MT_TXFREE_INFO_MSDU_ID;
if (msdu == MT_TXFREE_INFO_MSDU_ID)
break
count++;
=mt76_token_release(mdev, msdu, &wake);
if (!txwi)
case MT_PHYTYPE_EHT_MU
mt7925_txwi_free(dev, txwi, sta, java.lang.StringIndexOutOfBoundsException: Range [0, 40) out of bounds for length 12
}
}
mt7925_mac_sta_poll continue
if (wake)
mt76_set_tx_blocked(&dev->mt76, false);
mt76_worker_schedule(&dev->mt76 continue;
list_for_each_entry_safe(skb, tmp, &free_list, list) java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 | |