Add following changes:
a. Add CDP API to config full monitor mode
b. HTT configuration changes
c. Init/Deinit changes for full monitor mode resources
CRs-Fixed: 2632442
Change-Id: I06db5194031b3ea0f0c1e5deda20df4bc0faa0b9
In dp_rxdma_get_mon_buf_ring returns mac id index of
rx_refill_buf_ring array. But for targets with only one
pdev only the zeroth index is initialized. This will lead
to replenish failures in case of monitor mode when mon dest
process of lmac ring with mac id 1. So return only index 0 of
rx refill buf ring.
Change-Id: I03a7e19ea8d976e19fe6482aff0080dfa4d5ec45
CRs-Fixed: 2638655
Move dp monitor inline APIs to header file from dp_rx_mon_dest.c
to dp_rx_mon.h to use it in component dev
CRs-Fixed: 2626054
Change-Id: I3a31dacd7d7e817f144708f9bda5536808080864
A framework is added where the filters for every
mode are stored on a radio instance. Whenever a mode comes
up, it stores the filters in the radio and calls a
common API which iterates through all the enabled
mode filters and loops through them to create a
superset of filters which is sent to HTT.
This framework can be extended for new feature addition
which set filters for the monitor status and monitor
destination rings.
Change-Id: I9b739af2086bbe261b65c57af0a5bd867294f30f
CRs-Fixed: 2585872
Change set 2 of ctrl_ops APIs to replace pdev, vdev and peer
dp handles with pdev_id, vdev_id and peer mac address
along with dp soc handle
Change-Id: I3f180c9c360d564f0b229b447074ad23b7c0a737
Monitor buffer are required only when monitor VAP is created. Allocate
these buffers only when montior VAP is created. This provides memory
savings when no monitor VAP is created/required.
Change-Id: I3ddaef00615f00fd13adb2789469a62f1a0af165
CRs-Fixed: 2491873
Add support to log the important events in
datapath, which will help in debugging the
datapath issues.
IRQ handler, Napi poll and srng access start/end
are the events which are currently logged.
CRs-Fixed: 2457854
Change-Id: Iba105b0e79443b670a01a929f999f94e00ea92f2
1. Move statistics API's to dp_stats.c
2. Move DP_TRACE_STATS to DP_PRINT_STATS
as it is implemented based on target.
Change-Id: I62f3076a51ca35f0e12cdb0ff0230ea87c2baaf7
CRs-Fixed: 2453443
The file cds_ieee80211_defines.h is removed as part of
Change-Id: I3b7a3f61f82ea15b7975fb5d143257c80382f20d.
Hence remove the references of this file.
Change-Id: Ie94a748d062b65824e5b1f8aba8b7f7d92e937aa
CRs-Fixed: 2405051
Avoid memory fragmentation that happens during
attach-detach flow.
- Reuse transmit allocated static pool memory across soc up/down.
These memories are allocated during soc attach.
- Reuse DP source ring memory, DP soc context, DP pdev context
across soc up/down.
- Reorganise structure members of DP soc and DP pdev so that
we can zero out structure members across soc up/down
- Add cdp soc init/deinit and cdp pdev init/deinit that
will be active across soc up/down
Change-Id: I5732453f617bdc16995fda916b645c41845c3ecb
Support Monitor Mode for QCA6390 as RXDMA1 block is
now removed.
1. Monitor buffers are now received on rxdma_err_dst_ring
2. RXDMA1 monitor status ring is moved to RXDMA0 monitor
status ring
3. Msdu link descriptors are now returned to WBM descriptor
release ring.
4. Reap the Monitor buffers and return it to SW Refill ring.
5. Use the same rx descriptor pool for regular and monitor data.
Change-Id: If41e5d13f942da2b97e5aab72b88ae344925ba67
CRs-Fixed: 2297300
There are some particular PPDUs which have preamble only:
* NDP frames
* TB_PPDU frames
Add support to the above frames.
Change-Id: I7022433d3765575eaf28d7baf3a11e8b6ce13890
CRs-Fixed: 2275161
Setup monitor mode rings and allocate
descriptors only if QCA6390_MONITOR_MODE is
defined.
Change-Id: I9c9bdc1e325eda822a326d64d6445a7112083420
CRs-Fixed: 2271998
Initialize MAC1 along with MAC0. 2.4GHz monitor mode operates on
MAC1 so initialize MAC1 and reap both MAC0 and MAC1.
Change-Id: Id281def37d460b224f5f571893266f193846fd0c
CRs-Fixed: 2176848
Add a division factor for number of tx completions to be accounted for in NAPI
budget. Fix the data type of budget to int to account for negative values.
Change-Id: I620af5537c5c1cdf3161da3a3c053a2c8bf777e8
CRs-Fixed: 2092526
Setup & process the RXDMA_DST ring to handle error frames
from RXDMA block. Pro-active fix to handle the WAR for
the WBM stuck issue seen when sending RX_FLUSH command.
Change-Id: Ibf56062da2cd9b5d447f1d43bbae5944426d88c8
CRs-Fixed: 2059870
Perform software based smart mesh filtering on rx packets indicated
as error packets with invalid peer. All such packets from NAC
sent to umac through monitor interface.
Change-Id: I8e4b40f74088bb8820d6ab6681756835e400d4ef
CRs-Fixed: 2017269
This change is for supporting monitor mode VAP. All the monitor mode ring
is configured. The related monitor mode ring includes:
-monitor mode buffer ring
-monitor mode destination ring
-monitor mode status ring
-monitor mode link descriptor ring
The packet is not sent to monitor mode ring unless the monitor mode VAP is
configured. This release support Multiple VAP - AP/STA VAP plus Monitor
VAP configuration. The status ring is not used in this release. However,
the ring is tested and the ring is moving and there are TLV's in the ring.
Change-Id: I782ee0c3b998d8b3bbac79b5e7fdecdbff15fa93
CRs-Fixed: 2013049