Change to collect arp packet stats along with
existing hdd stats to debug arp packet related
issues.
Change-Id: Idce70799bd3698dc8a8ecd8cfc8ef7d9bf1f5764
CRs-Fixed: 2019787
qcacld-2.0 to qcacld-3.0 propagation.
Validate the avoid frequency channel list of
QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY command and update the
driver's unsafe channel list with the channels received in the command.
Change-Id: I1a10e668bf6fe6dbb22f7f2f8aef929fc6e7fc65
CRs-Fixed: 2187477
The Android Packet Filter (APF) is the preferred method for filtering
packets, but the legacy Packet Filter may also be used. In order to
encourage the use of APF over Packet Filter, disable Packet Filter by
default. Customers may still enable Packet Filter via setting
gDisablePacketFilter=0 via ini configuration.
Change-Id: I581a4001167571efbc7c1c1738c5585e4bde0611
CRs-Fixed: 2195111
If force SCC is enabled and there is a STA connection, trim the
ACS channel list on the band on which STA connection is present.
Change-Id: Ibd580a7afdcdfc5fb4398ada547565e229d59c70
CRs-Fixed: 2191792
After successful connection, if interface down(STA) happens on DUT
and if AP changes data rates before interface up happens, there
is a possibility of STA to send packets at older data rates, because
of holding older scan results in SME scan cache. This results in using
stale scan result even after wifi turn off and on. If stale scan result
is used and if AP has updated some params like rates DUT will not be
using those supported rates for tx which is an issue.
To mitigate this issue, flush scan results on STA interface down.
Also, make sure there are no other STA interfaces before flushing
scan results.
Change-Id: I3505c128276fa8e5e05ea5d9110eb75275a746e9
CRs-Fixed: 2171523
Add ini support to Enable/Disable chain selection optimization
for one chain dtim.
Change-Id: I95999a4204f2d978abc9951688332400b9670f0e
CRs-Fixed: 2189150
In SSR or driver unloading case, directly exit may cause obj
leak. Free the objects in those cases, regardless of
sme_close_session status
Change-Id: Iaf0500aca23917f84c37848cd3abade66b7d7456
CRs-Fixed: 2187579
Is firmware down check is added explicity in some api's and insome
northbound interfaces it is not added resulting in waiting for
firmware response even when the firmware is down.
Move firmware down check to validate context umbrella where
other driver states are validated.
Change-Id: I42a520f8a573825fde55a40dd03bb942f8a34b9c
CRs-Fixed: 2188938
Currently in case of static driver, wififtmd which writes into the
bootwlan and wifi-service which writes into the state_ctrl_param
executes in parallel. The handler of boot_wlan and state_ctrl_param
in driver intialize this wlan_start_comp variable and wait for its
completion. If one handler is already waiting on this event and other
handler reinitalize the event then it leads to the instability.
To mitigate this issue
1) set the driver loaded state to true and then complete the
wlan_start_comp event.
2) create the state_ctrl_param fs only once the boot_wlan handler
wait is completed for probe.
CRs-Fixed: 2158126
Change-Id: Ia51811a0dd2c5b52f7eee781c4d4620174de3649
If command type is FTM_IOCTL_UNIFIED_UTF_RSP set copy_to_user
flag to return proper data to userspace.
Change-Id: I5f4a1e147f3d1dc162001ceb69fa6823b3158787
CRs-Fixed: 2191046
HDD IOCTL __iw_setnone_getint is not releasing SME config memory
in error case properly and hence leading to memory leak. Fix this
SME config memory leak by properly freeing it before returning from
__iw_setnone_getint.
Change-Id: Ie50259a639edb2cfa63cd3bbe7cac8bb8ebb7654
CRs-Fixed: 2191041
Currently, driver allows multiple acs scan requests at a time. Due to this
race conditions can occur and causes "use after free" issue for variable
channelList. To avoid race condition, driver should allow only one acs scan
request at a time.
Add a new atomic variable to make sure that if one acs scan request
is in process, the driver should reject all further acs scan requests.
Change-Id: I7aa2f4df0dd4c6ca8ff791fe462d142fc7b3e691
CRs-Fixed: 2176354
Currently in hdd_get_sta_connection_in_progress, conn_info.uIsAuthenticated
is used to check if the STA connection is in progress. However, this might
not reflect the actual state and might still lead to the deadlock scenario
fixed in I23ad1fc96882abeaae2d1b051659ea6d24b07428.
Add new API to check for SME state for key exchange in progress and
use it in hdd_get_sta_connection_in_progress.
Change-Id: I7d6199ed8c81a113c4e3f30538d74fb675e730ff
CRs-Fixed: 2189814
Reduce the minimum value for the ini nr_offload_cache_timeout to
5 seconds.
This is done to give the user a shorter cache_timeout to trigger
neighbor report frames more frequently.
Change-Id: Ica5359b9e826dad382868de991dcbf204c10a096
CRs-Fixed: 2189034
Update the HE STBC capabilty per latest spec and add support
to configure it using INI configuration and ioctl.
Change-Id: I4ecc7b600671c132c1f3968a10fb652a4311f484
CRs-Fixed: 2181114
Before VDEV_STOP is initiated by host, sometimes there are
outstanding mgmt tx pkts left in FW. need wait all tx
complete, or peer vdev ref count keep held. In P2P GO/SAP mode,
no wait since wma->interfaces[session_id].delay_before_vdev_stop
is 0, ini relative cfg isn't passed to wma at all.
Change-Id: I1c3d137bb08624e30cc220e0fa0e31e6d6fc8a9d
CRs-Fixed: 2184096
Change CFG_VHT_ENABLE_1x1_TX/RX_CHAINMASK_DEFAULT to 0 which
indicates to don't care setting.
Change-Id: Ic16a2eba471bdfb77ecc0329c67b36b65a3b3489
CRs-Fixed: 2184433
CONFIG_GENL is not defined in some target
builds which is causing wlan load failure
with deubg message unknown symbol.
Fix the build load failures.
Change-Id: I448e405b099788c4c83303d9abdee9f7c1e45261
CRs-Fixed: 2188593
If 11ac override is enabled, change hw moed to 11ac and channel width
to the value defined in vht channel width ini. If channel list received
from hostapd contains only 2.4 Ghz channels, mismatch happens as hw mode
is 11ac but the channel list contains only 2.4 Ghz channels and no 5Ghz
channel.
Do 11ac override only when the channel list received from hostapd contains
5Ghz channel(s).
Change-Id: I28d9af3fed4b8487b50a4442221c1c880fe14c13
CRs-Fixed: 2186710
Add null check for pdev after cds_get_context, while
retrieving the context maintained by CDS
Change-Id: I2d6de7d5ad2a46139b2594cf966f2c083c9bb4b4
CRs-Fixed: 2187396
During init and deinit, the driver performs memdymp_init and
memdump_deinit. These are not done for the case when driver is in
FTM mode. In the present scenario, unloading the driver while in
FTM mode and then reloading causes problem.
Allow memdump_init and memdump_deinit to occur while the driver is
in FTM mode.
Change-Id: I4bed1bf76ee19612da9c27fe6cebb586ef7e542b
CRs-Fixed: 2170695
IPA Rx suspend command could be timed out because IPA Tx pipe stalls
due to FW WDI Tx pipe is already suspended beforehand.
Fix this by sending IPA Tx pipe suspend before FW WDI suspend.
Change-Id: I50c357ca0f8ddfcc1a51ad4ed040961daf052459
CRs-Fixed: 2177445
PANIC_ON_BUG is currently enabled for all WLAN builds. While a customer
can, and should, disable PANIC_ON_BUG for end user builds, this can be
easily overlooked. Disable PANIC_ON_BUG by default on pure performance
builds, to avoid accidentally crashing end user devices. Customers can
opt-in to PANIC_ON_BUG as needed for validation on performance builds.
Change-Id: I79371206b20b978f4e61954c2f49bbb7b07ba95e
CRs-Fixed: 2186099
hdd_softap_hard_start_xmit has cds_ssr_protect so prevent it running at
point of cds_wait_for_external_threads_completion in wlan_hdd_remove,
but after that hdd_softap_hard_start_xmit still inject in, it will
cause race condition between tx and unloading deinit.
Fix it by checking driver load/unload status at the beginning of
__hdd_softap_hard_start_xmit, and similar change for sta mode.
Change-Id: Ic3c72debb81fdfb8adca4e90bd9436f3a68eea11
CRs-Fixed: 2174243
In STA+SAP concurrency, when the STA connection is in progress or set_key
is in progress, the set_hw_mode command to SME is queued and would be
processed only after the connection is complete. Meanwhile, when a stop
SAP is received and SAP Dissassociate STA is triggered from HDD, the
command is queued in SME and cannot be processed until STA connection
is done. The add_key command from the supplicant is also stuck as the
previous stop_ap command is in progress leading to a deadlock. When the
AP sends deauth to the STA due to 4 Way Handshake failure, the STA is
reset and then the stop SAP command proceeds, followed by another
connection for the STA.
Disconnect STA interface first if connection or key exchange is in progress
and then stop SAP interface to prevent this deadlock condition.
Change-Id: I23ad1fc96882abeaae2d1b051659ea6d24b07428
CRs-Fixed: 2187070
Move wma_get_buf_start_scan_cmd logic to common code in
ucfg_scan_update_params.
Change-Id: Iaee8ab5b7f0c20867bf37db7509b1c1fab23579d
CRs-Fixed: 2180959
When wiphy is registered with kernel, the kernel call the regulatory
notifier with the last request cached by the kernel. The last request
is initialized to world mode. So for the first time registration,
ignore the kernel callback.
Change-Id: I8c6070eebac4c04145e51daaecb7745f331f58b1
CRs-Fixed: 2174245
Currently driver created reg database instead of
db.txt for reg no-offload case.
Change-Id: Ia7853679532ad7536d34b4a4040feffb8566e907
CRs-Fixed: 2174245
When channel list contains all channels from channel 1 to channel
165 and ch width is 80MHz, the channel to be selected as part of
ACS algorithm should be a 5GHz channel as 2.4GHz channels does not
support 80MHz but 2.4GHz channel gets selected with channel
width as 40MHz. Similarly when ch width is 160Mhz, the 160Mhz bonding
can be made only by 36-64 and 100-128 channels but 2.4Ghz channel or
some other 5Ghz channel gets selected as a result of ACS algorithm.
Assign max weight to all the 2.4GHz channels in 80Mhz and to all 2.4 Ghz
channels and 5Ghz channels not in the range 36-64 and 100-128 in 160 Mhz
so that only a valid channel is selected after the ACS algorithm is
completed.
Change-Id: I00c40e5d000a1cf8b79397fd4e361838a60b363d
CRs-Fixed: 2182011
Add DBS check for all chain mask programming. Currently the check
is present only for band specific chain mask parameters.
Change-Id: I415a8e8f666961b90d1cd9130b3c33eecb62c1df
CRs-Fixed: 2184255
In __wlan_hdd_cfg80211_do_acs(), when gAP11ACOverride is 1,
it sets vht_enabled to 1, hw_mode to 11ac and acs_cfg->ch_width
to the value of ini gVhtChannelWidth. If acs_cfg->end_ch is less
than 14 and acs_cfg->ch_width is 80Mhz, set acs_cfg->ch_width to
40Mhz. As acs_cfg->end_ch is not assigned yet, it is 0 due to
which acs_cfg->ch_width gets assigned to 40Mhz.
Assign acs_cfg->end_ch before use when gAP11ACOverride is 1 in
__wlan_hdd_cfg80211_do_acs().
Change-Id: If8bcc7470c1693791dfc64ec0b6059c09747d739
CRs-Fixed: 2184017
Destroy the node when modules transition from opened to stopped.
Otherwise duplicate creation of node can lead to warning.
Change-Id: Ib1031cfa0572962454b293730fefd7a4b4cf8d09
CRs-Fixed: 2180344
Reverts Change-Id: I1e31ff122f9337c353d8be260b4802cc363790d6
Revert this change until the dependent kernel is change is
merged
Change-Id: Iad0b39f990a840c7901815932b8b5aa2c4c67c95
CRs-Fixed: 2186005
HT MCS index returned by wma_get_mcs_idx function is
between 0 and 7 for both nss equal to 1 and 2. This
results in incorrect HT MCS index for nss 2 case
populated in station stats on using iw station dump
command.
Fix is to set the correct HT MCS index based on nss.
Change-Id: Id4ac51b56bc44e90ea0e7570b387450af83ee8f5
CRs-Fixed: 2182050
Adding an ini for wmi workqueue watchdog, the ini value will
give the timeout value for wmi watchdog timer.
Change-Id: I6338351c8d788478307892152305e10186ead6cb
If hdd_ipa_init failes, driver cleanup is done. But return value
of hdd_ipa_init is not saved and returned to caller. This will
lead to wrong behaviors if following actions depend on the
return value.
Fix is to save return value of hdd_ipa_init.
Change-Id: Iad10733c8fcb7049aa9573ccd1da51250aa7fddf
CRs-Fixed: 2181510