Commit Graph

20311 Commits

Author SHA1 Message Date
snandini
535b8ad36e Release 5.2.0.194T
Release 5.2.0.194T

Change-Id: I795da64be20a608eae737566c74b75e61003e006
CRs-Fixed: 774533
2020-07-21 00:00:25 -07:00
Abhishek Ambure
d6ac4613c9 qcacld-3.0: Add support to send MSCS ie in assoc req
MSCS enables the establishment of classification using layer 2 and/or
layer 3 signaling to classify incoming individually addressed MSDUs
into streams. The MSCS Descriptor element defines information about
the parameters used to classify streams.
Host gets MSCS IE in set IE user request. Host adds the support to set
MSCS ie in assoc req.

Change-Id: I9c458326ffba3bad58ba27a611f5753afcf0531a
CRs-Fixed: 2732722
2020-07-21 00:00:25 -07:00
snandini
4fbc0dbf41 Release 5.2.0.194S
Release 5.2.0.194S

Change-Id: I41034ca8f632ec08924b9a8c9ed40e5184b2d864
CRs-Fixed: 774533
2020-07-20 21:54:09 -07:00
Gururaj Pandurangi
7792f58388 qcacld-3.0: Enable NAN and NAN datapath by default
The NAN configs gEnableNanSupport and genable_nan_datapath
are being removed from ini config file. So, enable them by
default in .h file.

Change-Id: Ibc1e91e6d010994b5e1419b2241f846e0fde8969
CRs-Fixed: 2710133
2020-07-20 21:54:09 -07:00
snandini
302283db60 Release 5.2.0.194R
Release 5.2.0.194R

Change-Id: Ie3d96f365ca7e3fa8f983aec4049e9490eae22b9
CRs-Fixed: 774533
2020-07-20 19:26:28 -07:00
Amar Singhal
abc1e6922d qcacld-3.0: Check if operating frequency is zero
Operating frequency may not have been filled up yet, from connectiion
profile. Check for the same.

Change-Id: I5f3c28fb855920c6038ce0714e9e0b3c4c21e7ef
CRs-Fixed: 2731261
2020-07-20 19:26:28 -07:00
Wu Gao
c455bb3201 qcacld-3.0: Rename file about enhanced cfr
This Kbuild change is about rename file of enhanced cfr.

Change-Id: I78d12998d5d320be7cd1e033dc04e88aa7402ddd
CRs-Fixed: 2734636
2020-07-20 19:26:24 -07:00
snandini
cbcd9c4696 Release 5.2.0.194Q
Release 5.2.0.194Q

Change-Id: I3f83c807fd911aac74681c5af605a8486e767151
CRs-Fixed: 774533
2020-07-20 17:15:39 -07:00
gaurank kathpalia
9f7c94b95b qcacld-3.0: Consider old peer phymode to set the new phymode
If peer phymode is not same as vdev phymode on channel switch the
peer phymode is updated with vdev phymode.

It should consider the prev peer phymode to calculate the new
phymode.

Change-Id: I33b57ad991a5899742e7aa4334089762cd325c59
CRs-Fixed: 2736158
2020-07-20 17:15:38 -07:00
Jianmin Zhu
eb5898e905 qcacld-3.0: Fix data stall after sta roaming disabled and reconnection
When reassociate, roaming is disabled by wpa_supplicant, but RSO stop
reason REASON_SUPPLICANT_DISABLED_ROAMING is ignored and roam scan mode
isn't cleared to 0 before vdev WMI_ROAM_FW_OFFLOAD_ENABLE_FLAG flag is
cleared. Then host can't receive peer unmap/map event when wlan disconnect
and reconnect, host dp peer id isn't updated, Rx frames are dropped for
peer id mismatch.

Fix: When roaming is disabled, make sure roam scan mode is cleared to 0
before vdev WMI_ROAM_FW_OFFLOAD_ENABLE_FLAG flag is cleared.

Change-Id: Ia471998cf631948d8ffa701e67fcee22eebb0fa0
CRs-Fixed: 2734351
2020-07-20 17:15:35 -07:00
snandini
9462782f9b Release 5.2.0.194P
Release 5.2.0.194P

Change-Id: I96b354c96a3db5e727dee82226d74d94f25a9ffd
CRs-Fixed: 774533
2020-07-20 07:52:24 -07:00
Rakesh Pillai
9f72aa9c82 qcacld-3.0: Fix use-after-free when skb is copied
When we receive a packet from the network stack for
transmission, we make a copy of this skb and free the
shared skb before trying to trasnmit it.

Currently the mac address used for tdls operations is
taken as a pointer to the original skb, which gets freed
after the skb_unshare.

Copy the mac address into a local stack memory instead
of using a pointer to the skb data to avoid the
use-after-free condition.

Change-Id: I9f0e6260476d5a41b7209a6a599f50a548b953b5
CRs-Fixed: 2733445
2020-07-20 07:52:22 -07:00
snandini
1d8047fe1d Release 5.2.0.194O
Release 5.2.0.194O

Change-Id: Ic18da589e613bb4cf4b00d130af102c14dfe0773
CRs-Fixed: 774533
2020-07-20 04:46:45 -07:00
Rajeev Kumar
e050826d17 qcacld-3.0: Reduce wow suspend/resume timeout to 4 seconds
Reduce wow suspend/resume timeout to 4 seconds to accommodate
lower DPM WD timeout values. WoW suspend/resume timeout value
should be less than DPM WD timeout.

Change-Id: I481ae544de0d26b49bcc0f5c4d4a384693707a5b
CRs-Fixed: 2730955
2020-07-20 04:46:45 -07:00
Manjunathappa Prakash
73abd412bb qcacld-3.0: Handle raw frames and invalid flow_idx frames
Enable handling to drop the raw Rx frames as both driver and stack
is not expected to handle them.
Handle invalid FISA flow index which is out of valid FISA flow_id range,
This can happen if we are looking at wrong or invalid TLV, in such case
it is OK deliver frame without FISA aggregation.

Change-Id: I746d4ad1ea5ba6d60cbadddb55803626abfb2868
CRs-Fixed: 2733978
2020-07-20 04:46:39 -07:00
snandini
498137d553 Release 5.2.0.194N
Release 5.2.0.194N

Change-Id: I17ac8ac10ba83328e1ed45695cec53ef6323da86
CRs-Fixed: 774533
2020-07-19 06:22:36 -07:00
Pragaspathi Thilagaraj
ef4302f003 qcacld-3.0: Don't allow roam invoke if roaming offload is not initialized
Roam invoke is done by driver if reconnect to same bssid is
received or driver FASTREASSOC command is received from the
supplicant. If roaming module is not initialized at firmware,
then still we send roam invoke to firmware and firmware sends
roam invoke failure as part of which disconnection occurs.

Check if roaming module is initialized at firmware, else return
failure for the reassociation request from userspace.
Send failure only if the kernel version is greater than 4.9,
since the fix to handle reassociation failure is available from
this version.

Change-Id: I0feae326be751e50f7327c91739cd7dddab500e9
CRs-Fixed: 2724686
2020-07-19 06:22:36 -07:00
snandini
67ed9e240b Release 5.2.0.194M
Release 5.2.0.194M

Change-Id: I953b7c5e65b60995bdf6fc66689a0a5b66cad4aa
CRs-Fixed: 774533
2020-07-18 22:30:26 -07:00
Jianmin Zhu
aa74dc19cf qcacld-3.0: back to back roaming disable cmds block wpa supplicant for 2s
If 2 roaming disable commands are sent by wpa supplicant back to back,
2nd won't send RSO STOP to target since RSO STOPPED already, and
disable_lfr_event can't be completed any more since no RSO event from
target until 2s timeout, wpa_supplicant thread and nl80211 are blocked in
wlan_hdd_cfg80211_set_fast_roaming for 2s too.

Fix:
If roaming is stopped by wpa_supplicant already and to be disabled again,
return QDF_STATUS_E_ALREADY in sme_config_fast_roaming.

Change-Id: I7d15a4d4bd8e13ff410a7023f80b418eea435fcc
CRs-Fixed: 2733945
2020-07-18 22:30:26 -07:00
snandini
5ae41b1834 Release 5.2.0.194L
Release 5.2.0.194L

Change-Id: I49f0baff1aaa4761a6a6610e680925be6d793260
CRs-Fixed: 774533
2020-07-18 18:13:46 -07:00
Alok Kumar
e338900121 qcacld-3.0: Enable packet log by default for QCA6750
Enable packet log by default for QCA6750.

Change-Id: I36ff2741820f60f039364f89d468b1d3c04538e7
CRs-Fixed: 2732820
2020-07-18 18:13:46 -07:00
gaurank kathpalia
db2239f025 qcacld-3.0: Avoid copying individual params of score config
With same structure used in src and destination use memcopy
instead of individual assignment of the params in
csr_update_score_params

Change-Id: I18a459824e12ea6e599cf4363a0a569ba6b98045
CRs-Fixed: 2734503
2020-07-18 18:13:41 -07:00
Pragaspathi Thilagaraj
1e50d68658 qcacld-3.0: Fix null pointer dereference of lim_join_req
In lim_populate_peer_rate_set(), bss description is obtained by
dereferencing the bss descriptor from session->lim_join_req.
But in LFR-3.0 roaming case, the lim_join_req will be NULL, since
roaming is south bound operation and there is no csr join request
message after roam. So this results in NULL pointer dereference
of bss_description in lim_populate_peer_rate_set() while
handling LFR-3.0 roam synch indication event.

Pass the correct bss descriptor from caller to ensure that valid
bss descriptor is passed to the lim_populate_peer_rate_set() api.

Change-Id: I3af915d5753c7aa054dc6d8766e51fd62c8314bb
CRs-Fixed: 2733807
2020-07-18 18:13:36 -07:00
Huashan Qu
7277418aa5 qcacld-3.0: Move rso related process to connection manager [PART 1]
Add macro ROAM_OFFLOAD_V1 for new code and implement below functions
for connection manager roam part:

csr_handle_roam_state_change() roam offload state related handler.
Filling WMI_ROAM_SCAN_RSSI_THRESHOLD cmd parameters related process.

Change-Id: I0351155ca5a3d68ade6568c7527c5708582ccf1a
CRs-Fixed: 2730826
2020-07-18 18:13:31 -07:00
snandini
dfdc94e135 Release 5.2.0.194K
Release 5.2.0.194K

Change-Id: If832bd9c5493e3c3123900106ceb1066a565d7ad
CRs-Fixed: 774533
2020-07-17 23:59:47 -07:00
Chaoli Zhou
4d74e08860 qcacld-3.0: Change Genoa perf config to support cnss2 as dlkm
Add the cnss2 module config to the Genoa perf defconfig
to support cnss2 as dynamic loadable kernel module

Change-Id: I3410bf129edbe7d766a490e6fa104469a18f1187
2020-07-17 23:59:47 -07:00
Srinivas Girigowda
1445904715 qcacld-3.0: Rename file name and function name for sysfs 'dp_trace'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'dp_trace'

Change-Id: Id4e366bea50d1bda95ee02cd7edd02691d0f70c6
CRs-Fixed: 2731064
2020-07-17 23:59:42 -07:00
Srinivas Girigowda
987834feb7 qcacld-3.0: Rename file name and function name for sysfs 'stats'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'stats'

Change-Id: Iffc390d4865977f9eff72a6a4bcf708c014f482e
CRs-Fixed: 2731064
2020-07-17 23:59:38 -07:00
Srinivas Girigowda
d3255f634e qcacld-3.0: Rename file name and function name for sysfs 'range_ext'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'range_ext'

Change-Id: Icf7ebbbcf1b8b219e64d1c9b98f1946069f91322
CRs-Fixed: 2731064
2020-07-17 23:59:34 -07:00
Srinivas Girigowda
d39a796a98 qcacld-3.0: Rename file name and function name for sysfs 'wlan_dbg'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'wlan_dbg'

Change-Id: I7d0e7b67afa701abd64efb62012c218ee4ab158d
CRs-Fixed: 2731064
2020-07-17 23:59:30 -07:00
Srinivas Girigowda
64d1d78340 qcacld-3.0: Rename file name and function name for sysfs 'fw_mode_config'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'fw_mode_config'

Change-Id: Ia389fa8807bbd0e58de58c503d9f3bbbef9ec707
CRs-Fixed: 2731064
2020-07-17 23:59:26 -07:00
Srinivas Girigowda
837ca7fad6 qcacld-3.0: Rename file name and function name for sysfs 'scan_config'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'scan_config'

Change-Id: I6621cbe5571541d073072ef9e0348d771fd3bc4a
CRs-Fixed: 2731064
2020-07-17 23:59:22 -07:00
Srinivas Girigowda
36b00847fc qcacld-3.0: Rename file name and function name for sysfs 'radar'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'radar'

Change-Id: If13effc45323f5a286d8aeb7a8e27848cb3e618b
CRs-Fixed: 2731064
2020-07-17 23:59:18 -07:00
Srinivas Girigowda
c9933da318 qcacld-3.0: Rename file name and function name for sysfs 'tx_stbc'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'tx_stbc'

Change-Id: I274c1405fab7385202431b48d65603c38783222b
CRs-Fixed: 2731064
2020-07-17 23:59:14 -07:00
Srinivas Girigowda
fe1406f727 qcacld-3.0: Rename file name and function name for sysfs 'tdls_peers'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'tdls_peers'

Change-Id: If6aa504dccd22ce0ccff11f3d73ffb1eedb5895c
CRs-Fixed: 2731064
2020-07-17 23:59:11 -07:00
Srinivas Girigowda
82f61cee0f qcacld-3.0: Rename file name and function name for sysfs 'sta_info'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'sta_info'

Change-Id: Ibb13c1496ea1dd5bc3b024b99414ac8d72db3be6
CRs-Fixed: 2731064
2020-07-17 23:59:07 -07:00
Srinivas Girigowda
0770581b30 qcacld-3.0: Rename file name and function name for sysfs 'temperature'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'temperature'

Change-Id: I8f31d59be9954d3ffe1ff7c11d16dd24b9e2644d
CRs-Fixed: 2731064
2020-07-17 23:59:03 -07:00
Srinivas Girigowda
57d6d48573 qcacld-3.0: Rename file name and function name for sysfs 'monitor_mode_channel'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'monitor_mode_channel'

Change-Id: Ic207d6e29c14a0b33ed4982d533a78729d32a4ba
CRs-Fixed: 2731064
2020-07-17 23:59:00 -07:00
Srinivas Girigowda
5883ffbcba qcacld-3.0: Rename file name and function name for sysfs 'channel'
Rename file name and modify function names to keep it inline
with sysfs attribute name 'channel'

Change-Id: I9c73e572bdb80edc3431180448dffd9843d6a720
CRs-Fixed: 2731064
2020-07-17 23:58:56 -07:00
Rakesh Pillai
4009119bf0 qcacld-3.0: Enable rx descriptor cookie invalidate
Enable the build flag to check and invalidate
the rx descriptor cookie

Change-Id: Idb2f55ac876025dceff28778a40b5468bf9688b9
CRs-Fixed: 2730961
2020-07-17 23:58:52 -07:00
snandini
572290af40 Release 5.2.0.194J
Release 5.2.0.194J

Change-Id: If2729e9ebbb898a0fc20ae6b80a4c0afcd6efd11
CRs-Fixed: 774533
2020-07-17 21:25:40 -07:00
Abhinav Kumar
68c001d157 qcacld-3.0: Process Disconnect request from FW
FW sends a disconnect request to HOST while roaming failure
through event WMI_VDEV_DISCONNECT_EVENTID per vdev id.
Fix is:
1. Process WMI_VDEV_DISCONNECT_EVENTID and issue disconnection.
2. Make WMI_VDEV_DISCONNECT_EVENTID event as wakable

Change-Id: Ic1e83aace48a3e8424f23641b0e77c66f4283587
CRs-Fixed: 2731952
2020-07-17 21:25:40 -07:00
snandini
99b810a814 Release 5.2.0.194I
Release 5.2.0.194I

Change-Id: Iee36a54230d294efe63b6a9d6b8d93d014559760
CRs-Fixed: 774533
2020-07-17 17:23:16 -07:00
Ashish Kumar Dhanotiya
4b436bcbc3 qcacld-3.0: Do not block vdev trans if recovery in progress
Currently if SSR happens and at the same time if driver gets
del virtual interface which is a vdev transition, it bloks
this vdev transition and queues into dsc queue assuming that
it will execute once SSR completes.
There is an issue with above assumption,
del virtual interface comes with rtnl lock held which may lead
for other processes to misbehave which are waiting for rtnl lock.
in current case kernel is waiting for rtnl lock to send
shutdown to driver as part of the SSR and this rtnl lock is held
by del virtual interface which is waiting inside dsc queue for
SSR to complete, this leads to the deadlock.

To address above issue, do not insert the vdev transintion in
dsc queue in case of SSR and return the failure instead.

Change-Id: I19c897d68086d885f340d35c686badb70601076a
CRs-Fixed: 2730903
2020-07-17 17:23:16 -07:00
Pragaspathi Thilagaraj
3cceff7853 qcacld-3.0: Strip additional 3 bytes allocated for auth wrapped data
When FILS erp keys are not available, EAP initiate packet will not
be sent to the AP so FILS authentication wrapped data IE is not
required, but the driver is adding extra 3 bytes for wrapped data
even if wrapped data is not included. This will cause issues with
the FILS AP.

Don't allocate bytes for wrapped data if ERP keys are not available.

Change-Id: I9bd8033048829eeaf63ce123129e64f2685df04f
CRs-Fixed: 2732852
2020-07-17 17:23:11 -07:00
snandini
5d28544193 Release 5.2.0.194H
Release 5.2.0.194H

Change-Id: I9c8f15c882a2fe818b6d9800ad74ac113871f16f
CRs-Fixed: 774533
2020-07-17 04:03:45 -07:00
Sachin Ahuja
a69ab56aa6 qcacld-3.0: Check for fw down before reinit complete
Currently reinit resets the recovery in progress flag when
reinit is successul. It may happen that after initial handshake
with FW during reinit, FW crashes and send the FW down indication
to the driver. Driver sets the recovery flag in FW down but it gets
reset on the successul reinit.
Now on subsequent shutdown, driver crashes as recovery flag is
reset by last reinit.

Check for fw down to reset the recovery flag on reinit completion

CRs-Fixed: 2727205
Change-Id: I88effc1211de138351ef9b232645d0c616a9d5dc
2020-07-17 04:03:45 -07:00
Vulupala Shashank Reddy
6c4a3b8d3c qcacld-3.0: Remove unnecessary clone of skb
Mgmt txrx component clones skb and sends cloned
skb to its clients ex: packet capture component.

Remove extra allocation of skb.

Change-Id: Ic130c13c9fcc52f250b52196b86c761d36a77ba2
CRs-Fixed: 2727370
2020-07-17 04:03:41 -07:00
Utkarsh Bhatnagar
be4a6f5365 qcacld-3.0: Add flush cb in TDLS
Add flush cb  using ucfg_tdls_post_msg_flush_cb() for these TDLS functions:

1. ucfg_tdls_add_peer.
2. ucfg_tdls_update_peer.
3. ucfg_tdls_oper.
4. ucfg_set_tdls_offchannel.
5. ucfg_set_tdls_offchan_mode.
6. ucfg_set_tdls_secoffchanneloffset.

Change-Id: Ic53c23c4738dccd7612e12e9da1eb206d5bfe6fb
CRs-Fixed: 2732230
2020-07-17 04:03:36 -07:00
snandini
8b2879d115 Release 5.2.0.194G
Release 5.2.0.194G

Change-Id: I4cf85a491dec85388f8c9ea7f29c0efbe85a43f1
CRs-Fixed: 774533
2020-07-16 23:46:12 -07:00