mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-12-24 21:02:35 +00:00
61 lines
2.5 KiB
Diff
61 lines
2.5 KiB
Diff
From 1116fade3c61c952f2a01303a8d85de40da6d561 Mon Sep 17 00:00:00 2001
|
|
From: Dinesh Karthikeyan <quic_dinek@quicinc.com>
|
|
Date: Fri, 10 Jun 2022 11:37:27 +0530
|
|
Subject: [PATCH] ath12k: Fix RU allocation incrementation in tx_stats
|
|
|
|
RU allocation counters are not incrementing in tx_stats as the
|
|
ppdu_type is not initialized. Initialize ppdu_type value to fix this
|
|
incrementation issue.
|
|
|
|
Signed-off-by: Dinesh Karthikeyan <quic_dinek@quicinc.com>
|
|
---
|
|
drivers/net/wireless/ath/ath12k/dp.h | 2 ++
|
|
drivers/net/wireless/ath/ath12k/dp_rx.c | 4 +++-
|
|
2 files changed, 5 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/net/wireless/ath/ath12k/dp.h b/drivers/net/wireless/ath/ath12k/dp.h
|
|
index 000e0d6..351953d 100644
|
|
--- a/drivers/net/wireless/ath/ath12k/dp.h
|
|
+++ b/drivers/net/wireless/ath/ath12k/dp.h
|
|
@@ -1521,6 +1521,8 @@ enum HTT_PPDU_STATS_PPDU_TYPE {
|
|
FIELD_GET(HTT_PPDU_STATS_USER_RATE_FLAGS_GI_M, _val)
|
|
#define HTT_USR_RATE_DCM(_val) \
|
|
FIELD_GET(HTT_PPDU_STATS_USER_RATE_FLAGS_DCM_M, _val)
|
|
+#define HTT_USR_RATE_PPDU_TYPE(_val) \
|
|
+ FIELD_GET(HTT_PPDU_STATS_USER_RATE_INFO1_PPDU_TYPE_M, _val)
|
|
|
|
#define HTT_PPDU_STATS_USER_RATE_RESP_FLAGS_LTF_SIZE_M GENMASK(1, 0)
|
|
#define HTT_PPDU_STATS_USER_RATE_RESP_FLAGS_STBC_M BIT(2)
|
|
diff --git a/drivers/net/wireless/ath/ath12k/dp_rx.c b/drivers/net/wireless/ath/ath12k/dp_rx.c
|
|
index 3b10bf2..e82bf65 100644
|
|
--- a/drivers/net/wireless/ath/ath12k/dp_rx.c
|
|
+++ b/drivers/net/wireless/ath/ath12k/dp_rx.c
|
|
@@ -1303,7 +1303,7 @@ ath12k_update_per_peer_tx_stats(struct ath12k *ar,
|
|
struct htt_ppdu_stats_common *common = &ppdu_stats->common;
|
|
int ret;
|
|
u8 flags, mcs, nss, bw, sgi, dcm, rate_idx = 0;
|
|
- u32 succ_bytes = 0;
|
|
+ u32 succ_bytes = 0, ppdu_type;
|
|
u16 rate = 0, succ_pkts = 0;
|
|
u32 tx_duration = 0;
|
|
u8 tid = HTT_PPDU_STATS_NON_QOS_TID;
|
|
@@ -1338,6 +1338,7 @@ ath12k_update_per_peer_tx_stats(struct ath12k *ar,
|
|
mcs = HTT_USR_RATE_MCS(user_rate->rate_flags);
|
|
sgi = HTT_USR_RATE_GI(user_rate->rate_flags);
|
|
dcm = HTT_USR_RATE_DCM(user_rate->rate_flags);
|
|
+ ppdu_type = HTT_USR_RATE_PPDU_TYPE(user_rate->info1);
|
|
|
|
/* Note: If host configured fixed rates and in some other special
|
|
* cases, the broadcast/management frames are sent in different rates.
|
|
@@ -1447,6 +1448,7 @@ ath12k_update_per_peer_tx_stats(struct ath12k *ar,
|
|
peer_stats->ba_fails =
|
|
HTT_USR_CMPLTN_LONG_RETRY(usr_stats->cmpltn_cmn.flags) +
|
|
HTT_USR_CMPLTN_SHORT_RETRY(usr_stats->cmpltn_cmn.flags);
|
|
+ peer_stats->ppdu_type = ppdu_type;
|
|
|
|
if (ath12k_debugfs_is_extd_tx_stats_enabled(ar))
|
|
ath12k_debugfs_sta_add_tx_stats(arsta, peer_stats, rate_idx);
|
|
--
|
|
2.7.4
|
|
|