qcacld-2.0 to qcacld-3.0 propagation
The HI_RSSI_SCAN feature is only meant to address the
scenario where user walks into a home which has dual band
AP and the 2.4G AP is visible initially and then the 5G AP
is visible later.
Disable the HI_RSSI_SCAN feature in the following cases:
1. Connection is a roaming connection
2. Connection is made with a 5G AP
3. Connection is made with a 2.4G AP, but the rssi is
stronger than the hi_rssi_lookup_threshold
CRs-Fixed: 975401
Change-Id: I86c63d9f8b51b6bdccc804163241ffe5640baf4d
Aggregate all the handlers of NCHO configration update
commands into a single routine
CRs-Fixed: 1007810
Change-Id: I9722dbead499f14f3969a85a20baf74aa03efff2
qcacld-2.0 to qcacld-3.0 propagation
After boot when driver is loaded for the first time, driver call
the regulatory_hint with default country.
From kernel 3.18 onward regulatory_hint removes the
REGULATORY_CUSTOM_REG flag from wiphy flags. But once reg notifier
is called for the country the wiphy flags are restored from the
original flags stored in driver.
Now if driver is unloaded and loaded again, kernel calls the reg
notifier for the last country set by driver before unload.
In static drivers the global static flag init_by_driver will remain
true even after unload and load and thus init_by_reg_core is not set
to true when kernel calls the reg notifier. Thus driver ends up
sending reg hint to kernel with same country, this reg hint removes
the REGULATORY_CUSTOM_REG flag from wiphy flags and is dropped in
the kernel as country has not changed. As reg notifier is not
called for the reg hint and wiphy flags are not restored.
To avoid changing of wiphy flags, reset the global static reg params
during wiphy unregisteration.
Change-Id: I01b29a2314ab4192e6bc9076978d54762a85c9e8
CRs-Fixed: 1003390
qcacld-2.0 to qcacld-3.0 propagation
In case of static driver, upon wifi turn off module exit
doesn't happens. Module exit helps in cleanup of static memory.
If driver is loaded statically, at the time of driver unload,
wiphy flags are not cleared because of static memory.
Fix it by removing channel type as static.
Change-Id: I198ea87da3d160716a8c1c04b879ecb7c6f63180
CRs-Fixed: 944530
qcacld-2.0 to qcacld-3.0 propagation
Add INI params gEdcaVoCwmin, gEdcaViCwmin, gEdcaBkCwmin,
gEdcaBeCwmin, gEdcaVoCwmax, gEdcaViCwmax, gEdcaBkCwmax,
gEdcaBeCwmax, gEdcaVoAifs, gEdcaViAifs, gEdcaBkAifs and
gEdcaBeAifs to control edca params for STA mode.
These params will overwrite the values from AP only if
gEnableEdcaParams is set.
Change-Id: I1e688a67df320208416aba4ca40fd870a947e3be
CRs-Fixed: 996685
Replace CNSS/ICNSS APIs with PLD APIs for PCIE/SNOC.
SDIO/USB changes need to be done separately by adding
SDIO/USB support in PLD
Change-Id: I0d2446e57922254369b7e7ca69d900006f7a7e28
CRs-Fixed: 1000113
PLD is a interface between CLD and CNSS/ICNSS. It hides
CNSS/ICNSS APIs from CLD and provides a set of common APIs.
CLD modules should use these PLD APIs instead of calling
CNSS/ICNSS platform APIs.
Replace all CNSS/ICNSS APIs with PLD APIs in BMI.
CRs-Fixed: 1013853
Change-Id: I1e244ec9f9fd604a9b231b6ff1085f7b6b4bab22
A race condition has been observed between outgoing TX traffic and
peer deletion when DUT has concurrent SAP(DBS) and STA sessions in 5G
and 2G respectively and the peer connected to SAP moves away triggering
peer deletion at DUT. Due to peer being deleted, the vdev corresponding
to the peer is void which results in a crash in ol_tx_data function
while trying to send Tx data.
Fix crash by checking for a null vdev in ol_tx_data.
CRs-Fixed: 1012681
Change-Id: Id0aab4b1f03ed24dfb55e09fa1a115edfdfcce84
qcacld-2.0 to qcacld-3.0 propagation.
NAN Data Path WMI changes DATA END and CONFIRM messages
Change-Id: I6edaff37931db83d057e1ddb1e9952e2b0dc87aa
CRs-Fixed: 865207
qcacld-2.0 to qcacld-3.0 propagation.
WMI changes to handle action frames of different category in WoW mode
Change-Id: Icbf9ad7cac93dd75ddb976a0f781e20b60201896
CRs-Fixed: 865207
qcacld-2.0 to qcacld-3.0 propagation.
WMI service flag for half-rate + quarter-rate support
Change-Id: I6109a2e5f347c88f7696dadfe85a8ca4364cb0d7
CRs-Fixed: 865207
qcacld-2.0 to qcacld-3.0 propagation.
Add WMI interface changes to send buckets_scanned bitmask per each scan
cache entry that is sent when WMI_EXTSCAN_GET_CACHED_RESULTS_CMDID
Change-Id: I284e6044c713c48dd3887852e1d1f6e8f85439a7
CRs-Fixed: 865207
qcacld-2.0 to qcacld-3.0 propagation.
Add new TLV tx_time_per_tpc_extended which is array of A_UINT32
to support tpc_levels more than MAX_TPC_LEVELS in
wmi_radio_link_stats_event_fixed_param Migrating Timekeeper debug
log identifiers into the NaN module.
This change set also includes dbglog id change from CL 1440161.
Change-Id: I127bb10c989c0d7ee8a0f9cc9c57e2c824017165
CRs-Fixed: 865207
qcacld-2.0 to qcacld-3.0 propagation.
NAN Data path interface revamp to support backward compatibility
Change-Id: I3bf01c32d6423326fbb25db42d527ac7854f23d8
CRs-Fixed: 865207
Free body pointer of messages pending in deferred
queue during driver unload to avoid memory leak.
Change-Id: I73e0e3f675728aa653c2c4f5d2291c260b339987
CRs-Fixed: 1003001
qcacld-2.0 to qcacld-3.0 propagation.
Dynamically allocate hdd_txrx_hist to reduce size
of HDD context and avoid order 4 memory allocation
from kernel.
Change-Id: I04dd8f3cdb7f401fb761262bd34b0a2177f6097f
CRs-Fixed: 950790
qcacld-2.0 to qcacld-3.0 propagation.
Do not allocate single large chunk of memory for rx hash
to avoid memory allocation failure. This change uses array
of pointers to reduce single large chunck of allocation.
Change-Id: I2aa7239be924b63c87f1044a74176a101d952108
CRs-Fixed: 954302
Add logic to calculate pause and unpause time for
network queues to debug data path issues.
Change-Id: I825b10837d999384a91ca3c2271e472a71fd8863
CRs-Fixed: 999861
Add histogram for MSDUs per HTT RX indication
message and update drop counters in RX path.
Change-Id: Ia861f6cd3d6a91f01a07f9bc4e2bc3afcf62c8f2
CRs-Fixed: 999861
Add target bus type field in qdf context, as bus type
needs to accessed at multiple layer.
Change-Id: I62b23d68743fedf205bb3859c0de50568ca09b7a
CRs-Fixed: 1009993
Add support to enable WISA feature using QCA_NL80211_VENDOR_SUBCMD_WISA
and do scan blocking on WISA mode interface.
Change-Id: Ief105310fb71779b1a8c1d580408a489cad9977e
CRs-fixed: 997798
qcacld-2.0 to qcacld-3.0 propagation.
Add support for scenario debug logging
WMI changes to control WISA features of firmware from host.
Change-Id: I01d96c423b6241248242aa2feae6887d8f202691
CRs-Fixed: 865207
qcacld-2.0 to qcacld-3.0 propagation.
Add MAC phy, Hardware mode, soc mac hardware, soc hal reg capabilities.
Change-Id: I7ce118d5e9c4d762ef900dc4b9b0137a76e66091
CRs-Fixed: 865207
1) Store the last roam synch delay incurred for the most
latest roaming instance.
2) Provide an ioctl "iwpriv wlan0 hostroamdelay" to fetch
the delay
CRs-Fixed: 1012891
Change-Id: Ibbfb8d17e68dcd84ca645ec3bccf25fd84acaa18
Remove csr_neighbor_roam_offload_update_preauth_list which is
unused currently after roam synch propagation optimization for
LFR3.0 has been done.
CRs-Fixed: 1007810
Change-Id: Icc8ef8a882813d980f05314cf07a379e607323ad
Remove unused code of sending probe request template to
firmware which is a legacy code where Scan was not
completely offloaded to firmware.
CRs-Fixed: 1007810
Change-Id: I8c876bdb696f70452354f5f84b504b4a6564c479
qcacld-2.0 to qcacld-3.0 propagation
Auto Shutdown cancel indication is needed to identify if a
driver is active in multi wlan radio platforms. Userspace
application processing auto shutdown event combines these events
from multiple drivers to arrive at system idle condition for
auto shutdown.
Change-Id: Icc51386bde58d3882e36ab09cd31a527b140a937
CRs-fixed: 1001128
If lro_disable is called after cds_close, which is the case
for module unloads, then many of the pointers used in dereg
sequence are NULL (CE_state, hif, txrx_pdev). There is a case,
when interfaces are removed, when these pointers are there.
Check pointers before using them in dereg code.
Update hif_map_service_to_pipe so that it will return E_INVAL if
the service is not in the table. Add logs for cases where either
leg information is not updated on return.
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
Change-Id: I5b88a297134dcc1d7a6a68dd2a9879dfd1553a7e
CRs-Fixed: 1014428
The structure is taking too much of a space and pre-alloc was
failing for a single allocation for ol_txrx_pdev. Shrunk the
structure from 112 KB to 12 KB.
This update has a corresponding update in qcacmn.
Change-Id: I358e74b47165fa08cb5d37f095b44bff3f83fdfc
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
CRs-fixed: 1012346
During a recent merge, a frame type was being set to a similar
looking value (ol_tx_spec_no_free instead of ol_tx_frm_no_free) and
this is causing crashes on tx-completion.
Also capitalize the constants.
This is a stability CR.
Change-Id: Ic86dafc5baa80ae634c5267794f3add0e06d076f
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
CRs-fixed: 1010581
qdf_wait_single_event expects msecs as the timeout value.
However, two references in dp, second of which is this instance,
passes the value in ticks. This causes the value to be converted
to msecs a second time by the function and hence an incorrect
timeout value.
The other instance is in the qcacmn project.
Change-Id: I11c36ecf54b04cf1e3671a86594822b39b8ccaaf
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
CRs-fixed: 1012345
FW DIAG log events are serialized to MC thread(WMA message queue)
which is causing PE/SME message queues starvation when FW is
generating flood of debug log events. Since WMA message queue has
higher priority than PE/SME message queue serialized FW debug log
events eventually lead to SME command queue time out because PE
message queue is starved. Fix this PE/SME message queue starvation
by moving FW diag log event processing to kworker thread.
Change-Id: Ifd8688c61bfdd132a4727d377cfc2e975e5c5b13
CRs-Fixed: 1011762
Update TSF feature for vendor command QCA_NL80211_VENDOR_SUBCMD_TSF
to support TSF operations.
Change-Id: I89abf14b9b7d8ee8fe1c12f7684c87e4dee9bfb0
CRs-fixed: 997799
Fix incorrect handling of additional IE coming from userspace in assoc
response. additonal_ielen field used for the logical checks and buffer
manipulation does not contain correct value which might lead to incorrect
behavior.
Change-Id: I483696d1fa1a731e9afd0a4ea134900d81be7b43
CRs-Fixed: 998427
Fix enum values in cds_ieee80211_common by removing
unused enum values in ieee80211_opmode and updating
_MAX value in ieee80211_phymode.
Change-Id: If46be64fda0edb97881f8ea1bfe919a0a55a250f
CRs-Fixed: 989856
Pass original beacon TSF to user space application. This
TSF is used by the user space application for its internal
processing.
Change-Id: I6c1638801dba2b53cbcb5b1ebc925d6f4e035582
CRs-Fixed: 998544