diff mbox series

wifi: ath12k: set flag for mgmt no-ack frames in Tx completion

Message ID 20241219190845.605116-1-quic_msinada@quicinc.com (mailing list archive)
State Under Review
Delegated to: Jeff Johnson
Headers show
Series wifi: ath12k: set flag for mgmt no-ack frames in Tx completion | expand

Commit Message

Muna Sinada Dec. 19, 2024, 7:08 p.m. UTC
From: Ramya Gnanasekar <quic_rgnanase@quicinc.com>

IEEE80211_TX_STAT_NOACK_TRANSMITTED flag signifies that frame was
successfully transmitted without any errors when no-ack is requested.

In WMI Tx management completion path, driver is not setting
IEEE80211_TX_STAT_NOACK_TRANSMITTED flag for the frames with
IEEE80211_TX_CTL_NO_ACK. Without this flag, the management frame
statistics will not track such frames.

Add IEEE80211_TX_STAT_NOACK_TRANSMITTED flag as part of the flags in
skb transmit information when WMI is processing Tx completion for
management frames.

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1

Signed-off-by: Ramya Gnanasekar <quic_rgnanase@quicinc.com>
Signed-off-by: Muna Sinada <quic_msinada@quicinc.com>
---
 drivers/net/wireless/ath/ath12k/wmi.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Kalle Valo Dec. 20, 2024, 3:37 p.m. UTC | #1
Muna Sinada <quic_msinada@quicinc.com> writes:

> From: Ramya Gnanasekar <quic_rgnanase@quicinc.com>
>
> IEEE80211_TX_STAT_NOACK_TRANSMITTED flag signifies that frame was
> successfully transmitted without any errors when no-ack is requested.
>
> In WMI Tx management completion path, driver is not setting
> IEEE80211_TX_STAT_NOACK_TRANSMITTED flag for the frames with
> IEEE80211_TX_CTL_NO_ACK. Without this flag, the management frame
> statistics will not track such frames.
>
> Add IEEE80211_TX_STAT_NOACK_TRANSMITTED flag as part of the flags in
> skb transmit information when WMI is processing Tx completion for
> management frames.
>
> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1
>
> Signed-off-by: Ramya Gnanasekar <quic_rgnanase@quicinc.com>
> Signed-off-by: Muna Sinada <quic_msinada@quicinc.com>

Acked-by: Kalle Valo <kvalo@kernel.org>
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath12k/wmi.c b/drivers/net/wireless/ath/ath12k/wmi.c
index 562b0615ed06..a098d4303a63 100644
--- a/drivers/net/wireless/ath/ath12k/wmi.c
+++ b/drivers/net/wireless/ath/ath12k/wmi.c
@@ -5362,6 +5362,9 @@  static int wmi_process_mgmt_tx_comp(struct ath12k *ar, u32 desc_id,
 	if ((!(info->flags & IEEE80211_TX_CTL_NO_ACK)) && !status)
 		info->flags |= IEEE80211_TX_STAT_ACK;
 
+	if ((info->flags & IEEE80211_TX_CTL_NO_ACK) && !status)
+		info->flags |= IEEE80211_TX_STAT_NOACK_TRANSMITTED;
+
 	ieee80211_tx_status_irqsafe(ath12k_ar_to_hw(ar), msdu);
 
 	num_mgmt = atomic_dec_if_positive(&ar->num_pending_mgmt_tx);