On 2021-09-24 17:12, Kalle Valo wrote:
Jouni Malinen <jouni@xxxxxxxxxxxxxx> writes:
From: Anilkumar Kolli <akolli@xxxxxxxxxxxxxx>
Add a new hw_param full_monitor_mode to enable full monitor support
for
QCN9074. HTT_H2T_MSG_TYPE_RX_FULL_MONITOR_MODE cmd is sent to the
firmware to enable the full monitor mode.
Nowhere it's explained what "full monitor mode" means from an user's
point of view. Can someone give a high level summary what advantages
this feature has? For example, more frames delivered to user space or
what?
Yes, more frames delivered with full monitor mode. The advantage with
full
monitor mode is, hardware has status buffers available for all the MPDUs
in
mon_dst_ring. Both status buffer and MPDUs from mon_dst_ring is used to
build
the frame.
Patch "ath11k: Process full monitor mode rx support" has the commit
message.
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.
- Anil.