]> git.baikalelectronics.ru Git - kernel.git/commit
ath11k: Process full monitor mode rx support
authorAnilkumar Kolli <akolli@codeaurora.org>
Wed, 8 Dec 2021 08:44:00 +0000 (10:44 +0200)
committerKalle Valo <quic_kvalo@quicinc.com>
Thu, 9 Dec 2021 08:10:33 +0000 (10:10 +0200)
commit133a3c95fba7390cb42f1fa21cbf3d26c56ba96d
tree9d8b7e418711b94e692ed0057307c7d20e8cd00e
parent9867debb51d9d1b326e3b52b0571e7ca8197aede
ath11k: Process full monitor mode rx support

In full monitor mode, monitor destination ring is read before monitor
status ring. mon_dst_ring has ppdu id, reap till the end of PPDU. Add
all the MPDUs to list. Start processing the status ring, if PPDU id in
status ring is lagging behind, reap the status ring, once the PPDU ID
matches, deliver the MSDU to upper layer. If status PPDU id leading,
reap the mon_dst_ring.

The advantage with full monitor mode is hardware has status buffers
available for all the MPDUs in mon_dst_ring, which makes it possible
to deliver more frames to be seen on sniffer.

Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.4.0.1-01734-QCAHKSWPL_SILICONZ-1

Signed-off-by: Anilkumar Kolli <akolli@codeaurora.org>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/1638881695-22155-4-git-send-email-akolli@codeaurora.org
drivers/net/wireless/ath/ath11k/dp.c
drivers/net/wireless/ath/ath11k/dp.h
drivers/net/wireless/ath/ath11k/dp_rx.c