mirror of
https://github.com/outbackdingo/mt76.git
synced 2026-10-24 13:26:48 +00:00
wifi: mt76: mt7915: rework tx bytes counting when WED is active
Concurrent binding/non-binding skbs could be handled anywhere which leads
to mixed byte counting, so switch to use PPDU TxS reporting regardless Tx
paths when WED is active.
Fixes: 43eaa3689507 ("wifi: mt76: add PPDU based TxS support for WED device")
Co-developed-by: Ryder Lee <[email protected]>
Signed-off-by: Ryder Lee <[email protected]>
Signed-off-by: Peter Chiu <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
This commit is contained in:
committed by
Felix Fietkau
parent
f76b102b09
commit
5637d9e37d
@@ -121,6 +121,7 @@ int
|
||||
mt76_tx_status_skb_add(struct mt76_dev *dev, struct mt76_wcid *wcid,
|
||||
struct sk_buff *skb)
|
||||
{
|
||||
struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
|
||||
struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
|
||||
struct mt76_tx_cb *cb = mt76_tx_skb_cb(skb);
|
||||
int pid;
|
||||
@@ -134,8 +135,14 @@ mt76_tx_status_skb_add(struct mt76_dev *dev, struct mt76_wcid *wcid,
|
||||
return MT_PACKET_ID_NO_ACK;
|
||||
|
||||
if (!(info->flags & (IEEE80211_TX_CTL_REQ_TX_STATUS |
|
||||
IEEE80211_TX_CTL_RATE_CTRL_PROBE)))
|
||||
IEEE80211_TX_CTL_RATE_CTRL_PROBE))) {
|
||||
if (mtk_wed_device_active(&dev->mmio.wed) &&
|
||||
((info->flags & IEEE80211_TX_CTL_HW_80211_ENCAP) ||
|
||||
ieee80211_is_data(hdr->frame_control)))
|
||||
return MT_PACKET_ID_WED;
|
||||
|
||||
return MT_PACKET_ID_NO_SKB;
|
||||
}
|
||||
|
||||
spin_lock_bh(&dev->status_lock);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user