Logic to calculate max chainmask supported is used to calculate
max NSS and thus when NSS passed is 2 the firmware was sent value
3 which is causing firmware crash as max NSS supported is 2.
To fix, added logic that if NSS is greater than WMA_MAX_NSS(2) make
it WMA_MAX_NSS.
Change-Id: Ic7ff541b60434c0ce501d245462cd45e62dd9403
CRs-Fixed: 2033675
If HW mode change timeout happens during connect req in CSR,
the status received by HDD is success and it assumes connect is
queued and does not reset the HDD state. This lead to subsequent
scan failures.
To fix, return failure status to HDD if HW mode change timesout.
Also avoid sending QDF status to supplicant as part of connect
failure.
Change-Id: I49d189ad75a585d894b5e819190c2dc3d9cc1453
CRs-fixed: 2031149
Currently wait for timeout happens in module_init which blocks
the driver loading in case of static driver
To mitigate this issue, wait is added in state ctrl param for DLKM,
static and load once and unload never driver types.
Change-Id: I1c2e427df3faa3cf68295868f6d98746e481987f
CRs-Fixed: 2012813
LRO mgr can have maximum of 10 LRO descriptors which means
that it can support maximum of 10 different flows. So, if more
than 10 flows are in progress simulataneously, LRO descriptor
could not be allocated for some of the flows and prints are
coming in kmsg to indicate this for every packet of those flows.
This is causing watchdog bark.
Reducing log level from error to debug to avoid watchdog bite.
Change-Id: I21c79be25035a5359b2390adbeb73a55f09db073
CRs-Fixed: 2034235
Initialize scheduler_msg on stack before posting using scheduler API
such that un-used fields in message structure are initialized to 0.
Change-Id: I1f46416f15c1b81273e1b32798937c05bcf176a9
CRs-Fixed: 2034770
Changing the method DP queries WMA regarding
DBS capability. Now his call will be made through
policy manager.
Change-Id: I32cd92f022cdfcffa8659344731223fefc6efc23
CRs-Fixed: 2025317
This change refactors IPA private data stored in skb control block,
which size is reduced to 32 bits.
Owner id is changed to 1 bit, to flag if the owner is IPA.
Callback function pointer is removed by adding the callback into cdf.
Skb control block priv data is reduced to 16 bits by storing the index
to the Tx descriptor list added in HDD.
Change-Id: I0eec0636794da3b4729b8be825afe6a1275915a4
CRs-Fixed: 982728
Fix the issues reported by static analysis tool for SME and WMA
modules. Following is the summar of issues which are fixed,
1) Get the csr session first and then validate the session to avoid
un-necessary session dereferencing.
2) If scan_info structure is null then return immediately else
populate scan_info structure properly.
3) Valid the mac context before deferencing it.
4) Validate the roam_req, wma, synch_event pointers before deferencing
them.
Change-Id: I522812b5c35dd540c38064e49e39ed75fb7d3e18
CRs-Fixed: 2032854
When ol_txrx_pdev_post_attach fails, the return values are not
correctly set, and this could cause several issues.
Fix to assign return values correcly.
Change-Id: I43fb97bbdb10e019e02bf289f5b4995461eb75db
CRs-Fixed: 1113222
Check adapter is not NULL when receiving IPA_RECEIVE event,
to avoid null dereference when the interface is already cleaned up.
Change-Id: Ic9240811f42edd4f495cb4eabe1268d24851d6d9
CRs-Fixed: 2001132
BSS's fProbeRsp is not set during roam sync indication and thus
the frame is always indicated as beacon to kernel. If AP has hidden
SSID, this will be dropped by kernel in confusion that something
is wrong as the AP has hidden ssid but the beacon frame indicated
by driver have ssid.
Thus to fix this set BSS's fProbeRsp to proper value.
Change-Id: Id3521fe792573cb819b91269047a119a9346d7b2
CRs-Fixed: 2034849
Driver fails to set the Guard interval 160MHz.
There is an invalid check to set the guard interval 160MHz using the
current supported chanel BW. To address this issue, add appropriate
check to set the GI 160MHz.
Change-Id: Ie0c41aea0c44a24c86ddf312cf120cbda175dad5
CRs-Fixed: 2028647
Initialize scheduler_msg on stack before posting using scheduler API
such that un-used fields in message structure are initialized to 0.
Change-Id: I4acd098ca1e975ad6ffed58d1a84c70078e2dca6
CRs-Fixed: 2034770
qcacld-2.0 to qcacld-3.0 propagation
A new 32-bit NL80211 vendor attribute is added to configure propagation
absolute delay for 2G/5G band (unit in us).
Change-Id: I2aecaa8b007c67fa2843ad3922857f923f9b8294
CRs-Fixed: 2031008
If SU beamformer is set in assoc req when AP is not SU beamformee
low throughput is seen with specific AP.
To fix this, set SU bformer capability only if AP is SU bformee and
set SU bformee capability only if AP is SU bformer
Change-Id: I9093352d48722eb79db7b1992ac873bd8cf13e66
CRs-Fixed: 2025399
__lim_get_sme_join_req_size_for_alloc returning 2 byte extra length,
using this incorrect buffer size to copy buffer may cause buffer
overflow.
Fix the same by returning correct size.
Change-Id: If9a5f3546955c72f54a11fedec76f24cd122319a
CRs-Fixed: 2034215
1) In function wma_vdev_detach_callback, free stats_rsp before zeroing out
iface buffer, else the stats_rsp memory which is not sent to upper layer is
lost.
2) In function wma_get_stats_req set stats_rsp buffer to NULL after
posting it to upper layers, so that in case this function is pre-empted
we do not lose buffer pointer.
Change-Id: I8d6261cb53758e02217d68ff01b94bb812adc7fd
CRs-Fixed: 2015436