mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-29 17:22:07 +00:00
wifi: ath12k: fix incorrect TID updation in DP monitor status path
Currently, an incorrect TID value gets populated in the monitor status Rx path due to an incorrect bitmap value given to the ffs() built-in helper function. Therefore, avoid the decrement and directly provide the TID bitmap to the ffs() built-in helper function for the correct TID update in the monitor status Rx path. 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 Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com> Acked-by: Kalle Valo <kvalo@kernel.org> Link: https://patch.msgid.link/20241217084511.2981515-6-quic_periyasa@quicinc.com Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
This commit is contained in:
parent
b79462532c
commit
ebee84cc96
@ -617,6 +617,7 @@ ath12k_dp_mon_rx_parse_status_tlv(struct ath12k_base *ab,
|
||||
case HAL_RX_PPDU_END_USER_STATS: {
|
||||
struct hal_rx_ppdu_end_user_stats *eu_stats =
|
||||
(struct hal_rx_ppdu_end_user_stats *)tlv_data;
|
||||
u32 tid_bitmap;
|
||||
|
||||
info[0] = __le32_to_cpu(eu_stats->info0);
|
||||
info[1] = __le32_to_cpu(eu_stats->info1);
|
||||
@ -629,10 +630,9 @@ ath12k_dp_mon_rx_parse_status_tlv(struct ath12k_base *ab,
|
||||
u32_get_bits(info[2], HAL_RX_PPDU_END_USER_STATS_INFO2_AST_INDEX);
|
||||
ppdu_info->fc_valid =
|
||||
u32_get_bits(info[1], HAL_RX_PPDU_END_USER_STATS_INFO1_FC_VALID);
|
||||
ppdu_info->tid =
|
||||
ffs(u32_get_bits(info[6],
|
||||
HAL_RX_PPDU_END_USER_STATS_INFO6_TID_BITMAP)
|
||||
- 1);
|
||||
tid_bitmap = u32_get_bits(info[6],
|
||||
HAL_RX_PPDU_END_USER_STATS_INFO6_TID_BITMAP);
|
||||
ppdu_info->tid = ffs(tid_bitmap) - 1;
|
||||
ppdu_info->tcp_msdu_count =
|
||||
u32_get_bits(info[4],
|
||||
HAL_RX_PPDU_END_USER_STATS_INFO4_TCP_MSDU_CNT);
|
||||
|
Loading…
Reference in New Issue
Block a user