developer | 1f55fcf | 2024-10-17 14:52:33 +0800 | [diff] [blame^] | 1 | From 4efdf548d28d3afbc367e2cbe365107db1869690 Mon Sep 17 00:00:00 2001 |
| 2 | From: Peter Chiu <chui-hao.chiu@mediatek.com> |
| 3 | Date: Wed, 16 Oct 2024 08:41:49 +0800 |
| 4 | Subject: [PATCH] mtk: mt76: do not report ACK when TXS is lost |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame] | 5 | |
| 6 | Signed-off-by: Shayne Chen <shayne.chen@mediatek.com> |
| 7 | --- |
| 8 | tx.c | 3 ++- |
| 9 | 1 file changed, 2 insertions(+), 1 deletion(-) |
| 10 | |
| 11 | diff --git a/tx.c b/tx.c |
developer | 1f55fcf | 2024-10-17 14:52:33 +0800 | [diff] [blame^] | 12 | index d6054ab6..b3d76692 100644 |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame] | 13 | --- a/tx.c |
| 14 | +++ b/tx.c |
| 15 | @@ -100,7 +100,8 @@ __mt76_tx_status_skb_done(struct mt76_dev *dev, struct sk_buff *skb, u8 flags, |
| 16 | return; |
| 17 | |
| 18 | /* Tx status can be unreliable. if it fails, mark the frame as ACKed */ |
| 19 | - if (flags & MT_TX_CB_TXS_FAILED) { |
| 20 | + if ((flags & MT_TX_CB_TXS_FAILED) && |
developer | 1f55fcf | 2024-10-17 14:52:33 +0800 | [diff] [blame^] | 21 | + (dev->drv->drv_flags & MT_DRV_SW_RX_AIRTIME)) { /* Only CE chips do so */ |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame] | 22 | info->status.rates[0].count = 0; |
| 23 | info->status.rates[0].idx = -1; |
| 24 | info->flags |= IEEE80211_TX_STAT_ACK; |
| 25 | -- |
developer | d0c8945 | 2024-10-11 16:53:27 +0800 | [diff] [blame] | 26 | 2.45.2 |
developer | 05f3b2b | 2024-08-19 19:17:34 +0800 | [diff] [blame] | 27 | |