mbox series

[v3,0/8] wifi: ath12k: Refactor the monitor status Rx path

Message ID 20241217084511.2981515-1-quic_periyasa@quicinc.com
Headers show
Series wifi: ath12k: Refactor the monitor status Rx path | expand

Message

Karthikeyan Periyasamy Dec. 17, 2024, 8:45 a.m. UTC
Currently, the monitor status Rx path was inherited from ath11k but has
not been updated for the ath12k 802.11be hardware. Also there is no issue
at present since the monitor status Rx path is not enabled. However, in
the future, the monitor status Rx path will be enabled. Therefore, it is
necessary to update the TLV structures, bitmask definitions, remove the
unused bitmask, change the Tx monitor SRNG ring ID and refactor the
monitor status parse handler.

v3:
 - Rebsed to ToT
v2:
 - Rebsed to ToT

Karthikeyan Periyasamy (8):
  wifi: ath12k: Add documentation HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG
  wifi: ath12k: Refactor monitor status TLV structure
  wifi: ath12k: cleanup Rx peer statistics structure
  wifi: ath12k: Fix the misspelled of hal TLV tag
    HAL_PHYRX_GENERICHT_SIG
  wifi: ath12k: fix incorrect TID updation in DP monitor status path
  wifi: ath12k: Remove unused HAL Rx mask in DP monitor path
  wifi: ath12k: Change the Tx monitor SRNG ring ID
  wifi: ath12k: Avoid explicit type cast in monitor status parse handler

 drivers/net/wireless/ath/ath12k/core.h     |   4 -
 drivers/net/wireless/ath/ath12k/dp.h       |  14 ++-
 drivers/net/wireless/ath/ath12k/dp_mon.c   | 134 ++++++++-------------
 drivers/net/wireless/ath/ath12k/hal.c      |   2 +-
 drivers/net/wireless/ath/ath12k/hal.h      |   2 +-
 drivers/net/wireless/ath/ath12k/hal_desc.h |   2 +-
 drivers/net/wireless/ath/ath12k/hal_rx.h   |  14 ++-
 7 files changed, 72 insertions(+), 100 deletions(-)

Comments

Kalle Valo Dec. 17, 2024, 7:48 p.m. UTC | #1
Karthikeyan Periyasamy <quic_periyasa@quicinc.com> writes:

> Currently, unused fields are present in the Rx peer statistics
> structure. These fields are already present in the same structure
> under the ath12k_rx_peer_rate_stats container structure. Therefore,
> remove the unused fields from the Rx peer statistics structure.
>
> 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>
Kalle Valo Dec. 17, 2024, 7:53 p.m. UTC | #2
Karthikeyan Periyasamy <quic_periyasa@quicinc.com> writes:

> 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>
Kalle Valo Dec. 17, 2024, 7:54 p.m. UTC | #3
Karthikeyan Periyasamy <quic_periyasa@quicinc.com> writes:

> The Tx monitor SRNG ring ID does not align with the ath12k 802.11be
> hardware architecture. Currently, there is no issue since the Tx monitor
> is not enabled. However, in the future, the Tx monitor will be enabled.
> Therefore, change the HAL_SRNG_RING_ID_WMAC1_SW2TXMON_BUF0 SRNG ID and
> assign the correct start ring ID for the ring type HAL_TX_MONITOR_BUF.
>
> 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>
Jeff Johnson Dec. 19, 2024, 5:54 p.m. UTC | #4
On Tue, 17 Dec 2024 14:15:03 +0530, Karthikeyan Periyasamy wrote:
> Currently, the monitor status Rx path was inherited from ath11k but has
> not been updated for the ath12k 802.11be hardware. Also there is no issue
> at present since the monitor status Rx path is not enabled. However, in
> the future, the monitor status Rx path will be enabled. Therefore, it is
> necessary to update the TLV structures, bitmask definitions, remove the
> unused bitmask, change the Tx monitor SRNG ring ID and refactor the
> monitor status parse handler.
> 
> [...]

Applied, thanks!

[1/8] wifi: ath12k: Add documentation HTT_H2T_MSG_TYPE_RX_RING_SELECTION_CFG
      commit: d506e55fe39bcd6a78bd1f23210cbcd8cee4f844
[2/8] wifi: ath12k: Refactor monitor status TLV structure
      commit: 61a0d9a879c3682391f88855220dd766bb9d6542
[3/8] wifi: ath12k: cleanup Rx peer statistics structure
      commit: 6a6d941a39947c359ed245fca490dcdb09551235
[4/8] wifi: ath12k: Fix the misspelled of hal TLV tag HAL_PHYRX_GENERICHT_SIG
      commit: b79462532cd56119fb409f81f50dc74b12724b5e
[5/8] wifi: ath12k: fix incorrect TID updation in DP monitor status path
      commit: ebee84cc961cd3947015efbf4a5dbea63b11c5d3
[6/8] wifi: ath12k: Remove unused HAL Rx mask in DP monitor path
      commit: 0345f28a122656a4703442a2a97d2dca370c27a0
[7/8] wifi: ath12k: Change the Tx monitor SRNG ring ID
      commit: 61f247a06c3cdeb9093b3d90afd7d51168d089f4
[8/8] wifi: ath12k: Avoid explicit type cast in monitor status parse handler
      commit: 8534c42397ed8f05257dbddcd305a351ad40add1

Best regards,