Commit Graph

20091 Commits

Author SHA1 Message Date
nshrivas
683995bb10 Release 5.2.0.193P
Release 5.2.0.193P

Change-Id: Ic4deb468a6dd775b511f38c087f41022af68fcff
CRs-Fixed: 774533
2020-07-10 13:42:21 -07:00
Pragaspathi Thilagaraj
eb128b5dfe qcacld-3.0: Add roam offload state machine changes
Add changes to handle transition to the 2 new states:
1. Roaming in progress: Switch to this state when roam
start notification is received from firmware.
2. Roam Synch in progress: Switch to this from RSO
STARTED state if roam synch indication event is received
from firmware. Change to this state is also allowed in
RSO STOPPED state if supplicant disabled roaming on that
vdev - to allow roam invoke to be processed.

Also query the state machine to get the roaming status instead
of using discrete flags at various layers. Clean the redundant
roaming in progress, roam synch related flags.

Change-Id: Ide20a30d9d8c20a96d8bba70367b51b8643cae09
CRs-Fixed: 2725443
2020-07-10 13:42:21 -07:00
nshrivas
45d1a5e075 Release 5.2.0.193O
Release 5.2.0.193O

Change-Id: Ic672bda0883d7ed6f36614f54d8093b82ccf14a8
CRs-Fixed: 774533
2020-07-10 07:45:38 -07:00
Min Liu
6296d6d783 qcacld-3.0: Fix type mismatch in set wifi config PHY_MODE
Fix the type mismatch issue in set wifi config PHY_MODE and
refactor related APIs.

Change-Id: I2d84f144766126c54e2ed449d367316b65fc769c
CRs-Fixed: 2706050
2020-07-10 07:45:37 -07:00
Abhishek Ambure
7c07f228f6 qcacld-3.0: Add support of pmf comeback timer for SAE assoc retry
If STA DUT receives assoc response with assoc response status as
eSIR_MAC_TRY_AGAIN_LATER, host starts a pmf comeback timer to
send assoc request again on pmf comeback timer timeout.

Change-Id: Ifb28e44af86daef90db7146572cdfae26dfcaa20
CRs-Fixed: 2728459
2020-07-10 07:45:32 -07:00
nshrivas
91903a81ba Release 5.2.0.193N
Release 5.2.0.193N

Change-Id: I6f22c0cae4f2311ba74201ab76f66b7362dd47d4
CRs-Fixed: 774533
2020-07-10 05:38:45 -07:00
Wu Gao
7a5b681708 qcacld-3.0: Add wow support for TDLS
Prevent wow if TDLS is started, allow wow if TDLS link disabled. This
feature is enabled only if lithium plaform isn't drv supported.

Change-Id: Ie66d62cb139fe9a1d292925a78f2dd861f16ef69
CRs-Fixed: 2716922
2020-07-10 05:38:44 -07:00
Pankaj Singh
9f6679e000 qcacld-3.0: TDLS not releasing the vdev ref taken with WLAN_TDLS_NB_ID
During NAN+TDLS case, when NAN is present dut is trying
to add TDLS peer and the ref is not released which results in
assert due to obj delete timeout.

Fix is to release the ref taken properly in default handing of
tdls serialization cmd and error handling.

Change-ID: Ie3e785f617d320dc88051bf6f22f8e291f120c14
CRs-Fixed: 2728865
2020-07-10 05:38:40 -07:00
nshrivas
9fb1c5b7eb Release 5.2.0.193M
Release 5.2.0.193M

Change-Id: I4e3d1f6f7cddba1b485e450cadafe5de300c408f
CRs-Fixed: 774533
2020-07-09 21:39:34 -07:00
Abhishek Ambure
0a4e3a71ab qcacld-3.0: Add support for assoc retry for SAE assoc timeout
Due to noisy environment, host misses auth and assoc frames which leads
to disconnection. In case of SAE host retires SAE auth if it doesn't get
SAE auth response from AP within 1 second.
To handle SAE assoc response timeout due to noisy environment, host adds
support to reconnect to last BSSID if previous association is timeout.

Change-Id: I71435882e53172e95c873a3216cf649fee9ecd26
CRs-Fixed: 2727340
2020-07-09 21:39:34 -07:00
nshrivas
7c2fc778ef Release 5.2.0.193L
Release 5.2.0.193L

Change-Id: Ib4c2bfadcb87290e46f26f25656079f78274c71b
CRs-Fixed: 774533
2020-07-09 15:54:18 -07:00
sheenam monga
99b51da592 qcacld-3.0: Advertise dpp akm suite in sta mode
Currently, kernel and driver both support dpp akm suite.
but driver doesn't advertise WLAN_AKM_SUITE_DPP_RSN which may
cause issue for WLAN_AKM_SUITE_DPP_RSN supported connection.

Fix: Advertise WLAN_AKM_SUITE_DPP_RSN as supported akm suite
in sta mode.

Change-Id: I5882b310a742c06ad57e97fc24735a9e5021f352
CRs-Fixed: 2726197
2020-07-09 15:54:18 -07:00
Surabhi Vishnoi
1ce2688f28 qcacld-3.0: Add handler for WMI_VDEV_BCN_LATENCY_EVENTID
WMI_VDEV_BCN_LATENCY_EVENTID is sent by firmware when it receives
the latency IE from connected AP in beacon.

Add handler for this event and when latency_level received is ultra
low in latency IE, update request pm qos type PM_QOS_CPU_DMA_LATENCY
to level DISABLE_KRAIT_IDLE_PS_VAL to speed up CPU efficiency and
irq response. This is needed for Voice and Music products where extreme
low latency is needed while playing music and high power consumption is
accepted.

Change-Id: I3c63ef247f4f4a1add68111ef1bcee6daafd148a
CRs-Fixed: 2723205
2020-07-09 15:54:14 -07:00
gaurank kathpalia
f235aec968 qcacld-3.0: Initialize config in sme_update_score_config
Initialize the config variable in sme_update_score_config
to prevent used of un-initialized variable in the same API.

Change-Id: I9a0ca814ffed986f318757a428043d0016d3a6b3
CRs-Fixed: 2726396
2020-07-09 15:54:10 -07:00
nshrivas
c7790a8cb1 Release 5.2.0.193K
Release 5.2.0.193K

Change-Id: I7f700b33d5f1dbcd159689bcae1dcb8e277524f4
CRs-Fixed: 774533
2020-07-09 13:43:27 -07:00
Pankaj Singh
f9b5466cb6 qcacld-3.0: TDLS not releasing the vdev ref taken with WLAN_TDLS_NB_ID
During NAN+TDLS case, when NAN is present dut is trying
to add TDLS peer and the ref is not released which results in
assert due to obj delete timeout.

Fix is to release the ref taken properly in default handing of
tdls serialization cmd and error handling.

Change-ID: Ia1ff16fdde7f70e45b712d260c1eca372ceb947e
CRs-Fixed: 2727206
2020-07-09 13:43:27 -07:00
nshrivas
b45dbd221c Release 5.2.0.193J
Release 5.2.0.193J

Change-Id: I95fa77fd90788f1d1f4f50746b427d85e2b190c6
CRs-Fixed: 774533
2020-07-09 11:32:55 -07:00
Yeshwanth Sriram Guntuka
59e699aa03 qcacld-3.0: Fix possible NULL hdd context dereference
On dp_aggregation sysfs store or show, wiphy is fetched
from hdd context without validation. This could result
in possible NULL hdd context dereference.

Fix is to validate the hdd context before dereference
to get wiphy.

Change-Id: I0d01f64e95c9aa3f09ccc940a64d5a25148c302e
CRs-Fixed: 2726433
2020-07-09 11:32:55 -07:00
Sandeep Puligilla
69a2d503d5 qcacld-3.0: SAP sends broadcast disassoc to STA
SAP sends broadcast disassoc to associated stations
as part of the del station request from userspace.

hdd_softap_deauth_current_sta is sending broadcast
address to SME to send the disassoc frame instead
of associated STA address. Modified API to pass
the STA address.

Change-Id: I1645441804abef3c76f7deeff44ef929684c0bf1
CRs-Fixed: 2726960
2020-07-09 11:32:51 -07:00
Jinwei Chen
ebda2c45c3 qcacld-3.0: stop fisa aggregation if cumulative_ip_len not match msdu_len
If current msdu length - l4 header offset value is not matched with
cumulative IP length delta fetched from HW TLV, stop current fisa
aggregation.

Change-Id: Ia686a638a698d705db3c6bda58e85e4d94f323a1
CRs-Fixed: 2727291
2020-07-09 11:32:48 -07:00
sheenam monga
baca2a3950 qcacld-3.0: Avoid OOB access of weight_list
Currently, function mlme_is_freq_present_in_list calculates
index based on chanel frequency in a loop of num_freq.
But acs_weight array can hold NUM_CHANNELS number of values.
loop index more than NUM_CHANNELS may lead to OOB read issue.

Fix is to add a validation for loop index < NUM_CHANNELS to
avoid any OOB issue.

Change-Id: I3c1d3393cd2a40147c325fea8f76b1db1a51f457
CRs-Fixed: 2727312
2020-07-09 11:32:44 -07:00
nshrivas
5f3b41fac1 Release 5.2.0.193I
Release 5.2.0.193I

Change-Id: I3ce589cef648729065bfd4e1e4661bc59db114fe
CRs-Fixed: 774533
2020-07-09 09:23:58 -07:00
sheenam monga
f288ea9a49 qcacld-3.0: Don't select dot11mode based on band only
Currently, if fw doesn't send phy mode after roaming host itself
calculates phy mode based on band only. Host doesn't consider self
dot11 mode and returns dot11 mode based on 2g band or any other band.
Which may cause different phy modes in fw and host.

Fix: Calculate dot11 based on self dot11 mode, return dot11 mode based
on band only if self dot11 mode is not valid.

Change-Id: Ifa320e3bb8a2ae8cffc59c73501c0643dc3b65af
CRs-Fixed: 2725841
2020-07-09 09:23:58 -07:00
Sachin Ahuja
9687cd8708 qcacld-3.0: Add psoc op start for state ctrl param write ops
Race conditon is seen between the mode change and Wifi Off.
When mode change happens, modules are stopped and wmi handle
becomes NULL. As a part of state ctrl param write, BLM module
uses this wmi handle to send the reject ap list to FW.

Add the psoc op start protection for the ops required during
wifi off.

CRs-Fixed: 2722283
Change-Id: I8e8d9ca789dcacf201934105725e677ce9e0a031
2020-07-09 09:23:54 -07:00
Yu Tian
adb7ee6bc0 qcacld-3.0: use sync method in SAP delete peers
when CSA happens, peer delete will not call
SAP de-register flow, of which may lead adapter
sta_info struct dirty. When STA interface is assigned
new peer_id, it has possibility to conflict with
dirty sta_id in adapter sta_info list. So change to
sync peer delete and notify umac to clean sta_info.

Change-Id: I1703b2b45837e0b4c0814e5c95ae7f86b510e1fc
CRs-Fixed: 2713147
2020-07-09 09:23:49 -07:00
nshrivas
37726f0f50 Release 5.2.0.193H
Release 5.2.0.193H

Change-Id: I12304f8cbf808959d83f25b184459cd25048637f
CRs-Fixed: 774533
2020-07-09 07:23:50 -07:00
gaurank kathpalia
8f00249dd4 qcacld-3.0: Remove filling of unused dot11_mode in scan filter
Remove filling of unused dot11_mode in scan filter as the
filter logic is not present.

Change-Id: I7a484298db44033e8514a26985c63157af939ae0
CRs-Fixed: 2727064
2020-07-09 07:23:49 -07:00
nshrivas
da030b4d68 Release 5.2.0.193G
Release 5.2.0.193G

Change-Id: If62108466182828e96bcecd265a812921b2cc958
CRs-Fixed: 774533
2020-07-09 03:03:43 -07:00
Guisen Yang
f1d329345f Revert "qcacld-3.0: Include config file only after override"
This reverts Change-Id: I11164995061ee057dfcb3abaef2af2f2d33bfd23.
We need the override configuration in defconfig file. The reverted
change actually disabled the override mechanism. Revert this
change so that the override config will take effect.

Change-Id: I0ffcdcb112e4054dbc2961ba414371fbe5a9e1c3
CRs-Fixed: 2714158
2020-07-09 03:03:42 -07:00
Pragaspathi Thilagaraj
65c1c28045 qcacld-3.0: Add initial roam offload state changes
Rename the existing roam offload states to include
WLAN_ prefix. Add 2 new states:
WLAN_ROAMING_IN_PROG - Roaming has started at firmware, this is
                       after candidate selection at firmware.

WLAN_ROAM_SYNCH_IN_PROG - State after handoff is complete at
                          firmware.

Also move the roam_offload_state enum to connection manager.

Change-Id: Ib1f38d200393849253893113172cdfc69e381fb3
CRs-Fixed: 2725387
2020-07-09 03:03:39 -07:00
nshrivas
5fc44e8a64 Release 5.2.0.193F
Release 5.2.0.193F

Change-Id: I75f52bb2fa41ce5a0cdabd32edf55b5c33282056
CRs-Fixed: 774533
2020-07-09 01:03:07 -07:00
Abhishek Ambure
6dad04b744 qcacld-3.0: Add support to set roam scan freq in specific list
User configures roam scan frequencies using vendor roaming sub command
QCA_WLAN_VENDOR_ROAMING_SUBCMD_CONTROL_SET. If the roam scan frequency
list type is QCA_SPECIFIC_SCAN_FREQ_LIST in user command, update specific
roam scan channel list in host and FW.

Change-Id: Ie9d30999a7cdfdd6fa4d97c64b09d9739dd39633
CRs-Fixed: 2725832
2020-07-09 01:03:07 -07:00
Jingxiang Ge
da272dd932 qcacld-3.0: Move wmm dscp init to hdd_wmm_adapter_init
Currently wmm dscp will be called when open adapter,
as wmm dscp will send wmi cmd to fw, it is not right
place as adapter not yet started.

Move wmm dscp init to hdd_wmm_adapter_init, which
adapter vdev has been created.

Change-Id: I41b5e79d0b28ead9c449612ca2d2ed7529b3495f
CRs-Fixed: 2725883
2020-07-09 01:03:03 -07:00
nshrivas
87adaf0a9b Release 5.2.0.193E
Release 5.2.0.193E

Change-Id: I8fff70541bb151d4c9c9dceea4bab382c2efb7b3
CRs-Fixed: 774533
2020-07-08 23:02:34 -07:00
Jingxiang Ge
ea468c6c52 qcacld-3.0: cleanup dfs cac timer for p2pgo in SSR
There is possible dfs cac timer start on p2pgo,
then ssr happens, which cause timer leak.

Clean up dfs cac timer when stop adapter.

Change-Id: I8fe67420196ac752941476312caa7a80f2b3e264
CRs-Fixed: 2720896
2020-07-08 23:02:34 -07:00
nshrivas
2353e15e58 Release 5.2.0.193D
Release 5.2.0.193D

Change-Id: I0516408a64f1f6b96c750bb05c3035971912b0da
CRs-Fixed: 774533
2020-07-08 18:55:48 -07:00
Srinivas Dasari
c2b4e154f3 qcacld-3.0: Ini bitmap to enable/disable a particular NAN feature
NAN protocol runs in firmware and controlled by framework.
Framework configures multiple NAN discovery params while enabling
NAN. Framework configurations would be based on the framework
constraints or realtime scenarios like resource(memory/power/..)
consumption. But some of these params might need to be controlled
explicitly based on the usage.
NAN DW is one such parameter, which is configured as 4 seconds
when the device is in sync role and the screen is off. But
for some usecases, this param might have to be 512ms always
irrespective of screen off/on for some targets. Add an ini param
"nan_feature_config" to set a bit to indicate firmware whether to
honor framework configured DW value or the firmware default value.
Send the vdev param on NAN supported vdev by setting the "bit 0"
to indicate firmware to allow framework configured DW value.
If this bit is not set, firmware shall consider its default value.

Change-Id: I0476bca2bbe676beccfff207f5b4ea31e89031e2
CRs-Fixed: 2721970
2020-07-08 18:55:48 -07:00
nshrivas
d001e72975 Release 5.2.0.193C
Release 5.2.0.193C

Change-Id: I90bbffde3d949fcd69e8466ca4808968c6b8c858
CRs-Fixed: 774533
2020-07-08 06:51:42 -07:00
Li Feng
0e6dc924e5 qcacld-3.0: Add ini entry for wow pulse configuration
qcacld-2.0 to qcacld-3.0 propagation

Add ini entry to configure wow pulse repetition count
and wow pulse init level.

Change-Id: Ic23d2ae80f6f0adef9f35bfef5a59eb0220c70ae
CRs-Fixed: 2722997
2020-07-08 06:51:42 -07:00
Sourav Mohapatra
95ea7c675f qcacld-3.0: Limit the number of times get_tx_power can come
Currently in the driver, there is no limit on how many number of times
get_tx_power can be requested by the userspace. This can lead to
potential issues where the firmware crashes due to excessive stats
request.

Add a time based rate limiting logic wherein the function call only
sends request to the firmware once in three seconds. In other cases, it
returns the cached value present in the adapter.

Change-Id: I65f23135d88c66e6438484715dafce3def14ddb3
CRs-Fixed: 2717633
2020-07-08 06:51:38 -07:00
nshrivas
8597091832 Release 5.2.0.193B
Release 5.2.0.193B

Change-Id: Ibaa2fa27dba8abec145a9f2ae4bbbddb14551999
CRs-Fixed: 774533
2020-07-08 04:52:26 -07:00
Yeshwanth Sriram Guntuka
c719f2d546 qcacld-3.0: Parse data stall info for appropriate trigger reason
Data stall info received as part of wmi debug msg flush
event is parsed for all reasons. Since fw populates this
info only when the reason is data_stall_trigger, in all
other cases this info would be garbage values and is sent
to userspace.

Fix is to parse data stall info only for the appropriate
trigger reason.

Change-Id: I70004e5825e67df375e9bc14c2db2a398d860c97
CRs-Fixed: 2724248
2020-07-08 04:52:25 -07:00
nshrivas
1cb73d1aed Release 5.2.0.193A
Release 5.2.0.193A

Change-Id: I52a34ed04aab9278bcf68f730381289968554dd9
CRs-Fixed: 774533
2020-07-08 02:14:07 -07:00
Jinwei Chen
e3c87d96ac qcacld-3.0: refine FISA aggregation
Refine FISA aggregation as below,
(1) add aggregate count checking, if current msdu aggregate count
is not equal to last msdu aggregate count + 1, stop current fisa
flow aggregation.
(2) only if current msdu cumultive ip length is > last
msdu cumultive ip length and <= last msdu cumultive ip length
+ 1478, then continue the FISA aggregation.
(3) support variable GSO size UDP aggregation.

Change-Id: Ie86b46c09b1cd8ca5a5c7ad3c1349d4e0d876203
CRs-Fixed: 2724215
2020-07-08 02:14:07 -07:00
Pragaspathi Thilagaraj
df22e92942 qcacld-3.0: Add support for FILS pmksa caching without ERP keys
For FILS pmksa caching, the STA can use the PMKSA cached as
part of the full 802.1x connection. When FILS PMKSA caching
is used, the supplicant might not send the ERP keys in the
connect request. So add support to allow connection when
ERP keys are not received in connect request but FILS
PMK is present in the cache.
If the PMK cache lookup is successful for the bssid,
use pmksa caching to associate, else fallback to full 802.1x
to associate to the BSS.

Change-Id: I9fa67ee5978b7199da1cb638f7f321baed6e5913
CRs-Fixed: 2710402
2020-07-08 02:14:03 -07:00
nshrivas
b12f188b2c Release 5.2.0.193
Release 5.2.0.193

Change-Id: I54fd0429356c85dca492719b48203a7ba14e0630
CRs-Fixed: 774533
2020-07-08 00:09:38 -07:00
Alan Chen
df0f3aff28 qcacld-3.0: Complete qdf wait events during fw down
Complete qdf wait events during fw down to avoid higher layer timeouts.

Change-Id: Ibb6bb8a3acd9edc488975952c015d6221f737923
CRs-Fixed: 2726398
2020-07-08 00:09:37 -07:00
Abhishek Singh
4b9273d712 qcacld-3.0: use crypto from vdev to fill the scan filter
use crypto from vdev to fill the scan filter.

Change-Id: I2c4bd9b85d9dac14c4d331a84cc7f3307d06818d
CRs-Fixed: 2718080
2020-07-08 00:09:34 -07:00
nshrivas
cc554981a4 Release 5.2.0.192Z
Release 5.2.0.192Z

Change-Id: I2adda25040dc39b03aed8b896b9733e01b669f81
CRs-Fixed: 774533
2020-07-07 21:38:33 -07:00
Srinivas Girigowda
942799962e qcacld-3.0: Check for NULL pointer before de-referencing it
Pointer 'hif_ctx' returned from call to function 'cds_get_context'
may be NULL. Check for NULL pointer before de-referencing it.

Change-Id: I9d34d877783b35829faf2049c3c8c43519e12914
CRs-Fixed: 2726468
2020-07-07 21:38:33 -07:00