STATUS_DONE is missing sometimes in monitor status ring,
causing stalled processing in host and backpressure to RXDMA.
Adding a WAR to skip such entries.
Also increased the size of monitor link descriptor ring since
multiple descriptors are used for large MPDUs.
Change-Id: I556b4196482ed738471afc1f7e7b73cf3f8fbc51
command:-
1. "iwpriv athx s_txpow param1 param2"
2. "iwpriv athx g_txpow param1"
param1 = frame_type<<8+frame_subtype param2 is power_value
if subtype == 0xff means set all subtype of that frame type
Change-Id: I8c68e1ca6a5829a3f0cf01b2c32c3332e1010243
CRs-Fixed: 2175241
Set update_peer_cache, learning_frame bits in meta header for all
the frames that are sent to firmware.
Change-Id: Id8dac0007cc87f792859e5108ddfa77746166b49
CRs-fixed: 2180223
Set link descriptor memory address to NULL after freeing to ensure
it is not freed again. This is seen with soc_detach called during
attach failures.
Change-Id: I7338cb8c64fcb652c95f42bcb9e998a6f043cecf
CRs-Fixed: 2160703
When TLVs come from TAC_thread last tlv sent by FW is
HTT_PPDU_STATS_SCH_CMD_STATUS_TLV
and in Tqm thread HTT_PPDU_STATS_USR_COMPLTN_ACK_BA_STATUS_TLV is the last
TLV to be sent. HTT_PPDU_STATS_USR_COMPLTN_ACK_BA_STATUS_TLV though can
come either in tqm thread or tac thread based on tid type.
Add change to process HTT_PPDU_STATS_USR_COMPLTN_ACK_BA_STATUS_TLV when it
comes from tqm thread and pass the populated buffer to the appropriate APIs
Change-Id: I7a064aba4e3c6814b63dcf4bb97cfb3be0194c39
CRs-Fixed: 2180477
The map\unmap checking logic need to be revised. Before that, it
is needed this hotfix to unblock other test.
CRs-Fixed: 2175684
Change-Id: Ife8147526307924079be9081eaf17323f67b87c0
* Wrap ol_txrx_vdev_peer_remove_cb, so that upper layer can invoke it.
* Remove roam_synch_in_progress from ol_txrx_vdev_peer_remove_cb.
roam_synch_in_progress is a parameter of ol_txrx_vdev_peer_remove_cb,
But invoker cannot pass value to it. And it is concept of wma, it's
improper in cdp.
Change-Id: I6fa6c1b2df4919ad34ec931c4217bec0eefb2eac
CRs-Fixed: 2176165
pass psoc/pdev object as ctrl pointers to instead of legacy objects.
It introduces new APIs to get feature pointers of psoc/pdev.
DP attach API param modified to pass ctrl psoc (psoc object)
Change-Id: I3d83f28c3e72e5ee984a4220b9d5cf3c4522b501
CRs-Fixed: 2177109
Add API to return the msdu link descriptor from obtained from NSS back to
host link descriptor pool.
CRs-Fixed: 2178692
Change-Id: Ib4f967ea887e013d6461ba760a45dbda6fd92baa
dp_tx_send_exception is an exception path that transmits frames
through FW by setting DP_TX_DESC_FLAG_TO_FW
Change-Id: Id6abfcd2bf060c4fe3aaca91634f3be501530a7e
CRs-Fixed: 2176814
Move the peer Rx activity to PPDU_stats_handler
which is common for both NSS offload and Host datapath modes.
Change-Id: I06c3dd14d117cc291e3b19076ddfc7f3be00e602
CRs-Fixed: 2176385
1. find_first_bit API returns Size value if it doesn’t find any bit set.
This was causing VOICE AC counter to go high even for TID 0
2. Reset stats was not resetting the stats immediately
3. Added checks to avoid spurious stats increment
4. Detect data/mgmt pkt to avoid spurious stats increment
Change-Id: Ic9c5695fc7bdf58d1237e7e20bb79378a02a21f6
Add temporary fix to drop all encrypted fragments
until they can be handled properly.
Change-Id: I87a9c52d6359be8182c28d3fa047b9a65f3dd129
CRs-Fixed: 2174750
Add tid to the defrag waitlist & timeout if further fragments are not
received.
Change-Id: Iff2d2c23fe796cf70bcc6aa43ab02a308a33ee9f
CRs-Fixed: 2174750
- Handle WDS case during encapsulation
- Drop non-head duplicate fragments from list
- Get REO DST ring id from msdu_info of incoming packet
Change-Id: I7e4c9c211548aafe9b4ba88fb12890f38aced324
CRs-Fixed: 2174750
REO queue setup is getting triggered from processing
pending null queue exceptions in WBM release ring, after
sending peer delete command to FW, but before peer unmap
is received, causing target assert. Mark peer deletion
before sending peer delete command to avoid this.
Change-Id: I2d85d01e049cb37d9321beeee8e41f44e40e68ad
CRs-Fixed: 2155420
Add ppdu tid tlv value assignment in cdp dp stats layer
ppdu tid value is used by apstats command it was earlier
showing zeroes
Change-Id: Id24b08d2424dcc09424624d84044b3963bd81b36
cck rates were getting updated for ofdm rates
and nss index were getting wrongly incremented
fixed the same
Corrected sgi and preamble too
Change-Id: I2dabb685de6e0bd4ba5094845cde228b3c32e2a9
* Update the pkt_type counters correctly within the array bound
* Add support for NSS counters on Tx side
* Update ampdu flag in PPDU struct
* Add support for ampdu flag in hal_ppdu struct
Change-Id: I79ea52727124ea4be4d82912cb2513ea58e2af10
Update mon_rx_status fields for HE case. Also
added rs_fcs_err field to structure and populate
its value.
Change-Id: I4681543c7d6c6c7ac0d666cd93072caaee285585
The nbuf is not freed for all possible branches in rx_wbm_error_pr
cess function. Add fix to ensure the nbuf free for all conditions.
CRs-Fixed: 2171899
Change-Id: I8e40fc7dc5afb0be0257244e1e704a0200ffacc0
Support added for the following:
1. The counters for Rx offer, Tx Offer, MgmtTXFail.
2. Block mgmt frame from a particular mac address.
3. Display NSS for associated clients.
Change-Id: Ic0f6ea8f7b94f998f6a9d2d3e1adc3a71c79056b
Remove dependency of extender ap on VAP layer and radio(ic) layer data
structure
Change-Id: Ib336f518847abd1b29f5ea3cfd1a508dc2cd14e8
CRs-Fixed: 2148247
The pointer to peer is dereferenced after memory free in peer
_unref_delete function. Fix the issue by changing function
call sequence.
CRs-Fixed: 2167698
Change-Id: Iebd8f958bde4964c16a3c312d037e8f06e319350
Sending all frames to firmware will have high throughput impact.
Queue mesh frames also to TCL/TQM and send cloned frame to firmware
only if meta header information is changed to update meta header
information. Increased meta info size as per new ext2 header.
Change-Id: I89ff27994477a5637979a9cd6a397286144b2535
CRs-Fixed: 2162643
Addba recieve/response logic has been implemented in
host for HE instead of in FW like VHT. setaddbaresp
is not hooked to the dp module yet to set the addba
response from userspace. Implement the required logic
for HE to support this command.
Change-Id: I49cceca299db06d41f2cafa690f5ba59e01f1f4a
CRs-fixed: 2163475
Add a new data stall event which will be triggered by FW
when there is no exchange of frames post TIM and the STA
will keep on extending the ITO waiting for the rogue AP
to send a frame.
Change-Id: Ic97ab1036a12a20b174fa433e4a06ce0e9b4c308
CRs-Fixed: 2163316
Tx ME descriptors used for Tx Multicast enhancement are not freed
in pdev detach path causing memory leak. Fix this by freeing
them in pdev detach path.
Change-Id: I902e7a829495871e3d0013a9942f86c02bbba80e
CRs-Fixed: 2168524
during peer delete we are trying to update peer stats to
vap_bss_peer, but in STA mode we do not have bss_peer,
this is resulting in an assert during peer delete in STA mode.
Change-Id: Ie302dd74caf2df3ffe0a57e9ecd22a0c31cbcb60
CRs-Fixed: 2168929
Buffers sent through htt htc endpoint is cleaned up within DP. Set this
endpoint in transport layer to ensure that transport layer skips buffers
from this endpoint during cleanup of pending buffers in source ring.
Change-Id: I3f7d36c26347b508913d4200e0806d93408097e8
CRs-Fixed: 2168235
TX descriptors should be unmapped and freed when VDEV is detached.
Or else it will cause memory leak in qdf_mem.
CRs-Fixed: 2163178
Change-Id: I59da73787786f78c1f057e4daad7b4d53e7fbe4c
The kernel panic is seen because wrong variable was used , and this
variable was getting de-referenced without initialization.
Fix this by using the correct variable
Change-Id: I1f03c724f3ecba44a8ce0bc94242f2acafa5649d
CRs-Fixed: 2166423
vdev stats are getting reset to zero when a peer disassoc
with the AP. the fix is basically update peer stats to
bss_peer just before we delete the peer.
Change-Id: Ibada4ab82fbb68f32df89bdbae8b172bc8973fe7