Patch "ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     ath11k-send-ppdu_stats_cfg-with-proper-pdev-mask-to-.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 226c358e3647b51432e3f4e90fe3491394354b55
Author: Rameshkumar Sundaram <ramess@xxxxxxxxxxxxxx>
Date:   Wed Nov 10 17:10:48 2021 +0200

    ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware
    
    [ Upstream commit 16a2c3d5406f95ef6139de52669c60a39443f5f7 ]
    
    HTT_PPDU_STATS_CFG_PDEV_ID bit mask for target FW PPDU stats request message
    was set as bit 8 to 15. Bit 8 is reserved for soc stats and pdev id starts from
    bit 9. Hence change the bitmask as bit 9 to 15 and fill the proper pdev id in
    the request message.
    
    In commit 701e48a43e15 ("ath11k: add packet log support for QCA6390"), both
    HTT_PPDU_STATS_CFG_PDEV_ID and pdev_mask were changed, but this pdev_mask
    calculation is not valid for platforms which has multiple pdevs with 1 rxdma
    per pdev, as this is writing same value(i.e. 2) for all pdevs.  Hence fixed it
    to consider pdev_idx as well, to make it compatible for both single and multi
    pd cases.
    
    Tested on: IPQ8074 hw2.0 AHB WLAN.HK.2.5.0.1-01092-QCAHKSWPL_SILICONZ-1
    Tested on: IPQ6018 hw1.0 WLAN.HK.2.5.0.1-01067-QCAHKSWPL_SILICONZ-1
    
    Fixes: 701e48a43e15 ("ath11k: add packet log support for QCA6390")
    
    Co-developed-by: Sathishkumar Muruganandam <murugana@xxxxxxxxxxxxxx>
    Signed-off-by: Sathishkumar Muruganandam <murugana@xxxxxxxxxxxxxx>
    Signed-off-by: Rameshkumar Sundaram <ramess@xxxxxxxxxxxxxx>
    Signed-off-by: Jouni Malinen <jouni@xxxxxxxxxxxxxx>
    Signed-off-by: Kalle Valo <kvalo@xxxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20210721212029.142388-10-jouni@xxxxxxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/wireless/ath/ath11k/dp.h b/drivers/net/wireless/ath/ath11k/dp.h
index ee8db812589b3..c4972233149f4 100644
--- a/drivers/net/wireless/ath/ath11k/dp.h
+++ b/drivers/net/wireless/ath/ath11k/dp.h
@@ -514,7 +514,8 @@ struct htt_ppdu_stats_cfg_cmd {
 } __packed;
 
 #define HTT_PPDU_STATS_CFG_MSG_TYPE		GENMASK(7, 0)
-#define HTT_PPDU_STATS_CFG_PDEV_ID		GENMASK(15, 8)
+#define HTT_PPDU_STATS_CFG_SOC_STATS		BIT(8)
+#define HTT_PPDU_STATS_CFG_PDEV_ID		GENMASK(15, 9)
 #define HTT_PPDU_STATS_CFG_TLV_TYPE_BITMASK	GENMASK(31, 16)
 
 enum htt_ppdu_stats_tag_type {
diff --git a/drivers/net/wireless/ath/ath11k/dp_tx.c b/drivers/net/wireless/ath/ath11k/dp_tx.c
index 21dfd08d3debb..092eee735da29 100644
--- a/drivers/net/wireless/ath/ath11k/dp_tx.c
+++ b/drivers/net/wireless/ath/ath11k/dp_tx.c
@@ -894,7 +894,7 @@ int ath11k_dp_tx_htt_h2t_ppdu_stats_req(struct ath11k *ar, u32 mask)
 		cmd->msg = FIELD_PREP(HTT_PPDU_STATS_CFG_MSG_TYPE,
 				      HTT_H2T_MSG_TYPE_PPDU_STATS_CFG);
 
-		pdev_mask = 1 << (i + 1);
+		pdev_mask = 1 << (ar->pdev_idx + i);
 		cmd->msg |= FIELD_PREP(HTT_PPDU_STATS_CFG_PDEV_ID, pdev_mask);
 		cmd->msg |= FIELD_PREP(HTT_PPDU_STATS_CFG_TLV_TYPE_BITMASK, mask);
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux