Wykres commitów

17230 Commity

Autor SHA1 Wiadomość Data
gaurank kathpalia
c0d0841183 qcacld-3.0: Normalize the channel weights according to ini
Normalize the weights of the frequencies for ACS scan
if the user has changed them in the ini.
This is done as legacy devices wont be able to scan
the newly added 6ghz frequencies, and thus wont
be able to associate with the SAP if it starts
on 6ghz channels.

Change-Id: I2dd2f706c248f5339bde06963540d0874d08b847
CRs-Fixed: 2543007
2019-10-15 06:44:48 -07:00
Abhishek Singh
41776ce6b4 qcacld-3.0: Add vdev info in connect and disconnect info logs
Connect and disconnect info logs doesn't have vdev related info
and thus it become difficult to know for which interface the
req is received from logs in STA+STA case.

Change-Id: I8a8e83e1ee82614c06d736542e9be5f93308a6a1
CRs-Fixed: 2545444
2019-10-15 06:44:44 -07:00
nshrivas
b1344d13a8 Release 5.2.0.152O
Release 5.2.0.152O

Change-Id: If29c9859562979b3770bee5b42dc93482a65397e
CRs-Fixed: 774533
2019-10-15 05:16:26 -07:00
hqu
37c8b81fc3 qcacld-3.0: Add 11ax mode to non legacy phymode
Driver will set 11ax mode to legacy phymode currently, so it
will report no HT capability to hostapd, it's wrong.

11ax mode can support HT capability, fix is to set 11ax phymode
to non legacy.

Change-Id: Id8dce7eba9f5d986c57242242a7376d19e98eb3f
CRs-Fixed: 2503202
2019-10-15 05:16:25 -07:00
Abhishek Ambure
6a2773e4a4 qcacld-3.0: Replace WLAN_PHY_MODE with enum wlan_phymode
enum wlan_phymode is the enum to store the phymode in host
and thus replace WLAN_PHY_MODE with enum wlan_phymode
and add the corresponding change in the code to use
enum wlan_phymode.

Change-Id: I6c7990255f193eb3afdeeb278d3cc159ef8503b1
CRs-Fixed: 2544822
2019-10-15 05:16:19 -07:00
Lin Bai
7c3d0c45db qcacld-3.0: Fix CFG_RX_MODE_DEFAULT redefined error
SDX55 defined both MDM_PLATFORM and FEATURE_WLAN_DP_RX_THREADS,
and this is causing redefined issue.

Change-Id: I1427be477dd3832b98332c9edaa4063b8c573ae4
CRs-Fixed: 2542264
2019-10-15 05:16:12 -07:00
nshrivas
32fd4e8667 Release 5.2.0.152N
Release 5.2.0.152N

Change-Id: Ie1ceee72bbd8ffeb332bfb49728157d2dc8c3c9c
CRs-Fixed: 774533
2019-10-15 02:30:09 -07:00
Mohit Khanna
58a898ba9e qcacld-3.0: Use pm_qos only at high bandwidth
Currently we use PM qos apis to set masks and latency values at
PLD_BUS_WIDTH_LOW throughput level. As per experiments and power
measurements, this can also be done at the PLD_BUS_WIDTH_MEDIUM level
without any throughput impact and can help CPU enter C4 states at this
level.

Hence, donot use pm-qos APIs at less than high throughput levels.

Change-Id: I8bebb3b593b9d26aa6764b16b218814979bcd322
CRs-Fixed: 2507386
2019-10-15 02:30:09 -07:00
Arun Kumar Khandavalli
378b7ee6a4 qcacld-3.0: Remove block/unblock shutdown cb
Modem block/unblock shutdown callbacks are added to synchronize
modem shutdown when the driver is in deinit sequence.

With new changes everything is synchronized via the platform driver,
So remove the the block/unblock shutdown callback's.

Change-Id: If66eed5b51bbce64f024edf49e37a21b222a6a4c
CRs-Fixed: 2489733
2019-10-15 02:30:04 -07:00
nshrivas
541afcdd7c Release 5.2.0.152M
Release 5.2.0.152M

Change-Id: I324a130f4712663dfbd03ce3fc7ffd66e745c291
CRs-Fixed: 774533
2019-10-15 00:49:06 -07:00
Liangwei Dong
1f41f4f984 qcacld-3.0: Extract and add Advertisement Protocol IE
Extract and add Advertisement Protocol IE from hostapd.
MBO AP needs to report the ANQP supported in Advertisement
Protocol IE.

Change-Id: I5d7bb650de7626f568c1868775a665eff2305647
CRs-Fixed: 2530870
2019-10-15 00:49:06 -07:00
Sourav Mohapatra
c320ada27c qcacld-3.0: Move cache sta info to hash based
Currently in hdd_adapter, the variable cache_sta_info is an array of
hdd_station_info structured indexed by the sta_id. As sta_id is no
longer used, this array based implementation becomes unnecessary.

Move the sta_info implementation to a hash table implementation.

Change-Id: Iac11ecd2ae4a454649235cf8763e9a5f80e7eb38
CRs-Fixed: 2515316
2019-10-15 00:48:59 -07:00
Sourav Mohapatra
43e6dea453 qcacld-3.0: Move sta_info from array based to hash based
Currently in hdd_adapter, the variable sta_info is an array of
hdd_station_info structured indexed by the sta_id. As sta_id is no
longer used this array based implementation becomes unnecessary.

Move the sta_info implementation to a hash table implementation.

Change-Id: I7d6fe04b7e0ab22615d431de9a10a4ad38ed65ba
CRs-Fixed: 2514280
2019-10-15 00:48:54 -07:00
nshrivas
c65a60b93b Release 5.2.0.152L
Release 5.2.0.152L

Change-Id: I969c7df7d0ece78a92a736733083221c528739ef
CRs-Fixed: 774533
2019-10-14 23:04:57 -07:00
Jianmin Zhu
d17e66163f qcacld-3.0: Enable roaming type by platform to save memory
On HST, only enable LFR3
On Rome, only enable LFR2
This change is for auto platforms

Change-Id: I67bd5877060621e756668e925031fd134bc1a0c2
CRs-Fixed: 2544840
2019-10-14 23:04:57 -07:00
nshrivas
181ea3a9ed Release 5.2.0.152K
Release 5.2.0.152K

Change-Id: Idf145e2792f7f1aba2436eb8bdea6c69cb62df4c
CRs-Fixed: 774533
2019-10-14 19:12:14 -07:00
Bala Venkatesh
805a4a6f02 qcacld-3.0: Return success status for stop_ap
After SSR the vdev id in P2P GO adapter can become invalid.
So return success status in stop_ap to kernel for proper
cleanup.

Change-Id: I20aa0873e6aa199749c1cbabd098a581500bebce
CRs-Fixed: 2527535
2019-10-14 19:12:14 -07:00
nshrivas
d839865be0 Release 5.2.0.152J
Release 5.2.0.152J

Change-Id: Iba8a356afec9924169a7d5f74e101037de2c6880
CRs-Fixed: 774533
2019-10-14 17:44:49 -07:00
Manikandan Mohan
8773b5ccc7 qcacld-3.0: Update HDD channel validation for frequency
Due to channel number duplication with introduction of 6Ghz band
support update hdd channel validation function to check channel
frequency instead of channel number. Also remove channel references
in start_bss path.

Change-Id: I5f37524b71a2b224ca79b0f67f871e50523e16be
CRs-fixed: 2545103
2019-10-14 17:44:49 -07:00
nshrivas
48001f8e31 Release 5.2.0.152I
Release 5.2.0.152I

Change-Id: I67dc3b972e0ba1fc13511ee5c3b6d2af41448392
CRs-Fixed: 774533
2019-10-14 15:56:07 -07:00
Pragaspathi Thilagaraj
ea180474cd qcacld-3.0: Update group management cipher suite in RSO command
The host driver updates the group management cipher suite to the
firmware as part of RSO commands over the WMI_AP_PROFILE
command. The group management cipher suite is updated from the
group cipher suite which is not correct. As part of join success
update the group management cipher suite from roam_profile
in the roam serialization command in
csr_roam_save_connected_information().

Update the group management cipher suite from the roam profile
to the roam_request and copy it to the WMI_AP_PROFILE command
params in wma.

Change-Id: Ic8dca6938c487396e0202202efbb44ff214ecdcc
CRs-Fixed: 2542225
2019-10-14 15:56:07 -07:00
nshrivas
d39a318e9d Release 5.2.0.152H
Release 5.2.0.152H

Change-Id: I834e2fb86d6807053ce975cfaa54fc3bea5d0c69
CRs-Fixed: 774533
2019-10-14 07:50:48 -07:00
Abhishek Ambure
c51513966a qcacld-3.0: Cleanup old scan filter
Driver uses old scan filter and old scan filter is converted
into new scan filter while sending scan command.

TO avoid this conversion use and fill new scan filter whenever
required.

Change-Id: Ib7e1c571c042a36f0b5864033ba640e8df1cd2f1
CRs-Fixed: 2544677
2019-10-14 07:50:48 -07:00
Liangwei Dong
eecef520c8 qcacld-3.0: Use frequency to access "defaultPowerTable" list
Get channel power information by center_freq from "defaultPowerTable"
list instead of chan_num because duplicated channel number exists if
enable 6GHz band.

Change-Id: I88c8ae2b14e1b2c48410fdf7bff5bba96b73f32d
CRs-Fixed: 2531046
2019-10-14 07:50:43 -07:00
nshrivas
9b93b2437c Release 5.2.0.152G
Release 5.2.0.152G

Change-Id: Ie0ef1cc9b9d275186f27a4ee5f070a295bfca3aa
CRs-Fixed: 774533
2019-10-14 05:47:17 -07:00
Rakesh Pillai
7677839516 qcacld-3.0: Enable interrupts after dp srngs are initialized
Currently the interrupts are enabled before the datapath
srngs are initialized. This causes an invalid access of srngs
when any interrupt is received before srngs initialization,
which can happen during operation mode switch, eg during switch
from monitor mode to mission mode.

To avoid this invalid access of srngs, enable the interrupts
only after the srngs are initialized.

CRs-Fixed: 2486050
Change-Id: I9e436f30e2f6b67e02db3ed32231570ab51d5f7b
2019-10-14 05:47:16 -07:00
Abhishek Singh
623603404e qcacld-3.0: Avoid using struct csr_roam_session in lim
struct csr_roam_session is used in LIM in func
lim_get_session_by_macaddr to get if SA is same as one of the vdev.

struct csr_roam_session should not be used by LIM, so raise change
to used vdev obj manager to find a vdev with same MAC address.

Change-Id: I13bf65a65023a2a8dc82013e2668a075883c111a
CRs-Fixed: 2544552
2019-10-14 05:47:10 -07:00
Manikandan Mohan
cf5048294b qcacld-3.0: Disallow TDLS when NAN is active
Since NAN has higher priority over TDLS, disallow TDLS link
when NAN is active.

Change-Id: I7de34dbb2f808c36358ac5266c26e2729b901941
CRs-fixed: 2537158
2019-10-14 05:47:03 -07:00
Rajeev Kumar
d097ea1836 qcacld-3.0: Add OS_IF DSC vdev op protection to indicate mgmt frame api
HDD indicate mgmt frame API is called from scheduler context to send mgmt
frames to user which can happen in parallel to del virtual interface which
can lead to race conditions and stale netdev pointer usage and hence add
OS_IF DSC vdev op protection to indicate mgmt frame API such that when
management frames are getting indicated to user space del virtual interface
transaction is synchronized.

Change-Id: I620225f7a0a46efa6da6d615e3014a8f4f5e43cf
CRs-Fixed: 2543244
2019-10-14 05:46:53 -07:00
nshrivas
f9ffa13a2d Release 5.2.0.152F
Release 5.2.0.152F

Change-Id: I0bf7dcc1b74f804e67e915f8380cce91c7dabec6
CRs-Fixed: 774533
2019-10-12 22:15:44 -07:00
Abhishek Ambure
79932494df qcacld-3.0: Refactor SME code to check connection state
IBSS code is protected by "QCA_IBSS_SUPPORT" feature flag, at SME
layer CSR API checks the connection state. For IBSS disable, these
SME APIs to check connection state must return flase.

Change-Id: I1bcd20a07d484cea2769c5b3171d805c8b82b308
CRs-Fixed: 2542724
2019-10-12 22:15:43 -07:00
Abhishek Ambure
e9d049901a qcacld-3.0: Disable IBSS code
IBSS code is placed under "QCA_IBSS_SUPPORT" feature flag. IBSS code is
disabled and to enable it define "QCA_IBSS_SUPPORT" in default_defconfig.

ex. CONFIG_QCA_IBSS_SUPPORT := y

Change-Id: I08619dbed4661d9fc132adbcd1de2cd4470a2737
CRs-Fixed: 2542078
2019-10-12 22:15:39 -07:00
nshrivas
7368b5f7e9 Release 5.2.0.152E
Release 5.2.0.152E

Change-Id: Id7aac51b70265610fc7ce688c1cfad3493320ee8
CRs-Fixed: 774533
2019-10-12 20:36:19 -07:00
Alan Chen
4bc1c117ad qcacld-3.0: Use dsc vdev start wait api for hdd open
HDD open can come in the middle of idle shutdown and if the vdev start
wait API is not in use, HDD open will fail which will result into WIFI
on failure. Hence, use dsc vdev start wait api for HDD open.

Change-Id: I398879d9669d0a9124e844fc325065299a1d7259
CRs-Fixed: 2540661
2019-10-12 20:36:19 -07:00
Jianmin Zhu
90693c294b qcacld-3.0: Fix buffer overflow when save chan tx power
Before copy tx power, need check length correctly to avoid
buffer overflow.

Change-Id: Ib18feaa36d3cbdcc50442885fd8b98888f34eab8
CRs-Fixed: 2538397
2019-10-12 20:36:09 -07:00
Jianmin Zhu
d6f0563f96 qcacld-3.0: Enable LFR3 just for Helium and HST
Enable LFR3 just for Helium and HST,  Rome still use LFR2

Change-Id: Iee0d11898ba18246386496df626f8cbbeb05fe1e
CRs-Fixed: 2543516
2019-10-12 20:36:00 -07:00
Yeshwanth Sriram Guntuka
0bf1a72b72 qcacld-3.0: Remove assert in peer_unmap_timer_handler
Fw down indication is received after disconnection
is triggered on STA vdev. After peer delete command
is sent to fw, peer_detach is invoked and peer unmap
timer is started. Since fw is down, peer unmap is
not sent by firmware. Shutdown is not invoked by
pld within the peer unmap timeout value which results
in assert in peer_unmap_timer_handler even though
driver is in recovery state.

Fix is remove the assert in peer_unmap_timer_handler
and trigger recovery which already has the necessary
checks.

Change-Id: Iffd83305d2c1eaec836fcea53d406cada5bfe095
CRs-Fixed: 2542886
2019-10-12 20:35:55 -07:00
Alan Chen
df858ef763 qcacld-3.0: Add new runtime pm wakelock for user
Add new runtime pm wakelock for user such that runtime PM can be
disabled for certain scenarios.

Change-Id: Ibaa64f351393b63559b55827f77cdf126e7038b3
CRs-Fixed: 2534535
2019-10-12 20:35:50 -07:00
nshrivas
0d216e9be4 Release 5.2.0.152D
Release 5.2.0.152D

Change-Id: I924a93f4852716ed5478c071756fdaf73320208f
CRs-Fixed: 774533
2019-10-12 19:03:36 -07:00
Rajeev Kumar Sirasanagandla
1b3a535500 qcacld-3.0: Ignore regulatory offload indication from FW
Based on the ini "ignore_fw_reg_offload_ind" ignore regulatory
offload indicatin from fw.

Change-Id: I6e20f2100eeac8e93baa5c5d3f3d1c8b33356aed
CRs-Fixed: 2532989
2019-10-12 19:03:35 -07:00
Abhishek Singh
1bb77499c5 qcacld-3.0: Remove duplicate logic to move to SMM from STA connect
In csr_roam_connect, driver check and move to DBS before the connect
is requested if required and once connection is completed, it check
if SMM can be achieved depending on the channel it connected to or
if it failed to connect.

Thus there is no need to check before connection is completed
if SMM is required as driver is not aware of the channel in which
STA will end up connected.

Thus remove the duplicate logic to move to SMM from STA connect.

Change-Id: I0d069fba3c47dec78601a0f3529fde381d4936ed
CRs-Fixed: 2543601
2019-10-12 19:03:29 -07:00
nshrivas
d9c5b35b9d Release 5.2.0.152C
Release 5.2.0.152C

Change-Id: Iee4fd2e2ebb7efa35ae37e58591d5c06a67f92cf
CRs-Fixed: 774533
2019-10-12 16:23:31 -07:00
Chaoli Zhou
364a002f8d qcacld-3.0: Fix build failure: ISO C90 forbids mixed declarations and code
It has "ISO C90 forbids mixed declarations and code"
build issue on the LE.UM.4.1.1, so fix it.

Change-Id: I0bc918f55e9a7d3c540a455ed292977c15300456
CRs-Fixed: 2542657
2019-10-12 16:23:31 -07:00
Abhishek Singh
e6b951b7e9 qcacld-3.0: Add proper queue_type in cancel command request
If proper queue_type is not added the serialization command is not
removed from the queue. Thus the connect command is not removed
from pending queue on receiving the disconnect command.

This lead to HDD and SME out of sync with SME in connected state
and HDD in disconnected state. Thus during stop adapter HDD
doesn't try to disconnect the connected session. 

Thus add queue_type as active or pending while calling cancel cmd.

Change-Id: I4af2c63a895065aefbb76609808a972354460cb2
CRs-Fixed: 2543246
2019-10-12 16:23:24 -07:00
nshrivas
485d4e2fc3 Release 5.2.0.152B
Release 5.2.0.152B

Change-Id: Ide622ce585b97f1facb47a85e095cf21722f2f25
CRs-Fixed: 774533
2019-10-12 14:39:25 -07:00
Abhishek Ambure
723599dcc4 qcacld-3.0: Fix multiple start of opportunistic timer
In a connect request if there are multiple BSSID, opportunistic
timer is started for each failed BSSID. If connection to a BSSID
takes more than opportunistic time, driver may end up starting
opportunistic timer and queueing SMM request multiple times.

To avoid this unnecessary multiple start of opportunistic timer,
start it only once after final connect failure.

Change-Id: I351cb631fe832239e5f5539f00c306f90192880b
CRs-Fixed: 2543631
2019-10-12 14:39:25 -07:00
Jinwei Chen
5423579ff2 qcacld-3.0: enable DP pending memory flushing
Enable DP pending memory flushing by macro WLAN_DP_PENDING_MEM_FLUSH

Change-Id: I77a85c208a77cf7d2e43270b396e4ed9e41c3e85
CRs-Fixed: 2543465
2019-10-12 14:39:19 -07:00
nshrivas
445e192a1e Release 5.2.0.152A
Release 5.2.0.152A

Change-Id: I6a513e39ab86af7cd78f3f08312789f9f2939bea
CRs-Fixed: 774533
2019-10-12 13:10:17 -07:00
Srinivas Dasari
ff782fbcd8 qcacld-3.0: Clear PTK and GTK install flags in disconnect handler
PTK and GTK are installed to firmware and installation status
of each key is maintained in driver. Data transmission is allowed
only if both the keys are installed.
Currently these flags are getting cleared after installing both
ptk and gtk to firmware.
But if one key is installed and the other key is not installed
due to some reason(e.g. connection abort), corresponding status
is not cleared and being referred in the next connection attempt.
This is causing the data transmission to happen from driver to
firmware after installing GTK before installing PTK, as the
ptk_installed from previous connection is still set. This is
not allowed by firmware and issues an assertion.
PTK and GTK are invalid once the station disconnects. So reset
the flags as part of connection info cleanup.
Reset the flags before issuing connection also to avoid usage
of previous connect status or garbage values.

Change-Id: I8fa7bd0a15eab2fed80f050e77df3554d0f1b73a
CRs-Fixed: 2542785
2019-10-12 13:10:16 -07:00
Abhishek Singh
7b2fb960c3 qcacld-3.0: Fix enum wlan_phymode to include proper phymode value
Few phymode are missing from enum wlan_phymode and many are not
valid phymode, e.g for 5ghz 40minus and 40plus are not valid.

So add the missing enums and remove invalid enums from enum
wlan_phymode.

Change-Id: I56710c6a04ac365a54e2c4ba138e0e887fbdd960
CRs-Fixed: 2531859
2019-10-12 13:10:12 -07:00