Add polling timer to reap monitor status rings
until PPDU end interrupts are enabled.
Change-Id: I742b0df6fd5a369d9664b5c2e09a70916585174b
CRs-Fixed: 2117063
Check for buffer overflow for pktlog messages in process_tx_info
function before doing mem copy.
Change-Id: I5d34bfdecb4fd9dad1741da2256873ef3e9e708c
CRs-Fixed: 2154974
Replace internal spin_lock macros with qdf_spin_lock APIs for lock
operating on TSO/EXT descriptor pools.
TX_DESC_LOCK_* APIs are used only by the flow_control V2 support
to by pass them.
Change-Id: I926c279de3878b6f48efd798194fa896072c1f6d
CRs-Fixed: 2142815
In preparation for splitting dispatcher init/deinit into init, enable,
disable, and deinit, add stubs for the new enable/disable dispatcher
calls. This will ease the transition for code that will leverage the new
APIs.
Change-Id: Ideee2db05f87978d5ad0796fba5e46042d5b4d41
CRs-Fixed: 2153871
Add a delay of 20ms before sending WMI message.
A delay of 20msec was added to slow down sending of WMI message
to give time for processing WMI in Napier FPGA platform.
Change-Id: Ib64972a92e638f2fe92f669657a5ab9eb326e744
CRs-Fixed: 2087330
The name tQDF_GLOBAL_CON_MODE is a poor name on many levels:
- The "t" prefix implies it is a typedef when it isn't.
- The "t" prefix makes this a mixed-case identifier which is "frowned
upon" in the Linux coding style guide.
- The term "CON_MODE" is MCL-specific and is not suitable for
converged code.
Therefore rename enum tQDF_GLOBAL_CON_MODE to enum QDF_GLOBAL_MODE to
better align with with the Linix coding style and the converged
nomenclature.
Change-Id: I57933a62f6ce02b6594d97198be8132e61e8d1f6
CRs-Fixed: 2152503
Change some HAL API to correspond to the header changes that got
modified for the Napier 11AX HW.
Change-Id: I514b18bc2a92ad11d95c1079ba8ef4b96b7bc6eb
CRs-Fixed: 2124274
Add support for following node statistics for Lithium DP
1) Number of Tx unicast MSDUs and bytes
2) Last Tx and Rx rate
3) Excessive retries per AC
Change-Id: If533df25e5299bf399bed85ace99763aab74134e
wlan_util_get_vdev_by_ifname currently uses the unconditional vdev ref
grabbing API, wlan_objmgr_vdev_get_ref. Using this API outside of objmgr
core is very dangerous, as a reference to a destroyed vdev can be
obtained, leading to double-free and use-after-free scenarios. Use the
conditional wlan_objmgr_vdev_try_get_ref API instead, and return a NULL
vdev if a reference cannot be obtained.
Change-Id: I44484b664577e6d9a79057ee35150abfb60ca0b3
CRs-Fixed: 2150257
Clang generated the following warning in various places:
warning: address of array 'weight->pcl_list' will always evaluate
to 'true' [-Wpointer-bool-conversion]
if (weight->pcl_list) {
~~ ~~~^~~
Remove the unnecessary NULL check for address of array.
Change-Id: Ibc82b4d7135a0425748c0fb7f065435ccd28ad6f
CRs-Fixed: 2150493
To be able update the target with user preferred HE beamforming
capablities we need corresponding commands exposed to the user
space. Add HE beamforming capabilty mask in order to set or get
these capabitlites in the destination variable to enable these
commands.
Change-Id: I0f7f86fa53a3f6629299808042d05e78ecc489bd
CRs-fixed: 2126717
Add QDF timer multiplier in qdf_wait_for_event_completion APIs such that
for emualtion setups timeout values are adjusted accordingly.
Change-Id: I661cf63a963938b2d61377980335b2f209656b4e
CRs-Fixed: 2151194
CCE param disable is required for RAW Mode AMSDU cases,
RAW AMSDU frames causes CCE to crash, to avoid crash
disable cce component using CCE param.
Change-Id: I1b221e12ac69a873e995485c56a6ea5b310e727c
CRs-Fixed: 2132295
Host CCE Classification changes for RAW Mode workaround
H/w CCE hangs while classfiying raw packets
so the classification is moved to host
Change-Id: I75cfc6b140a7983fcdfb797c93b9fd57f01c5ee3
Add status recieved as part if WMI ready event into wmi_ready host param
structure to enable the removal of seperate API to extract status. Add
new param introduced by FW to indicate number of extra peers FW is
allocated for its internal use.
Change-Id: I7a9ed64d4a9d1f38397197c4c4a4114d8365eef7
CRs-Fixed: 2149878
In some special case, ota tx ack of P2P action frame comes more than
2 second and tx context is free due to tx time out, than crash happens
since of invalid pointer access. Solution is search tx context by nbuf,
do not process the ota tx ack if not find tx context from waiting for
ack queue.
Change-Id: I0778d0f22d963b00af5212b9d6080a95a4888e73
CRs-Fixed: 2142870
Pass dev info to the qdf_mem_free_consistent so that the kernel can track
the memory & prevent false double free detection.
Change-Id: I82a00ce9adc3638caee3f1ae325ec041fb2bd1fe
CRs-Fixed: 2144237
In wifi_pos component, use regulatory APIs to get channel
information and remove UMAC_REG_COMPONENT
Change-Id: I85bb6dac2930dd702f6f9468fa5cebf920270255
CRs-Fixed: 2122877
According to FW design, number 0 stands for NSS 1, number 1 stands
for NSS 2, etc. So extra one is needed to be added in NSS number
for statistics.
CRs-Fixed: 2146055
Change-Id: I34d4166a187c048a233bee846235f4ec2492ad42
Support dynamic antenna switch in TDLS:
1. If TDLS NSS is configured to be 1x1, TDLS connections not teardown;
2. When antenna mode switched from 2x2 to 1x1, TDLS connections teared
down and EAGAIN returned; When antenna mode switched from 1x1 to 2x2,
TDLS connections is still teardown, but success in one trial.
Change-Id: I1877002122a96dc8f40c796f8a1b938199d3b67a
CRs-Fixed: 2080461
Implement driver debug print rate limiting in HIF SDIO RX
path and QDF nbuf allocation path to avoid driver
inactivity watch dog time out when the platform is facing
great memory pressure.
Change-Id: Ifa4fe3e7027150fd1469df58049776fca8aa6f2f
CRs-Fixed: 2148314
Initialize the peer state to disconnected(OL_TXRX_PEER_STATE_DISC)
after creating the peer. This will also help in roaming case not
to send a vdev up again to the firmware, since the legacy code
checks for this initial state of the peer.
Change-Id: I5b5a664a81c1e295e405c648c1124e9ac844c9cb
CRs-Fixed: 2150449
Problem 1:
When HOST receives RADAR found indication from target on wrong
channel ex: channel 68. Host does not add the channel to NOL,
but calls random channel function to choose new channel. It
leads to target assert and HOST crash.
Solution 1:
If channel is wrong, do not add it to NOL and do not call
random channel function.
Problem 2:
When Host receives RADAR indication from target, HOST prints
excess information. It floods the console log.
Solution 2:
Add debug bit mask for excess information.
Change-Id: Ib367ee80705d6b789e4e6823682e2f3c3096c9d9
CRs-Fixed: 2148940
As the correct usage, a lock must be destroyed after all jobs are
done. Delete an unwanted lock destroy of reo_cmd_lock.
CRs-Fixed: 2151585
Change-Id: Ieb24b747e9d4704b65026db3ecfee23a94fbf835