]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: ath12k: Add HAL_PHYRX_OTHER_RECEIVE_INFO TLV parsing support
authorKarthikeyan Periyasamy <quic_periyasa@quicinc.com>
Thu, 6 Feb 2025 01:38:49 +0000 (07:08 +0530)
committerJeff Johnson <jeff.johnson@oss.qualcomm.com>
Tue, 11 Feb 2025 15:27:08 +0000 (07:27 -0800)
Currently, monitor is not enabled. However, in the future, the monitor
will be enabled. Therefore, add the necessary HAL_PHYRX_OTHER_RECEIVE_INFO
TLV parsing support in the monitor Rx path, which helps to populate the
extended Rx statistics.

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1
Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3

Co-developed-by: P Praneesh <quic_ppranees@quicinc.com>
Signed-off-by: P Praneesh <quic_ppranees@quicinc.com>
Reviewed-by: Vasanthakumar Thiagarajan <vasanthakumar.thiagarajan@oss.qualcomm.com>
Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@quicinc.com>
Link: https://patch.msgid.link/20250206013854.174765-5-quic_periyasa@quicinc.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
drivers/net/wireless/ath/ath12k/dp_mon.c
drivers/net/wireless/ath/ath12k/hal_rx.h

index 76b6d5861e2531ebed0c8d16a4206138597a54e0..0bd7dfef4310739b503a3797d11ac7629ac09171 100644 (file)
@@ -1599,6 +1599,13 @@ ath12k_dp_mon_rx_parse_status_tlv(struct ath12k *ar,
                                             HAL_RX_PHYRX_RSSI_LEGACY_INFO_INFO0_RX_BW);
                break;
        }
+       case HAL_PHYRX_OTHER_RECEIVE_INFO: {
+               const struct hal_phyrx_common_user_info *cmn_usr_info = tlv_data;
+
+               ppdu_info->gi = le32_get_bits(cmn_usr_info->info0,
+                                             HAL_RX_PHY_CMN_USER_INFO0_GI);
+               break;
+       }
        case HAL_RX_PPDU_START_USER_INFO:
                ath12k_dp_mon_hal_rx_parse_user_info(tlv_data, userid, ppdu_info);
                break;
index 765b53741861e548994df805f8889eb7676770f9..445d1c33b41fe6cd867349460fec60aae8605238 100644 (file)
@@ -683,6 +683,14 @@ struct hal_rx_resp_req_info {
 #define HAL_RX_MPDU_ERR_MPDU_LEN               BIT(6)
 #define HAL_RX_MPDU_ERR_UNENCRYPTED_FRAME      BIT(7)
 
+#define HAL_RX_PHY_CMN_USER_INFO0_GI           GENMASK(17, 16)
+
+struct hal_phyrx_common_user_info {
+       __le32 rsvd[2];
+       __le32 info0;
+       __le32 rsvd1;
+} __packed;
+
 #define HAL_RX_EHT_SIG_NDP_CMN_INFO0_SPATIAL_REUSE     GENMASK(3, 0)
 #define HAL_RX_EHT_SIG_NDP_CMN_INFO0_GI_LTF            GENMASK(5, 4)
 #define HAL_RX_EHT_SIG_NDP_CMN_INFO0_NUM_LTF_SYM       GENMASK(8, 6)