Commit Graph

9160 Commits

Author SHA1 Message Date
Abhishek Singh
f723e3d31a qcacld-3.0: Cleanup the legacy scan code
Cleanup the unused legacy scan code.

Change-Id: Ia45cf0310c506d3cf6b897b31f9d28b4fac3197c
CRs-Fixed: 2193917
2018-02-22 09:57:12 +05:30
snandini
658b2c74e4 Release 5.2.0.66Z
Release 5.2.0.66Z

Change-Id: Id8707e1e3313485ad96feb07a8c12e589c276201
CRs-Fixed: 774533
2018-02-21 19:27:40 -08:00
Kiran Kumar Lokere
a934561748 qcacld-3.0: Add support to configure BA operating mode
Add support to configure BA operating mode using nl command

Change-Id: Ibc566d7e090b5f54636b8029e0e8eef9d26c9ad8
CRs-Fixed: 2181889
2018-02-21 19:27:40 -08:00
snandini
e98e97774b Release 5.2.0.66Y
Release 5.2.0.66Y

Change-Id: I50e32e73e377cf83658e74b5971dc24c592319b4
CRs-Fixed: 774533
2018-02-21 17:12:23 -08:00
Kabilan Kannan
b867c313fe qcacld-3.0: Fix TDLS memory leak in SSR and driver unload
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
2018-02-21 17:12:22 -08:00
snandini
567e109c81 Release 5.2.0.66X
Release 5.2.0.66X

Change-Id: I9ded909060f9b327a14f334f0471d9cc2aa661a8
CRs-Fixed: 774533
2018-02-21 15:24:24 -08:00
Yeshwanth Sriram Guntuka
273889e7cc qcacld-3.0: Update bss count based on channel offset only for same band
In sap_update_rssi_bsscount, bss count for channels is
incremented based on offset only and does not consider
if channel on which scan result is received and the
offset channel belong to same band. This could result
in incorrect increment of bss count for some channels
when channels from both bands are present.

Fix is to increment bss count based on channel offset
only if both channels belong to same band and also
choose channel with lower bss count among the channels
having least weight.

Change-Id: Icee978fc40047782c79fe36cba29e3feed3c90aa
CRs-Fixed: 2191324
2018-02-21 15:24:23 -08:00
Vignesh Viswanathan
a842b94f04 qcacld-3.0: Free LIM Deauth/Disassoc requests during lim cleanup
If Deauth/Disassoc timer is currently running when lim_cleanup
happens due to SSR, the memory allocated for Disassoc/Deauth Req in
mac context is not freed leading to memory leak.

Free Deauth/Disassoc Requests stored in mac context in lim_cleanup
Also check for existing Deauth/Disassoc Request pointers stored in
mac context and free it before assigning it to point to the
current request.

Change-Id: Id7e221bd9d5061ecaa9b73a4fe1dc0f465f68aa9
CRs-Fixed: 2191131
2018-02-21 15:24:21 -08:00
Vignesh Viswanathan
08ad8a0a34 qcacld-3.0: Add vdev_id sanity check in wma_vdev_stop_resp_handler
In function wma_vdev_stop_resp_handler, resp_event->vdev_id is
received from the FW and is used to access the interfaces array in
wma_handle. This could lead to OOB read/write if the vdev_id
received from the FW is greater than or equal to max_bssid.

Add check to return failure if resp_event->vdev_id is greater than
or equal to max_bssid in wma_vdev_stop_resp_handler

Change-Id: I1af5312e6c45db3b9ba03fbf45de3d3c2a7fab20
CRs-Fixed: 2185477
2018-02-21 15:24:18 -08:00
snandini
e2e29b170f Release 5.2.0.66W
Release 5.2.0.66W

Change-Id: I629bf73393d560579a9dff5d8265f40a53d32938
CRs-Fixed: 774533
2018-02-20 21:47:55 -08:00
Arunk Khandavalli
2859fa1f8b qcacld-3.0: Add fw down check to validate context
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
2018-02-20 21:47:55 -08:00
snandini
64a17137ca Release 5.2.0.66V
Release 5.2.0.66V

Change-Id: I519db774a9b61c46ef85f3df9d373573ad2b5355
CRs-Fixed: 774533
2018-02-20 17:54:57 -08:00
Sachin Ahuja
16904db4ef qcacld-3.0: Avoid reinitialization of wlan_start_comp event
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
2018-02-20 17:54:57 -08:00
snandini
b4ad53d198 Release 5.2.0.66U
Release 5.2.0.66U

Change-Id: I5a3a7af592f66d2a61457a331f3ba6508941b7fb
CRs-Fixed: 774533
2018-02-20 17:05:46 -08:00
Abhinav Kumar
9449269c04 qcacld-3.0: Fix to pass appropriate buffer length to unpack RSN IE
In lim_set_rs_nie_wp_aiefrom_sme_start_bss_req_message, length passed
to unpack RSN IE is total length of WPA and RSN IE. So if only WPA IE
is present in assoc request, the RSN IE parser will try to validate the
buffer beyond the RSN IE and might fail as the buffer belongs to WPA IE.

Pass appropriate length to unpack RSN IE.

Change-Id: Ie679e67061e7ac622e8e76b285a32135a60ca6e8
CRs-Fixed: 2189926
2018-02-20 11:12:38 +05:30
snandini
cf6099f206 Release 5.2.0.66T
Release 5.2.0.66T

Change-Id: I1d77c390e3893495c23f8360de33700e0b48229e
CRs-Fixed: 774533
2018-02-16 19:46:25 -08:00
Naveen Rawat
368858c54f qcacld-3.0: Switch order of phymode and ch_width
As part of csa or opmode IE handling program phymode param after
ch_width since firmware expects channel width to be programmed
before phymode.

Change-Id: I46e3a5e1ce94fa53e27f821e70c29e209e591865
CRs-Fixed: 2186030
2018-02-16 19:46:25 -08:00
snandini
e9ff3fc419 Release 5.2.0.66S
Release 5.2.0.66S

Change-Id: I667afd67466b0e4280d7602bb1178c88f822e42b
CRs-Fixed: 774533
2018-02-16 18:58:35 -08:00
Arif Hussain
55aaaad921 qcacld-3.0: Set copy_to_user flag on ftm rsp command
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
2018-02-16 18:58:34 -08:00
snandini
1dd309b9b8 Release 5.2.0.66R
Release 5.2.0.66R

Change-Id: I2d60da2db850f27e41b7a33209337c38ae53ffb0
CRs-Fixed: 774533
2018-02-15 20:59:51 -08:00
Rajeev Kumar
1117fcf2af qcacld-3.0: Fix memory leak in HDD API iw_setnone_getint
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
2018-02-15 20:59:50 -08:00
snandini
56e3c3c7e7 Release 5.2.0.66Q
Release 5.2.0.66Q

Change-Id: I85ceb49e8aff16bec3b4e6078bede83a292c3ec1
CRs-Fixed: 774533
2018-02-15 19:35:00 -08:00
Varun Reddy Yeturu
85090c94e9 qcacld-3.0: Cancel scans during roaming
Upon receiving a ROAM_START from the firmware,
cancel the current scans which is similar to
initial connection which will avoid unnecessary
frames to the host during the connection process.

Change-Id: I0c9a4dd7cd4d58e0583cc44b5e33e88728eb70bb
CRs-Fixed: 2174921
2018-02-15 19:35:00 -08:00
snandini
df63a809a1 Release 5.2.0.66P
Release 5.2.0.66P

Change-Id: I8e25194a67393e3216e3149d273fe91fbd2e0911
CRs-Fixed: 774533
2018-02-15 18:45:45 -08:00
Naveen Rawat
2eb4c8309f qcacld-3.0: Fix suBFormee/suBFormer in handling assoc request
In handling assoc request make sure to use VHT IE or vendor VHT IE
appropriately for suBFormee/suBFormer calculation.

Change-Id: I3934a0c7229a8a400d1aa54fe3bf0bc3513d4d70
CRs-Fixed: 2159206
2018-02-15 14:38:59 -08:00
snandini
819e218bf2 Release 5.2.0.66O
Release 5.2.0.66O

Change-Id: I523c94c5fba1aab6aad54d5501fe2a085f7c2d7d
CRs-Fixed: 774533
2018-02-15 14:10:45 -08:00
Abhinav Kumar
5eda62d43c qcacld-3.0: Fix to avoid race condition during acs scan
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
2018-02-15 14:10:44 -08:00
snandini
0d86b5c428 Release 5.2.0.66N
Release 5.2.0.66N

Change-Id: Iccc9c63b8b19d2142a998324dfdad60418908b1d
CRs-Fixed: 774533
2018-02-15 10:15:11 -08:00
Hanumanth Reddy Pothula
855f7ef72f qcacld-3.0: Add txrx_get_pldev API to get packetlog object
Packetlog initialization is failing as txrx_get_pldev API is missing,
which returns paketlog object from the given pdev.

Add txrx_get_pldev API to get packet log object for the given pdev.

Change-Id: I2219a5c0964e76637ff8dbef92661b98cd22fb28
CRs-Fixed: 2189211
2018-02-15 10:15:11 -08:00
snandini
6de76520a6 Release 5.2.0.66M
Release 5.2.0.66M

Change-Id: I307d047aaf90fa89efc4d49a0c66408fc1c96603
CRs-Fixed: 774533
2018-02-15 09:20:28 -08:00
Yun Park
84c0cebe87 qcacld-3.0: Add IPA WDI Unified API support
Support for WDI2 in the Unified IPA WDI APIs.

Change-Id: Ife42a6a96ce80070de51f994e29ded252b3dd980
CRs-Fixed: 2183498
2018-02-15 09:20:27 -08:00
snandini
1b4e3017e8 Release 5.2.0.66L
Release 5.2.0.66L

Change-Id: I8aa68677a42ee82e539ff6ee5197e3497eee9bb4
CRs-Fixed: 774533
2018-02-15 01:49:23 -08:00
Vignesh Viswanathan
0a569299e8 qcacld-3.0: Check for SME state in hdd_get_sta_connection_in_progress
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
2018-02-15 01:49:23 -08:00
snandini
54cdde0c73 Release 5.2.0.66K
Release 5.2.0.66K

Change-Id: Ideaca7a6e6d59def4e7210fa33f0f6de590c3bda
CRs-Fixed: 774533
2018-02-14 21:12:15 -08:00
Will Huang
cf9ed9cca7 qcacld-3.0: Fix Pre-auth pe session id error
lim_preauth_scan_event_handler using sme session id to find pe session,
it may find pe session new create for roaming bss, it will cause
pre-auth roaming command can't dequeue.

Change-Id: I81be20318300ac0e312aa9bcff1a43a47e9a38f7
CRs-Fixed: 2189778
2018-02-14 21:12:15 -08:00
snandini
996b902d8e Release 5.2.0.66J
Release 5.2.0.66J

Change-Id: Ie4416a7517df24544fa53e76f0887471c36a49f6
CRs-Fixed: 774533
2018-02-14 19:43:32 -08:00
Tushnim Bhattacharyya
356d46e59e qcacld-3.0: Fix a race between SMM hw mode request and connection request
Fix the following race condition,
1. A connection request to driver which requires DBS
2. DBS gets granted, but connection fails, so opportunistic timer
   starts off
3. New connection request gets queued in SME & opportunistic timer fires
   and SMM HW mode request gets queued behind the connection request
4. Connection is succesful which needs DBS
5. SMM hw mode request gets sent to FW

Change-Id: I0456eba8165015b58b341df934fbfad5fb6eee86
CRs-Fixed: 2186292
2018-02-14 19:43:31 -08:00
snandini
8e2ad06c76 Release 5.2.0.66I
Release 5.2.0.66I

Change-Id: Iba575ce27dcf4fb8c9af646e028594abb50c5810
CRs-Fixed: 774533
2018-02-14 13:02:13 -08:00
Krunal Soni
1fd496d4f2 qcacld-3.0: Send certain DTIM params when LI offload is enabled
It is decided to centralize the logic of programming LI based on
modulated/dynamic DTIM in FW to address the concerns with LFR3.0 in WoW
mode. In order to make it work, following steps need to be performed.

1) If listen interval offload bit is enabled in service ready extension
   then,

   a) Driver needs to send "gEnableModulatedDTIM", "gMaxLIModulatedDTIM"
      and "gEnableDynamicDTIM" params' value to FW via VDEV PARAM up on
      each successful association.

   b) Driver should not program LI during suspend()/resume()

2) If listen interval offload bit is disabled in service ready extension
   then don't trigger above changes.

Change-Id: I6f94c95bd83e5846d7290d5dc752b14da5951a76
CRs-Fixed: 2187597
2018-02-14 13:02:13 -08:00
snandini
a4f9af4ba5 Release 5.2.0.66H
Release 5.2.0.66H

Change-Id: If0a86fa095964c1676bd329389e3bbe4bdf81b53
CRs-Fixed: 774533
2018-02-14 09:33:16 -08:00
Vignesh Viswanathan
0fcb4d3b6b qcacld-3.0: Reduce minimum value for 11k offload cache timeout
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
2018-02-14 09:33:15 -08:00
snandini
0a1cafa0f2 Release 5.2.0.66G
Release 5.2.0.66G

Change-Id: I7e030e10e10536ba94d0ceb17098b33a46c629c8
CRs-Fixed: 774533
2018-02-14 07:49:18 -08:00
Abhinav Kumar
f9989586a6 qcacld-3.0: Scan cleanup in lim and csr
Cleanup the unused scan legacy code in lim and csr

Change-Id: Ibea328196a9453ebaae887aa4068e78c47296762
CRs-Fixed: 2184924
2018-02-14 04:02:17 -08:00
snandini
07a33b1fb1 Release 5.2.0.66F
Release 5.2.0.66F

Change-Id: I150e62eb62e9d4ef96b8310d2a5c4221586ed005
CRs-Fixed: 774533
2018-02-14 03:43:28 -08:00
Will Huang
80ac13b298 qcacld-3.0: Fix size error in htt_tx_ipa_uc_detach
Size allocate with sizeof(target_paddr_t) which is following DMA
device, but free with sizeof(qdf_nbuf_t) which is a pointer following
system. Maybe not same size on some platform.

Fix it by using same type when allocate/free.

Change-Id: Iadcb68b05ca5798f38c4341323b9fd1e32f5d693
CRs-Fixed: 2189671
2018-02-14 03:43:28 -08:00
snandini
9a32e9bf41 Release 5.2.0.66E
Release 5.2.0.66E

Change-Id: I1c83a9e9b8d7dc904cc5f454c67bf32874e64e6c
CRs-Fixed: 774533
2018-02-13 18:28:45 -08:00
Krunal Soni
707eb78287 qcacld-3.0: Add support to enable/disable WMM using nl cmd
Add support to enable/disable WMM feature using nl command

Change-Id: I71f5afd0f922854f8756a0428cbb290e641d5021
CRs-Fixed: 2187621
2018-02-13 18:28:44 -08:00
Kiran Kumar Lokere
f7662e5fed qcacld-3.0: Validate opmode update req before sending to FW
Check the current vdev supported bandwidth values agianst peer
opemode update value and if the peer opmode value is greater than
current supported value then do not send the opmode update request
to FW.

Change-Id: I8f360d769b5aafb90061a6a9d18f1f8062e3534e
CRs-Fixed: 2174050
2018-02-13 18:28:42 -08:00
snandini
bd64a24c7a Release 5.2.0.66D
Release 5.2.0.66D

Change-Id: Ie96bf5b060680149e248edc8956f8a1ba02d00b2
CRs-Fixed: 774533
2018-02-13 17:24:05 -08:00
Kiran Kumar Lokere
13dedacbdc qcacld-3.0: Update HE STBC cap and support to configure it
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
2018-02-13 17:24:04 -08:00