Commit Graph

16180 Commits

Author SHA1 Message Date
Mohit Khanna
c77d69d19b qcacld-3.0: Affine threads to perf core in high tput
Affine DP RX Threads to perf cluster in high throughput scenarios.
High throughput is detected using existing logic from the bandwidth
timer.

Change-Id: Ieb98c6930807ba42be7f5b4d0b8a78dfb197ba27
CRs-Fixed: 2474322
2019-06-28 18:07:50 -07:00
nshrivas
9330148987 Release 5.2.0.138C
Release 5.2.0.138C

Change-Id: I52519b702ead1eb8bb64f5a4de6384ae2c901311
CRs-Fixed: 774533
2019-06-28 11:08:49 -07:00
Pragaspathi Thilagaraj
64ae59da1a qcacld-3.0: Rename pLimJoinReq
Linux coding style doesn't allow camel case notations. So
rename pLimJoinReq to be in compliance.

Change-Id: I813179ef538bdc4b4207123b5f7b7f6601091cf9
CRs-Fixed: 2480399
2019-06-28 11:08:48 -07:00
tinlin
2526aab3a3 qcacld-3.0: Add channel switch restrictions
Previously no logic for channel switch
restrictions in sap_random_channel_sel.
Enable flags to allow user to control the
DFS random channels switches through INI
gSapPreferredChanLocation.

Change-Id: I992616a8be71018f5ea372d286238b4c87aa8338
CRs-Fixed: 2478371
2019-06-28 11:08:44 -07:00
gaurank kathpalia
6701aef06b qcacld-3.0: Check acs cfg channel list before access
Currently the driver does not check whether the
ACS cfg's chanel list is valid or not and checks
for the best channel within it in the function
wlansap_is_channel_present_in_acs_list, which can
lead to potential pointer deference.

Fix is to check the channel list and then only
process for comparison.

Change-Id: Icda2e7c8f260eb636c8159fbbb697400dddbdf74
CRs-Fixed: 2479941
2019-06-28 11:08:40 -07:00
nshrivas
10ff8eb8e3 Release 5.2.0.138B
Release 5.2.0.138B

Change-Id: Ic2655d0183afbdf1611a09cf30c4dc371d05e757
CRs-Fixed: 774533
2019-06-28 09:40:29 -07:00
Liangwei Dong
bb0b7f5f47 qcacld-3.0: Add API to check Agile DFS scan supportability
The old change I7e5a21601642e0d6afef73beeecf80a3e0475909
is missing when new scan mgr introduced, re-design the
change.
If DFS AP present, station scan 5g chanlist should be
avoided if target doesn't support Agile DFS Scan in Single
MAC mode. And also if current hw mode is DBS, the 5g chan
scan is not allowed as well.
1) if agile & DFS scans are supported
2) if hardware is DBS capable
3) if current hw mode is non-dbs
If all above 3 conditions are true then don't skip any
channel from scan list.

Change-Id: I3773c1c63ea3f33db6f6ee2c31cb5d09d3c2ae71
CRs-Fixed: 2471542
2019-06-28 09:40:29 -07:00
bings
0af2ee3995 qcacld-3.0: Return if memory allocation fails
If memory pNewBssDescriptor is allocated successfully, it should not
return, otherwise there is memory leak.

Return if memory pNewBssDescriptor allocation fails.

Change-Id: Ibe906abe890630efa1ea5dafaef40afc2822158e
CRs-Fixed: 2476403
2019-06-28 09:40:25 -07:00
Wu Gao
76b5ff5f45 qcacld-3.0: Check channel number if there is SAP/GO
Driver will reject with channel 0 when check channel ok for DNBS,
without this fix, wlan_cfg80211_mgmt_tx API will fail when channel is zero.

Change-Id: I89edc81c45104d0994cd65262c1f5545f0f6970f
CRs-Fixed: 2476420
2019-06-27 20:35:08 -07:00
nshrivas
cbb9b6f776 Release 5.2.0.138A
Release 5.2.0.138A

Change-Id: I38ed2065ec73766295bb9f111bd97276a860efb0
CRs-Fixed: 774533
2019-06-26 22:45:34 -07:00
bings
49895279c0 qcacld-3.0: Disable dfs tx leakage for HST onwards
CONFIG_CHNL_MATRIX_RESTRICTION should not be defined by default.
CONFIG_CHNL_MATRIX_RESTRICTION should not be defined by HST.

Change-Id: I36154976c4e106d9910977b5990f796b889eaf82
CRs-Fixed: 2476488
2019-06-26 22:45:33 -07:00
nshrivas
49083fa355 Release 5.2.0.138
Release 5.2.0.138

Change-Id: Id71a1f2be9b61875b9d31056f7eda2a11867eda7
CRs-Fixed: 774533
2019-06-26 19:24:39 -07:00
Tushnim Bhattacharyya
f68b764b54 qcacld-3.0: Update the phy mode correctly after roaming
After roaming the phy mode gets updated by FW via roam_sync event.
Update wma with the value from the roam_sync event.

Change-Id: Ie4b47ad83866f033bcd92781fdb05bd7456180f5
CRs-Fixed: 2477071
2019-06-26 11:33:33 -07:00
nshrivas
9fc987a8a2 Release 5.2.0.137Z
Release 5.2.0.137Z

Change-Id: Ib369099dde21f383d0e0d50e06a83de166611459
CRs-Fixed: 774533
2019-06-25 17:21:08 -07:00
Srinivas Girigowda
bf0c1a736d qcacld-3.0: Remove external function declarations
Remove external function declarations.

Change-Id: I2857bcf2f058bff9b88f191a9206711e638f8ea3
CRs-Fixed: 2477823
2019-06-25 17:21:08 -07:00
nshrivas
fdc99969af Release 5.2.0.137Y
Release 5.2.0.137Y

Change-Id: I06994da083e7576a51885a350922d4559ff642f3
CRs-Fixed: 774533
2019-06-25 13:06:35 -07:00
Jingxiang Ge
ccd7fdcd23 qcacld-3.0: Return ret for hdd_trigger_psoc_idle_restart
When hdd_trigger_psoc_idle_restart is called from hdd_open,
if the process has some signal pending, pld_idle_restart
may return back before finishing start_modules. If keep running
in hdd_open, when creating vdev it may access invalid
pdev.

In hdd_open, change to return failure if idle_restart returns
error.

Change-Id: I454d421d0758dd4e90c4b4fba1f65096c0834446
CRs-Fixed: 2476316
2019-06-25 13:06:34 -07:00
wadesong
f1acee4bf4 qcacld-3.0: HW mode retrieval code clean up
With the latest code in the following functions:

wma_add_bss_ap_mode
wma_add_bss_ibss_mode
wma_add_bss_sta_mode
wma_set_channel

hardware mode retrieval becomes unnecessary because
the DBS related config is not checked anymore.

Change-Id: I4fe03dee7148b17a6f2a40208d1cb77013db4c98
CRs-Fixed: 2478160
2019-06-25 13:06:30 -07:00
Wu Gao
0eaad574ee qcacld-3.0: PCL update for case about AP+AP+P2P client
Updated PCL table to support 3-port concurrent scenarios
AP+AP+P2P client.

Change-Id: I0c2a1686bb19e164abd0fa3b4ade43c54df3440f
CRs-Fixed: 2474722
2019-06-25 13:06:25 -07:00
Bala Venkatesh
1876412367 qcacld-3.0: Delete TDLS peers in WMA in case of roaming
Currently, if roaming in progress TDLS peers are not deleted in
WMA layer and obj mangaer this can lead to peer leak

Clear these peers in case of roaming also.

Change-Id: Ie94cf7b77dfef339b50f2f9bca879ae4b76d2eab
CRs-Fixed: 2471057
2019-06-25 13:06:21 -07:00
Liangwei Dong
e7478e97d5 qcacld-3.0: Handle GO start on DFS chan
Auto usercase allow AGO to start on DFS channel.
We need to do similar CAC allow/disallow check in GO mode
as we do in SAP mode. We should skip CAC as DFS master
functionality may be disabled based on INI configuration.
Merge the SAP CAC allow logic to GO interface.

Change-Id: Iba89b8b3f170d6ffe97f53198ad041e7ceb41b44
CRs-Fixed: 2474391
2019-06-25 13:06:17 -07:00
gaurank kathpalia
5aafb67fa4 qcacld-3.0: Fix out of bound issue in get PCL
Fix out of bound issue in get pcl API where the
num of channels in the valid channel list can be
greater than the pcl list size, and can lead to
out of bound access.

Change-Id: Id3d34ff66c712bf310ae2689c43ce873f5c87fca
CRs-Fixed: 2475705
2019-06-25 13:06:13 -07:00
gaurank kathpalia
6fc5d5803c qcacld-3.0: Allow simultaneous scans for Hostapd scan
Currently the drivers blocks every simultaneous scan
that comes to the driver, and returns BUSY.
here if the STA SCAN which is low priority after connection
comes, and at the same time ACS has completed and the hostapd
tries to do a HT scan, it would get error as BUSY, and it
will try to scan again and again until successful or the timeout
happens. This will in turn delay the hotspot bringup as start
ap does not come until the hostapd does a OBSS scan.

Fix is to skip the check of simultaneous scan for SAP, and make
the priority of scan request high for SAP scan.

Change-Id: I5625a3e7c05f75238771ea1ec35b80ae5113bbc3
CRs-Fixed: 2471854
2019-06-25 13:06:09 -07:00
Srinivas Dasari
4bf1c934a4 qcacld-3.0: Set negotiated auth type to OPEN for SAE-pmk cache case
wpa_supplicant sends connect request with open auth and pmkid
when PMK caching is enabled and if it has PMK/PMKID cached.
Set rsn_auth_type to SAE when connect request has AKM as SAE
auth_type as open.
Set negotiated auth type to OPEN in SAE with pmk cache case as
open authentication going to happen. Similar fix is applicable
for FT-SAE. Handle the same.

Change-Id: I9ccc419bd439702041840b0194bb0622d7856255
CRs-Fixed: 2467813
2019-06-25 13:06:06 -07:00
Yeshwanth Sriram Guntuka
c52f24d0f4 qcacld-3.0: Add INI support for FIPS handshake offload feature
Add ini support for FIPS 4-way hanshake offload to firmware. FIPS
offload feature will add support to handle LFR 3.0 connection only
(auth/reassoc). If this ini is set then firmware will offload
4-way HS to supplicant. In the Roam sync indication firmware will
inform connected and not authenticated so that supplicant can take
care of 4-way HS.

Change-Id: I3da58910218ffc57094cac4c3cab4572631d9404
CRs-Fixed: 2459182
2019-06-25 13:06:01 -07:00
Pragaspathi Thilagaraj
b3472f0fcd qcacld-3.0: Implement WAR for P2P GO 1x1 HT association with peer
In P2P GO mode, if the P2P client device is not VHT capable and
only HT capable, but the DUT P2P GO is VHT capable and advertises
2x2 NSS and sends packets with 2x2 rates, it results in interop
issues with HT only capable P2P client devices.

When GO is operating in DBS mode, GO beacons advertise 2x2
capability but include OMN IE to indicate current operating mode
of 1x1. But here peer device is only HT capable and will not
understand OMN IE.

Check if the P2P client device is only HT capable and has
"\x00\x50\xf2\x04". Then downgrade the P2P GO operation to 1x1
nss. Modify rx mcs map value in association response to enable
only mcs 0-7.

Change-Id: I7177c5aee9a560a20c50a63886c0ee77f7d617ae
CRs-Fixed: 2464925
2019-06-25 13:05:57 -07:00
Abhishek Singh
0100fdd28a qcacld-3.0: Get HW mode info from roam fail indication
During roam fail, if firmware doesn't have any interface left on
2.4Ghz it moves to SMM from DBS, But doesn't inform to Host, which
assume DUT is in DBS mode and thus can send VDEV start on 2.4Ghz
without switching to DBS mode. This lead to assert in firmware.

To fix this firmware will indicate the new HW mode in ROAM INVOKE
FAIL and HO FAIL during roam. so handle the new HW mode indication
and update the host HW mode from the new HW mode indication. So
that host and firmware remain in sync

Change-Id: I854faea17c8eccf212b4efb9443b297cadca62b0
CRs-Fixed: 2473532
2019-06-25 13:05:53 -07:00
Jianmin Zhu
7f212f7e92 qcacld-3.0: Don't override 2nd 2G AP to DFS channel of 1st AP
If platform support dbs,  1st AP start on 5G DFS channel, 2nd
AP should be able to start on 2G on another MAC, no MCC will
happen.
If override 2nd AP from 2g channel to 5g, 2nd AP can't start.

Change-Id: Icee7a5c432e0b96d71b51685955d820b0f619c8d
CRs-Fixed: 2470807
2019-06-25 13:05:48 -07:00
Ashish Kumar Dhanotiya
14923e6271 qcacld-3.0: Fill correct info flags for station info
When get station command received by driver, host is
filling rx_mpdus and fcs_error count into output station
info buffer but corresponding flags are not getting set
because of which user space is not able to parse these
values.
To avoid this issue, set corresponding flags for rx_mpdus
and fcs_error count in stainfo buffer.

Change-Id: I0801501d0ede15c9c818d677b5e85e47963f4cff
CRs-Fixed: 2477654
2019-06-24 22:47:12 -07:00
nshrivas
3b2821951d Release 5.2.0.137X
Release 5.2.0.137X

Change-Id: Iccc832c89cd69930c73db97ea8e85e61eb221b04
CRs-Fixed: 774533
2019-06-24 16:52:53 -07:00
Saket Jha
451d3db96a qcacld-3.0: Check if wma pointer is NULL
In wma_is_roam_in_progress function, return false if wma pointer
returned from cds_get_context is NULL.

Change-Id: I0a3447f038a45ea93e769142cb5883a3f39c0991
CRs-Fixed: 2475071
2019-06-24 16:52:53 -07:00
nshrivas
a891536aaf Release 5.2.0.137W
Release 5.2.0.137W

Change-Id: Iba11def02eb8fc2ccbf22864c60dff7537ee4a61
CRs-Fixed: 774533
2019-06-24 14:26:20 -07:00
tinlin
a187e13aaa qcacld-3.0: Store rrm session bssid
Processing beacon request may fail due to
some reason.

In Ie07dbb1f45803cf93b45df2173f0ad064a194cb3,
sta fails to send empty beacon report to
AP and frees current rrm beacon request structure
because it doesn't find matched session by bssid
in rrm_process_beacon_report_xmit.

Copy bssid of beacon request to rrm session then
sta can send empty beacon.

Change-Id: I962d058d5e3f8f85194f4197c5ff8c061d56f60c
CRs-Fixed: 2472377
2019-06-24 14:26:19 -07:00
nshrivas
bd59505f8f Release 5.2.0.137V
Release 5.2.0.137V

Change-Id: Ic97eff5d3e8eb3e932a3a73856c749bff5182622
CRs-Fixed: 774533
2019-06-21 16:35:22 -07:00
Pragaspathi Thilagaraj
e4f0cc7ff5 qcacld-3.0: Change the default value of btm_offload_config
Firmware expects btm_offload_config value as 0x1c1 by default
so that BTM query is enabled. To enable BIT 7, "prefer_btm_query"
ini is used and its default value is 1. To enable BIT 8 in
btm_offload_config, "prefer_roam_score_for_candidate_selection"
ini is used and its default value is 1. Enable the BIT 6 also
by default.

Change the default value of btm_offload_config to set bit 6 by
default.

Change-Id: Ic0b222c281d1731aaf21aaff6a72ebf1f1f930de
CRs-Fixed: 2466687
2019-06-21 16:35:22 -07:00
Rachit Kankane
33bf18f2ef qcacld-3.0: Check vdev max limit before creating
Firmware allocates memory as part of WMI_INIT_CMDID based on number of
STA vdevs and max number of vdevs. If we try to create more then
max limit then firmware will crash.
Added check to check for max limit before creating the interface.

Change-Id: I3e73c9f1b3c925465452a23ea5f25f47e4eb1ada
CRs-Fixed: 2468171
2019-06-21 16:35:18 -07:00
nshrivas
25f6becdc4 Release 5.2.0.137U
Release 5.2.0.137U

Change-Id: I648d46e59012a174f7966c49ce34e9d6ff3287f7
CRs-Fixed: 774533
2019-06-21 12:27:17 -07:00
Kiran Kumar Lokere
2d53f9da90 qcacld-3.0: Disable full BW UL MIMO capability in testbed defaults
Do not advertise full BW UL MIMO support when device is configured
as testbed.

Change-Id: Iecb5ddb16ef2006d9592ad3524559dd8f942a950
CRs-Fixed: 2474986
2019-06-21 12:27:17 -07:00
nshrivas
e8465f9346 Release 5.2.0.137T
Release 5.2.0.137T

Change-Id: Ic9b5f1dfc8e7cce026d1903ce808095e3158392f
CRs-Fixed: 774533
2019-06-21 05:47:46 -07:00
Abhishek Singh
4e8524a35d qcacld-3.0: Handle vdev start resp failure in monitor mode
In monitor mode even if vdev start fails, vdev up is sent, which
leads to assert.

Fix is to move the vdev state machine to init state on vdev start
failure and not to send vdev up.

Change-Id: I89e6294329ba0541d0d86c5728ce36898a199659
CRs-Fixed: 2475370
2019-06-21 05:47:46 -07:00
nshrivas
ecc0a76765 Release 5.2.0.137S
Release 5.2.0.137S

Change-Id: I1bcb8a0d318a2f9be4f1edf462bc82e1c0f15878
CRs-Fixed: 774533
2019-06-21 04:27:12 -07:00
nakul kachhwaha
ed09dc9304 qcacld-3.0: Handle error returned by cfg_parse
Host driver should exit if it fails to initialize
__cfg_global_store to avoid assertion hit.

Change-Id: I404e5da69cd2c4cf06d55a1d7a96d0aee1e5e4a4
CRs-Fixed: 2454969
2019-06-21 04:27:11 -07:00
nshrivas
31578dd5fd Release 5.2.0.137R
Release 5.2.0.137R

Change-Id: I88dcc2c1b47611f4769e3f75fc4223fb4db5c7c8
CRs-Fixed: 774533
2019-06-21 03:09:12 -07:00
Vevek Venkatesan
dba9bc045b qcacld-3.0: add dummy feature flags for DP compilation
Add dummy feature flags for WIN/MCL converged data path
compilation.

Change-Id: Ia13757fcdcf21d050226fcc0e187658f6eda7b6d
CRs-Fixed: 2467183
2019-06-21 03:09:11 -07:00
nshrivas
136f77ea98 Release 5.2.0.137Q
Release 5.2.0.137Q

Change-Id: Ia286fe931445fb516f5eee6e0dc93432d0c0439b
CRs-Fixed: 774533
2019-06-20 20:15:15 -07:00
Venkata Sharath Chandra Manchala
af9e44acd9 qcacld-3.0: Enable per ring type configuration
Add flag WLAN_DP_PER_RING_TYPE_CONFIG
to enable per ring type configuration.

Change-Id: I14b078cf3c20f07a377ecc53b12f4c114ceb62b2
CRs-Fixed: 2474287
2019-06-20 20:15:14 -07:00
Rajeev Kumar
100b65bfb2 qcacld-3.0: Do not send DTIM related commands for runtime resume
Since system is awake when runtime PM suspend/resume happens, there is
no need to send DTIM related WMI commands with WOW sequence during runtime
PM resume as unlike system suspend, these commands are able to be sent from
other paths. It will just trigger runtime PM resume which is expected
behavior.

Change-Id: I51d0f45c0223a0c0e3c61bbcb7135a590359b08d
CRs-Fixed: 2475111
2019-06-20 20:15:10 -07:00
nshrivas
12c940a71d Release 5.2.0.137P
Release 5.2.0.137P

Change-Id: I5e8e39f5ee97f5817601efdada57966051f88570
CRs-Fixed: 774533
2019-06-20 18:36:15 -07:00
Rajeev Kumar
47b772928b qcacld-3.0: Add null check for hdd_ctx in mode change shutdown/restart
Add null check for hdd_ctx in mode change shutdown and restart callbacks.

Change-Id: I03be071f44b7315aab18d8d38250709553a20a9e
CRs-Fixed: 2475044
2019-06-20 18:36:14 -07:00
Bala Venkatesh
4e3f275a80 qcacld-3.0: Avoid OOB in function tdls_ct_idle_handler
In function tdls_ct_idle_handler, idx is assigned from
tdls_info->index which can be 0 254. But tdls_conn_info
is static array in tdls_soc_priv_obj of size
WLAN_TDLS_STA_MAX_NUM (8). So check idx is less than
WLAN_TDLS_STA_MAX_NUM or not to avoid OOB memory access.

Change-Id: I8387cb0a44a79f0f83b25c12de2aa9fbc39ab2f3
CRs-Fixed: 2474432
2019-06-20 18:36:10 -07:00