Commit Graph

15948 Commits

Author SHA1 Message Date
Jianmin Zhu
5d162769f5 qcacld-3.0: Convert SME code legacy channel ID usage
Remove usage of sme_freq_to_chan_list from:

csr_neighbor_roam_get_scan_filter_from_profile
sme_rrm_send_scan_result

Change-Id: I67f968c306d31f1e17cc9434274f65600cb39b02
CRs-fixed: 2561229
2019-11-18 10:32:19 -08:00
nshrivas
22b594ff43 Release 5.2.0.157O
Release 5.2.0.157O

Change-Id: I8c53bbbcee41181d01ea5f18d3540bf5623803b6
CRs-Fixed: 774533
2019-11-18 04:04:56 -08:00
nshrivas
f90e91efed Release 5.2.0.157N
Release 5.2.0.157N

Change-Id: I2dcd8ea9be805c9068666b67f51b1801e1a8faa2
CRs-Fixed: 774533
2019-11-18 02:29:36 -08:00
Sourav Mohapatra
1600c7ace6 qcacld-3.0: Use dynamic NSS while reporting stats
Presently in the driver, the NSS used for reporting stats to the upper
layer is fetched from the VDEV generic NSS. This NSS is not updated
dynamically with the set NSS command. As a result, in the case the
command is given, the NSS reported to the userspace is not proper.

To mitigate this, instead of fetching the generic NSS, fetch the dynamic
NSS from the mlme.

Change-Id: I9fdbc0625ebe8343a7bf750829db028f4ddd86d0
CRs-Fixed: 2551187
2019-11-18 02:29:35 -08:00
Abhishek Ambure
ee81f8b2eb qcacld-3.0: Set 5G band capability bit in gActionOUIConnect1x1 ini
gActionOUIConnect1x1 is used to specify action OUIs for 1x1
connection.

Some Access Points are unable to handle SMPS and OMN frames and shows
abnormal behaviour when STA is switching between 2x2 to 1x1 and
vice-versa. To avoid this, restrict connection in 1x1 mode with such APs.

Here the scenario is DUT STA1 connects in 2x2 mode to AP1 in 5G mode then
later on DUT another STA2 iface connects to AP2 in 2G mode. DUT sends OMN
frame to AP1 to inform that it is going to switch to 1x1 mode. AP1 ack
this frame but doesn't change its Tx rates and continues to use 2x2 rates
which DUT cannot ACK. This causes low throughput issue where AP1 Tx rate
falls to 6Mbps due to missing acks.

Hence, 5G band capability bit in "gActionOUIConnect1x1" is set to make
connections in 1x1 with such AP.

Presently, 5G band capability bit is not checked if 2G band capability bit
is not set or 2G band is not enabled. Hence, Vendor AP capability check for
2G and 5G Band is refactored.

Change-Id: Ic6b682451405a2373000e4c64656f50c2fab0ee6
CRs-Fixed: 2558293
2019-11-18 02:29:15 -08:00
Liangwei Dong
9f67bd28c8 qcacld-3.0: Fix Invalid 6G HE OP IE
1. Zero local variable "he_ops" before intersect with user IE.
2. If csr_check_and_validate_6g_ap fails, use "break" to
free memory in end of function csr_send_join_req_msg.
3. Remove co_located_bss checking for 6GHz AP. co_located_bss
can be valid for 6GHz AP.

Change-Id: I4b521eead6e09db860b5e21c21882f14a1be8576
CRs-Fixed: 2563923
2019-11-18 02:29:07 -08:00
nshrivas
a97115fcf9 Release 5.2.0.157M
Release 5.2.0.157M

Change-Id: Ib80a511033bd0fe8d372aa96a4496045bbd61af9
CRs-Fixed: 774533
2019-11-18 00:45:29 -08:00
Alan Chen
e119c7dcc5 qcacld-3.0: Use qdf_pm_system_wakeup() for abort system suspend
hdd_abort_system_suspend() function currently uses pm_wakeup_hard_event(),
which does not work because device is not initialized. Switch to using
pm_system_wakeup() instead by calling qdf_pm_system_wakeup() wrapper.

Change-Id: Ib89eca5014729f6a2103e14c6f46540d1406a5a0
CRs-Fixed: 2566770
2019-11-18 00:45:18 -08:00
nshrivas
bb2b08b141 Release 5.2.0.157L
Release 5.2.0.157L

Change-Id: Ie4fb877767eda74bee62916c1d2e2517ea6f9725
CRs-Fixed: 774533
2019-11-16 17:55:40 -08:00
Kiran Kumar Lokere
6056d188b8 qcacld-3.0: Correct the 6GHz operation info in HE op IE
Correct the 6G operation info field values in HE operation IE.
And replace the legacy api with new 6G support api to calculate
channel center frequencies.

Change-Id: Icafdd72b386137a6a0c8d0de233d4fbdbd121610
CRs-Fixed: 2557233
2019-11-16 17:55:39 -08:00
nshrivas
80e9ac4563 Release 5.2.0.157K
Release 5.2.0.157K

Change-Id: I62850f83aed47247eae4623f6e67c1f76b4ec457
CRs-Fixed: 774533
2019-11-16 15:22:58 -08:00
gaurank kathpalia
cbffd58306 qcacld-3.0: Initialize the acs pending work in do acs
Scenario:-
Two ACS request come in parallel, for two SAP startup
The driver started with one ACS, and scheduled the
other after the first one is complete,driver sets
a bit in flag of adapter that is
test_bit(ACS_PENDING, &adapter->event_flags)
and then schedule work when the ACS channel is
selected in the API wlan_hdd_cfg80211_acs_ch_select_evt.

After this driver got delete interface for the second
interface and as part of it in hdd stop adapter
driver checks that if the flag of pending ACS is set,
flush the pending ACS work, and reset the flag.

But the work is yet to be initialized, which would be done
as part of wlan_hdd_cfg80211_acs_ch_select_evt
and it is not yet completed as the first ACS is busy with the
ACS scan, and the scan callback and channel selection logic
is still yet to be done.

Fix is to initialize the work when the driver detects that
first ACS is in progress, and it needs to wait for the
first one to complete.

Change-Id: If706528f1afd6075144bff40611e82742df76368
CRs-Fixed: 2559703
2019-11-16 15:22:57 -08:00
nshrivas
42e5bb53c1 Release 5.2.0.157J
Release 5.2.0.157J

Change-Id: Iad3132015f85583b5ed6cdf6ca67c9c06fb4dba0
CRs-Fixed: 774533
2019-11-15 21:00:09 -08:00
Rajeev Kumar Sirasanagandla
d320ac4d17 qcacld-3.0: Fix failure of NDP peer save
Invocation of wrong api hdd_is_valid_mac_address() makes hdd_save_peer()
always return false due to which hdd_roam_register_sta() is skipped in
hdd_ndp_new_peer_handler() and can cause ping failure.

To fix this, use api qdf_is_macaddr_zero() instead of
hdd_is_valid_mac_address() in hdd_save_peer() to get the unused
entry in NDP peer mac table.

Change-Id: Id9aa6bcebb7fd168ee281065ebffe7227f9bc10f
CRs-Fixed: 2554502
2019-11-15 21:00:09 -08:00
nshrivas
c34d97c26f Release 5.2.0.157I
Release 5.2.0.157I

Change-Id: I03b7941d0cebf808fe7756b8e1474ae31b698731
CRs-Fixed: 774533
2019-11-15 16:01:07 -08:00
Arun Kumar Khandavalli
dac7a45e2d qcacld-3.0: Donnot send vdev delete via serialization
Presently vdev delete is sent via serialization, which
needs a vdev reference. With the new FR to send the
vdev delete on the physical destroy in object manager
vdev delete cannot be sent via serialization.

Hence, disable the serialization for the vdev and
donot send the vdev delete via serialization.

Change-Id: I3afa34880ddaab68850ed235ec1451370d82e7dd
CRs-Fixed: 2566120
2019-11-15 16:00:57 -08:00
gaurank kathpalia
cc3e2fd338 qcacld-3.0: Remove legacy usage of channels in WMA layer
Remove legacy usage of channels in WMA layer and
use frequencies instead to incorporate 6ghz
frequencies as well.

Change-Id: Iba4a9ea723d5c03a4deeaffc5fbdf628f435eb67
CRs-Fixed: 2563924
2019-11-15 16:00:49 -08:00
nshrivas
05e835a045 Release 5.2.0.157H
Release 5.2.0.157H

Change-Id: I3abff8971b9a27a4e5f4646b0d086f319d1cd62d
CRs-Fixed: 774533
2019-11-15 05:43:43 -08:00
Kiran Kumar Lokere
5414066815 qcacld-3.0: Policy manager support in 160MHz mode
Add policy manager support for 160MHz mode connection.

Change-Id: I697dabbd752e768c128f8663674c91adccd72424
CRs-Fixed: 2558047
2019-11-15 05:43:43 -08:00
nshrivas
80678a3d85 Release 5.2.0.157G
Release 5.2.0.157G

Change-Id: I2b951bfb1e2045c33b778a49d8d907646b0bba8f
CRs-Fixed: 774533
2019-11-15 03:57:33 -08:00
gaurank kathpalia
34fe0b641b qcacld-3.0: Enable the DBS ini if DBS is mandatory
The driver does not check the device DBS capability
and the DBS ini compatibility( ch select policy)
If the DBS ini channel_select_logic_conc is disabled
and HW mandates DBS capability then overide the ini
to always keep it enable.

Change-Id: I629fd8661f70b64808a55c4c9bdafa9608787b09
CRs-Fixed: 2551648
2019-11-15 03:57:32 -08:00
gaurank kathpalia
e314029ccf qcacld-3.0: Enable the DBS ini if DBS is mandatory
The driver does not check the device DBS capability
and the DBS ini compatibility.
If the DBS ini gDualMacFeatureDisable is disabled
and HW mandates DBS capability then overide the ini
to always keep it enable.

Change-Id: I2b31453f9c8a04cef7f943b30d3c28f844c276b5
CRs-Fixed: 2551644
2019-11-15 03:57:22 -08:00
nshrivas
8af102d467 Release 5.2.0.157F
Release 5.2.0.157F

Change-Id: Iec96e8a6f7091875f0cf958c02f6971bbbf02ab0
CRs-Fixed: 774533
2019-11-15 02:27:24 -08:00
Rajeev Kumar Sirasanagandla
c567f5f7bc qcacld-3.0: Add 6GHz support for VENDOR_SUBCMD_SET_SAP_CONFIG
As a part of 6GHz support, add support to parse channel frequency
attribute: QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_FREQUENCY (in MHz)
in QCA_NL80211_VENDOR_SUBCMD_SET_SAP_CONFIG command data.

Change-Id: I8e9956ef0db1a511f4252d6fb1f03201df54c3c1
CRs-Fixed: 2534010
2019-11-15 02:27:23 -08:00
Rajeev Kumar Sirasanagandla
e83ac29a70 qcacld-3.0: Add 6GHz support for VENDOR_SUBCMD_ACS_POLICY
As a part of 6GHz support, add support to parse channel frequency
attribute: QCA_WLAN_VENDOR_ATTR_ACS_FREQUENCY_HINT (in MHz)
in QCA_NL80211_VENDOR_SUBCMD_ACS_POLICY command data.

Change-Id: Ic7bee5fe1123b82607e375c71a21b9744d67ea17
CRs-Fixed: 2533998
2019-11-15 02:27:15 -08:00
nshrivas
c471ae9eae Release 5.2.0.157E
Release 5.2.0.157E

Change-Id: Iab4b7dcfa5465be6d72d39b419d7b954f76e3a6b
CRs-Fixed: 774533
2019-11-15 00:57:42 -08:00
Rajeev Kumar Sirasanagandla
95f202a55b qcacld-3.0: Add 6GHz support for VENDOR_SUBCMD_EXTERNAL_ACS
As a part of 6GHz support, add support to parse and send channel
frequency (in MHz) in QCA_NL80211_VENDOR_SUBCMD_EXTERNAL_ACS
command/event data.

Change-Id: I87879b4f8dd6a5c4ded2e89c527ba91432c9c48a
CRs-Fixed: 2533732
2019-11-15 00:57:42 -08:00
nshrivas
0a153915c9 Release 5.2.0.157D
Release 5.2.0.157D

Change-Id: Id79085465dfe10147c71f5f77918589ebae3f91c
CRs-Fixed: 774533
2019-11-14 23:25:33 -08:00
Will Huang
2f11454941 qcacld-3.0: Replace chan num with frequency about measurement request
Add frequency to tSirChannelInfo, not replace because channelNum has
specail meaning.
Replace channelNumber of struct report_channel_list.
Use channel frequency in functions which process measurement request

Change-Id: I615b1f61c2810474dac6daf1eeb1ce19c2b1da33
CRs-Fixed: 2559283
2019-11-14 23:25:32 -08:00
tinlin
e36cddb56f qcacld-3.0: Convert legacy channel usage
Modify the following API's code and parameters to make
sure it is using frequency instead of channel:

	csr_roam_select_bss

Change-Id: I9c68e173af01d7cb29672179a7bbffb354134f87
CRs-Fixed: 2564011
2019-11-14 23:25:23 -08:00
nshrivas
a3e6e74efc Release 5.2.0.157C
Release 5.2.0.157C

Change-Id: I5d85acb921c90c677fba64925d50fcdad4642a07
CRs-Fixed: 774533
2019-11-14 19:25:21 -08:00
Arun Kumar Khandavalli
42b4487910 qcacld-3.0: Register Open/close session callbacks once
Open/close session callbacks are common for all the device modes
supported, so register once during the start_modules.

Change-Id: Ia94857ce4cc608be30e9974ddde8a6261d45f6e3
CRs-Fixed: 2555919
2019-11-14 19:25:21 -08:00
Jingxiang Ge
9d4f29b53d qcacld-3.0: Cleanup wlan_chan_to_freq for iw/force_scc function
Cleanup wlan_chan_to_freq / wlan_freq_to_chan in following
functions:

wlan_hdd_ap_ap_force_scc_override
__iw_set_var_ints_getnone

Change-Id: I9c9de97ef64f6e4653c0457619b40e57767a874a
CRs-Fixed: 2561923
2019-11-14 19:25:10 -08:00
Paul Zhang
7521bf3d20 qcacld-3.0: Convert legacy channel usage
Modify the following API's code and parameter to make
sure it is using frequency instead of channel:

    wlan_hdd_validate_and_get_pre_cac_ch

Change-Id: I55ccc3fefb829bcc95e434bdc56fe630fa837bd0
CRs-Fixed: 2561857
2019-11-14 19:25:03 -08:00
tinlin
c554e34f1c qcacld-3.0: Convert legacy channel usage
Modify the following API's code and parameters to make
sure it is using frequency instead of channel:

	csr_roam_call_callback

Change-Id: I7dffcae95d8db53dd1d2a05745861681c4b35e13
CRs-Fixed: 2564024
2019-11-14 19:24:56 -08:00
nshrivas
1639cab176 Release 5.2.0.157B
Release 5.2.0.157B

Change-Id: I881690594c030a965aff69f440e888af75ffab9c
CRs-Fixed: 774533
2019-11-14 13:52:32 -08:00
sheenam monga
40e89f1060 qcacld-3.0: Update correct band capability to OEM
In case of lowi, Supported bands are populated from
psoc->soc_nif.user_config.band_capability which is same as
that of ini file and not the intersected band support. In
function wifi_pos_populate_caps caps->supported_bands is
populated from psoc->soc_nif.user_config.band_capability
which may not be supported by firmware.

Fix is to update psoc->soc_nif.user_config.band_capability
with the intersected immediately after fetching intersected
band support to avoid incompatibilty.

Change-Id: I4771e3aff227d29916dafd70726daa9f0c87fef8
CRs-Fixed: 2538590
2019-11-14 13:52:32 -08:00
nshrivas
571e69ee6d Release 5.2.0.157A
Release 5.2.0.157A

Change-Id: If78ac2c3bacb07a47610d1cddb781b4073e6d4b6
CRs-Fixed: 774533
2019-11-14 12:13:41 -08:00
Ashish Kumar Dhanotiya
96b4c94294 qcacld-3.0: Do not allow sched scan command in monitor mode
Currently there is no check for the monitor mode
interface in sched scan start/stop commands.
Add a check for monitor mode in sched scan start/stop
commands and do not allow sched scan stop in case of
monitor mode.

Change-Id: I316c3156c25a9b6e9c3d35aaca174a4f1f03f8f9
CRs-fixed: 2530755
2019-11-14 12:13:41 -08:00
nshrivas
3500d896d7 Release 5.2.0.157
Release 5.2.0.157

Change-Id: I223817abf443e2528add4aba9421f1d60608e2e7
CRs-Fixed: 774533
2019-11-14 10:43:08 -08:00
Abhishek Ambure
5ec0d66692 qcacld-3.0: Populate OFDM data rates to firmware in 11ax mode
In 11ax mode the extended rate IEs are not sent to firmware as part
of peer assoc. So if 11ax AP Doesn't advertise the OFDM rates in 2.4ghz
rates IE while include them in extended rate IE, the firmware doesn't
have the OFDM rates.

Thus once the AP switch channel to 5Ghz, as OFDM rates are not set the
Firmware asserts.

To fix this in 11ax send extended rate as well to firmware in peer assoc.

Change-Id: I059a35828d214bc843ad8ebab720fd695bc7f511
CRs-Fixed: 2561566
2019-11-14 10:43:07 -08:00
Alan Chen
dd4e7e3295 qcacld-3.0: Create a new function for adapter reference verification
The current HDD callback in hdd_rx_flush_packet_cbk() does not validate
the adapter context properly. Instead of verifying the adapter magic,
verify the adapter itself is still valid through the adapter list.
Create a new function hdd_get_adapter_by_reference() to verify the
adapter reference.

Change-Id: I468bd55b2318635ad89087e6c6ad6097df68d405
CRs-Fixed: 2563654
2019-11-14 10:42:59 -08:00
nshrivas
4461014f01 Release 5.2.0.156Z
Release 5.2.0.156Z

Change-Id: Iad0a6e86f4fc3637a242c7618e8451c69c0ccfc2
CRs-Fixed: 774533
2019-11-14 07:47:23 -08:00
Abhinav Kumar
9ff4490dcc qcacld-3.0: Fix null ptr dereference in wma_print_wow_stats
wma_print_wow_stats does not do null validation for pointer vdev
returned from call to function wlan_objmgr_get_vdev_by_id_from_psoc
which can lead to null pointer derefrence.

Add NULL pointer check for vdev in wma_print_wow_stats.

Change-Id: I4fae47b303436bf9f2a4768995cea7640bc6feab
CRs-Fixed: 2564073
2019-11-14 07:47:23 -08:00
nshrivas
3de9c892dc Release 5.2.0.156Y
Release 5.2.0.156Y

Change-Id: I48e12707fcbd345f7d3772405e2774f77c8e7fcf
CRs-Fixed: 774533
2019-11-14 06:00:35 -08:00
Amruta Kulkarni
46eaac22aa qcacld-3.0: Add feature protection when calling MFPCapable
Enable WLAN_FEATURE_11W feature protection for MFPCapable,
MFPEnabled,MFPRequired.

Change-Id: I4db739a1b76a2ba11e497703ac49da10f0df770c
CRs-Fixed: 2558922
2019-11-14 06:00:34 -08:00
Tushnim Bhattacharyya
6c40b112ce qcacld-3.0: Replace channel id with frequency in ecsa indication
Replace channel ID with channel frequency in ecsa indication flow.

Change-Id: I1dd3148566e1da37a6f3fa71f1887e66f87f5d1c
CRs-Fixed: 2555384
2019-11-14 06:00:26 -08:00
Rajeev Kumar Sirasanagandla
a57c670729 qcacld-3.0: Add 6GHz support for VENDOR_SUBCMD_DO_ACS
As a part of 6GHz support, add support to parse and send channel
frequency (in MHz) for QCA_NL80211_VENDOR_SUBCMD_DO_ACS command/event.

Change-Id: I9475f9392c6a15b6dc470fbaa2f25c1f4baf0be5
CRs-Fixed: 2533689
2019-11-14 06:00:18 -08:00
Amruta Kulkarni
220ce5c328 qcacld-3.0: Fix uninitialized parameters
Initialize parameters with default values in wlan_hdd_update_phymode(),
csr_is_phy_mode_match()

Change-Id: I2b3b2aff09448776b5ef1d2cdc24b3e0abf3ec39
CRs-Fixed: 2559005
2019-11-14 06:00:11 -08:00
nshrivas
bfad2693d0 Release 5.2.0.156X
Release 5.2.0.156X

Change-Id: I367ef22ab2852f8e1a39ae0b891eb9eedb154acb
CRs-Fixed: 774533
2019-11-13 22:13:44 -08:00
tinlin
7167dc1dfd qcacld-3.0: Convert legacy channel usage
Modify the following API's code and parameters to make
sure it is using frequency instead of channel:

	csr_roam_set_bss_config_cfg

Change-Id: I92ffda4ab9fa66340aa1cd75f3fcbb3b3e36b27d
CRs-Fixed: 2563211
2019-11-13 22:13:44 -08:00
nshrivas
8865eb47ab Release 5.2.0.156W
Release 5.2.0.156W

Change-Id: If2df28ddd2529e5decf9a414edeaf1f4853aeb63
CRs-Fixed: 774533
2019-11-13 06:53:05 -08:00
Liangwei Dong
0e18c47d0c qcacld-3.0: Change channel to Frequency for acs_cfg fields
Change vht_seg0_center_ch and vht_seg1_center_ch in acs_cfg
struct to vht_seg0_center_ch_freq, vht_seg1_center_ch_freq
respectively.

Change-Id: Ie3378376e6f31c239157c8eaaf3ceb22d2e35073
CRs-Fixed: 2564065
2019-11-13 06:52:58 -08:00
Liangwei Dong
50d12dc273 qcacld-3.0: Convert to freq for acs->start_ch
Change acs->start_ch and acs->end_ch to acs->start_ch_freq
and acs->end_ch_freq respectively.

Change-Id: I105cd618970c739340df29d58f635d01a68754d2
CRs-Fixed: 2564018
2019-11-13 06:52:51 -08:00
gaurank kathpalia
0eddedfcc4 qcacld-3.0: ACS changes for 6ghz
Acs changes for 6ghz to change chan to frequency
in the spectral params structure.

Change-Id: Iffd348ac5c2457b313b702a92b340a258992e764
CRs-Fixed: 2564043
2019-11-13 06:52:43 -08:00
gaurank kathpalia
92b81ceb99 qcacld-3.0: Convert primary, secondary channel for acs cfg to freq
Convert primary, secondary channel for acs cfg to freq as part
of ACS 6Ghz changes.

Change-Id: I4f6220b39dae91df070b0764fa8b048cdc6ad00f
CRs-Fixed: 2555988
2019-11-13 06:52:36 -08:00
gaurank kathpalia
648adbafb9 qcacld-3.0: Refactor ACS channel code
Refactor ACS channel code to improve readability
and reduce the duplicate checks.

Change-Id: I00e354d6b564b06a9fe3537dcf2deb7517a9a919
CRs-Fixed: 2550621
2019-11-13 06:52:30 -08:00
nshrivas
9ff7d1f4cb Release 5.2.0.156V
Release 5.2.0.156V

Change-Id: I28c7da4371d15def7d97cddb62fdeeb37f03ff43
CRs-Fixed: 774533
2019-11-13 00:55:56 -08:00
Yeshwanth Sriram Guntuka
e6e60f89fd qcacld-3.0: Do client cleanup in SSR case for P2P GO
Reset adapter done for P2P GO as part of shutdown does
not invoke hdd_sap_indicate_disconnect_for_sta where in
cleanup is done and ap_active flag is reset to false.
After re init, if sta connection happens and driver
unload is triggered, bus_bw timer is not stopped as
part of station stop_adapter since ap_active flag is not
reset to false.

Fix is to invoke hdd_sap_indicate_disconnect_for_sta in
case of P2P GO cleanup during shutdown.

Change-Id: Ia832ccf4311bfdf202fcf01d3ab46023c0f3451f
CRs-Fixed: 2562839
2019-11-13 00:55:56 -08:00
nshrivas
c117c06e27 Release 5.2.0.156U
Release 5.2.0.156U

Change-Id: I8f93af37ccdc3ee704f33b4cd6c821be2c34d751
CRs-Fixed: 774533
2019-11-12 23:12:05 -08:00
nshrivas
885a2b9bca Release 5.2.0.156T
Release 5.2.0.156T

Change-Id: I9c9e97cd7db8217a155f0e30bf7880f58e907ecc
CRs-Fixed: 774533
2019-11-12 19:12:59 -08:00
hqu
ac3362db81 qcacld-3.0: Fix regression issue for htMaxRxAMpduFactor set in vht
5G HE80 mode tput will fail due to
"Change-Id: I8e2833a48ca5de0301634a88eb1a66002b4c9c20".

Fix is to set htMaxRxAMpduFactor with maxAMPDULenExp from
vht capability When STA capability is vht capability.

Change-Id: I6b3c2de0c772688e2b736a07528665e1f23eed94
CRs-Fixed: 2553371
2019-11-12 19:12:59 -08:00
nshrivas
bc84908f30 Release 5.2.0.156S
Release 5.2.0.156S

Change-Id: I1cf8337ee828f833a201c34a1f01e4ef211daad5
CRs-Fixed: 774533
2019-11-12 02:35:22 -08:00
bings
e063e4f155 qcacld-3.0: Convert legacy chan ID usage to chan freq
Modify the following 3 APIs' code and parameters to make
sure they're using frequency instead of channel ID:
   sme_get_reg_info
   wlan_hdd_get_channel_info
   hdd_update_channel_bw_info

Change-Id: I87ad6fb9cd9fcd7fe4e41e62a32e4954e93f8ba1
CRs-Fixed: 2554710
2019-11-12 02:35:14 -08:00
nshrivas
bc67fde4df Release 5.2.0.156R
Release 5.2.0.156R

Change-Id: I14c97aac87feaaf3f1dd1e9e0c7512b93db6f8a4
CRs-Fixed: 774533
2019-11-11 23:08:03 -08:00
Rakesh Pillai
f94b162ed0 qcacld-3.0: cdp: Convergence of cdp_l_flowctl_ops
Currently the cdp apis are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev/vdev id or peer mac address, which will be
used to get the respective handles, and hence
avoiding the unwanted access of the handles if
it has been deleted.

Converged l_flowctl_ops
- register_tx_flow_control
- set_vdev_tx_desc_limit
- set_vdev_os_queue_status
- deregister_tx_flow_control_cb
- flow_control_cb
- get_tx_resource
- ll_set_tx_pause_q_depth
- vdev_flush
- vdev_pause
- vdev_unpause

CRs-Fixed: 2539748
Change-Id: I8ad4a20914c654b8e8aaf629dda7f673fdb110e4
2019-11-11 23:08:02 -08:00
Rakesh Pillai
4981a8f790 qcacld-3.0: cdp: Convergence of cdp_mob_stats_ops
Currently the cdp apis are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev/vdev id or peer mac address, which will be
used to get the respective handles, and hence
avoiding the unwanted access of the handles if
it has been deleted.

Converged mob_stats_ops
- clear_stats

CRs-Fixed: 2539747
Change-Id: I5ee060b62d15380df4b8d15bb5709d700902aafd
2019-11-11 23:07:57 -08:00
Rakesh Pillai
84714471df qcacld-3.0: cdp: Convergence of cdp_ocb_ops
Currently the cdp apis are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev/vdev id or peer mac address, which will be
used to get the respective handles, and hence
avoiding the unwanted access of the handles if
it has been deleted.

Converged ocb_ops
- set_ocb_chan_info
- get_ocb_chan_info

CRs-Fixed: 2539745
Change-Id: I7de53c48ec6b7f0c09be7c9cf642d8cf4f8eae78
2019-11-11 23:07:52 -08:00
Rakesh Pillai
82555082c9 qcacld-3.0: cdp: Convergence of cdp_throttle_ops
Currently the cdp apis are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev/vdev id or peer mac address, which will be
used to get the respective handles, and hence
avoiding the unwanted access of the handles if
it has been deleted.

Converged throttle_ops
- throttle_init_period
- throttle_set_level

CRs-Fixed: 2539744
Change-Id: I0e1339ead92d66463d3b58ed9268c7194fd2bd27
2019-11-11 23:07:46 -08:00
Rakesh Pillai
ef35fab84c qcacld-3.0: cdp: Convergence of cdp_delay_ops
Currently the cdp apis are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev/vdev id or peer mac address, which will be
used to get the respective handles, and hence
avoiding the unwanted access of the handles if
it has been deleted.

Converged delay_ops
- tx_delay
- tx_delay_hist
- tx_packet_count
- tx_set_compute_interval

CRs-Fixed: 2539742
Change-Id: I201d343f4ced3b861a65ddf78e10e66f786e5e91
2019-11-11 23:07:40 -08:00
Rakesh Pillai
a889ffa967 qcacld-3.0: cdp: Convergence of cdp_flowctl_ops
Currently the cdp apis are given pdev/vdev/peer
handle as its arguments, which is directly
accessed in those APIs. This can cause a
race-condition in access of the respective
handles if it has been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev/vdev id or peer mac address, which will be
used to get the respective handles, and hence
avoiding the unwanted access of the handles if
it has been deleted.

Converged flowctl_ops
- flow_pool_map_handler
- flow_pool_unmap_handler
- dump_flow_pool_info
- tx_desc_thresh_reached

CRs-Fixed: 2539738
Change-Id: I9b11e66d8c2644f16e0f2464c323798a4cba007a
2019-11-11 23:07:35 -08:00
nshrivas
76be14960f Release 5.2.0.156Q
Release 5.2.0.156Q

Change-Id: I2d44b87e3f9fa75e0534652994c763388edadaa2
CRs-Fixed: 774533
2019-11-11 16:44:09 -08:00
Pragaspathi Thilagaraj
483d70b71b qcacld-3.0: Validate hidden ssid after roaming to avoid disconnection
After roam synch indication is received, the driver compares the
SSID of the current AP and SSID of the roamed AP. If there is a
mismatch, driver issues disassociate to current connected AP.
This causes data path queues to be stopped and M2 to the roamed
AP from userspace will fail. The SSID of the current AP is
parsed from the beacon IEs stored in the connected bss
description. In hidden ssid case the SSID IE has 0 length
and the host receives unicast probe with SSID of the
AP in the roam synch indication. So SSID mismatch happens
and validation fails.

Check if the current SSID in the bss description is NULL.
If its NULL, get the SSID from the connected profile in csr
session.

Change-Id: I30c41b821c0fc506d763eb33f8bb706dd26b405a
CRs-Fixed: 2544915
2019-11-11 16:44:08 -08:00
nshrivas
4b9cad9628 Release 5.2.0.156P
Release 5.2.0.156P

Change-Id: I1354489de590a05e840260b1634b2e1191c882bd
CRs-Fixed: 774533
2019-11-11 15:15:47 -08:00
gaurank kathpalia
7944f32d2c qcacld-3.0: Make get_nss command compatible with hastings
Currently the command to get nss checks the max capability
of enable 2x2, and if the capability is 1, and the
hw mode is currently DBS, it lowers the nss capability
to 1 which is expected in helium, but not in hastings.

Fix is to check whether the device supports DBS 2x2
capability and then only downgrade the value of nss.

Change-Id: I18acef455c0790862ba786f87af776b65646aca6
CRs-Fixed: 2557587
2019-11-11 15:15:46 -08:00
Sourav Mohapatra
f43b308019 qcacld-3.0: Take dev_hold during iterating adapters
The existing API/macro hdd_for_each_adapter() iterates over the hdd
adapter list with the iterator pointing to each adapter. This iteration
is not safe when seen with respect to unregistration of netdev going in
parallel in other thread. In case the adapter is removed, the iteration
will result in NULL pointer dereference.

An example of this issue is seen when the following happens in parallel.
	1. del_virtual_interface -> hdd_remove_adapter -> removes node
	2. hdd_indicate_mgmt_frames -> hdd_for_each_adapter iteration

To make the iteration delete safe, redirect the fetching of the adapter
through objmgr. This reduces the possibility of race window by a large
margin. In this case, even if the adapter is freed as a part of
unregister_netdevice, the reference held ensures that we block the
unregister until the work is done in the current thread.

Change-Id: Ic49aa22a8eef68dc1977fb73f2c1fd920bfeb7a1
CRs-Fixed: 2557890
2019-11-11 15:15:33 -08:00
Li Feng
0ab277ae53 qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following API code and parameters to make
sure they're using frequency instead of channel ID:
    csr_roam_get_phy_mode_band_for_bss

Change-Id: I98be07f9bcca3b85fd1dedbc532fc9810a8d5e4d
CRs-Fixed: 2560010
2019-11-11 15:15:19 -08:00
nshrivas
ce07ddd790 Release 5.2.0.156O
Release 5.2.0.156O

Change-Id: Ic6ed54cbe06f4bb328bad45bac71be5ac51f1aff
CRs-Fixed: 774533
2019-11-11 10:49:18 -08:00
gaurank kathpalia
f50998a4cb qcacld-3.0: Set the flag for max BW support
Currently the FW expects the flag of
scan chan cmd to be set if the max BW
is filled for all the channels, which
is not set by driver.

Fix is to set the flag's 2 bit to allow
FW to use the max chanel BW.

Change-Id: I6240b8ae2f0c7389c43dd310d894a35411503d6e
CRs-Fixed: 2550431
2019-11-11 10:49:18 -08:00
nshrivas
151b1d0fc3 Release 5.2.0.156N
Release 5.2.0.156N

Change-Id: Ic3f7e5eeb4ac51228968b402ca31cb1e4f3dde5e
CRs-Fixed: 774533
2019-11-11 02:05:27 -08:00
nshrivas
e5fe7adfe4 Release 5.2.0.156M
Release 5.2.0.156M

Change-Id: I9e5c0b468fe89ae707517eae70b1bd6256ff739a
CRs-Fixed: 774533
2019-11-10 20:41:02 -08:00
Will Huang
a6af7e1182 qcacld-3.0: Use channel frequency in sme_get_cfg_valid_channels()
Use channel frequency in API sme_get_cfg_valid_channels(), and modify
all places which call this API.

Change-Id: Iab15d03b6e9070c68711f06ec7300bb29d986185
CRs-Fixed: 2559274
2019-11-10 20:41:01 -08:00
nshrivas
9c82045c9b Release 5.2.0.156L
Release 5.2.0.156L

Change-Id: Ieca4041da5eba25446038b540eda544e505c151c
CRs-Fixed: 774533
2019-11-09 02:26:29 -08:00
Arun Kumar Khandavalli
c13afcd9da qcacld-3.0: Retrieve information from the object manager vdev
sme_session_params has duplicate information which can be retrived
from the vdev object directly, hence remove the duplicate values
and get information directly from the vdev.

Change-Id: I151dbefcfedc20673fbf072b9c308dc9a6243bb1
CRs-Fixed: 2555909
2019-11-09 02:26:27 -08:00
nshrivas
dc111e8549 Release 5.2.0.156K
Release 5.2.0.156K

Change-Id: Id21eb310f6ea895a46dbaf2a12ce1d06b82f33da
CRs-Fixed: 774533
2019-11-08 18:23:38 -08:00
Li Feng
96955a1edd qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following API code and parameters to make
sure they're using frequency instead of channel ID:
    csr_roam_chk_lnk_set_ctx_rsp

Change-Id: Ia96b78406fc09d0ee4383a446bdd5e09d8f7f12c
CRs-Fixed: 2559993
2019-11-08 18:23:37 -08:00
nshrivas
ac101ab6bb Release 5.2.0.156J
Release 5.2.0.156J

Change-Id: I1879c2352e8970f9771316c5a5c51c23d3635df8
CRs-Fixed: 774533
2019-11-08 15:54:58 -08:00
Mohit Khanna
5b42d1b969 qcacld-3.0: Wait for IPA TX Completions on IPA disablement
In DBS scenario(SAP + STA) when all SPA clients disconnect, while STA is
still connected, IPA pipes are disabled on the lithium target. At this
time, its possible that some packets TX from IPA over WLAN are still
pending. If these completions come after IPA pipes are disabled, it can
lead to a NOC error, since the GSI doorbell register for WBM2SW2 ring
may be clock gated (after IPA pipes are disabled).

To avoid this situation, wait for some time before disabling IPA pipes.
IPA pipes are disabled after a timeout, when system suspend call tries
to suspend the bus. A driver unload or a softap tear-down will also
disable the pipes.

Change-Id: I542049fa19d0dcf5c31d9b8a2d836388847dd6c1
CRs-Fixed: 2553670
2019-11-08 15:54:58 -08:00
nshrivas
3161be186c Release 5.2.0.156I
Release 5.2.0.156I

Change-Id: I099d8c183ab1e6111beba2911555754b5855c619
CRs-Fixed: 774533
2019-11-08 06:54:40 -08:00
Arun Kumar Khandavalli
27f443e880 qcacld-3.0: Drive the self peer creation from the sme layer
Presently as part of the vdev creation the self peer for the vdev
is created in the object manager and in the firmware. The self
peer creation in the object manager needs the vdev to be in the
created state. As part of new changes to send the vdev create to
firmware as part of the vdev creation notification there will be
failure in creating in the self peer.

Hence, drive the self peer creation from the SME layer which will
create the vdev.

Change-Id: I0875f4ec5bd96438c0f21056e1d6920d3be2a177
CRs-Fixed: 2555868
2019-11-08 06:54:39 -08:00
nshrivas
1864fba4b9 Release 5.2.0.156H
Release 5.2.0.156H

Change-Id: I858775e21951c73273f0cdfbd72a508a87303f3c
CRs-Fixed: 774533
2019-11-08 01:45:03 -08:00
Rakesh Pillai
3189481b43 qcacld-3.0: Pass vdev_id instead of vdev for cdp txrx stats
The datapath vdev handle is not to be used outside
datapath layer. So the cdp api for getting txrx stats
will pass vdev_id instead of the vdev handle.

Pass vdev id instead of vdev handle for the cdp api
used to get txrx stats.

CRs-Fixed: 2560363
Change-Id: I761966c2a7c7145e511b679556477beea74eda06
2019-11-08 01:45:02 -08:00
nshrivas
f852281c41 Release 5.2.0.156G
Release 5.2.0.156G

Change-Id: I0d6cd8a7b58cb016fdd45e9773fe2a093a7c5858
CRs-Fixed: 774533
2019-11-07 15:16:12 -08:00
Li Feng
ae9c0fa3fb qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following API code and parameters to make
sure they're using frequency instead of channel ID:

    csr_is_valid_channel

Change-Id: Ie0c912459daf8bcd907b27a288ad82edd18c22f1
CRs-Fixed: 2554177
2019-11-07 15:16:11 -08:00
nshrivas
7b8e40d71f Release 5.2.0.156F
Release 5.2.0.156F

Change-Id: I8b7a3c01a6e24582828540f41bcef5b0534c641f
CRs-Fixed: 774533
2019-11-07 13:43:49 -08:00
nshrivas
45c9e3a6e8 Release 5.2.0.156E
Release 5.2.0.156E

Change-Id: Ie634b06a12b639f3582e067e91eefbd88b24d469
CRs-Fixed: 774533
2019-11-07 09:20:26 -08:00
Alan Chen
d77099006c qcacld-3.0: Remove arp_ac_category INI item
The mechanism of overriding ARP frames with AC will not work since
firmware always defaults to BE. Since this overriding is not going to
be supported, remove the arp_ac_category INI and all areas that use it.

Change-Id: I8bff251ded5842f3d0c95bb916eb98a051696ae0
CRs-Fixed: 2555459
2019-11-07 09:20:25 -08:00
nshrivas
62854768d5 Release 5.2.0.156D
Release 5.2.0.156D

Change-Id: Icdc7858f19f53b313841ee2f2aa5ccd5696e8f03
CRs-Fixed: 774533
2019-11-07 07:23:48 -08:00
tinlin
f80d3c78bb qcacld-3.0: Convert legacy channel usage
Modify the following API' code and parameters to make
sure it is using frequency instead of channel:

    csr_add_to_occupied_channels

Change-Id: I002b4d4fe08ee14c8daa3ed113a030d5ab0f5557
CRs-Fixed: 2554988
2019-11-07 07:23:47 -08:00
Tushnim Bhattacharyya
5d01a8a2b5 qcacld-3.0: Replace channel with frequency in struct sSirProbeRespBeacon
Replace channel with frequency in struct sSirProbeRespBeacon.

Change-Id: I2407ed3e6ddd11c72c7b4359197241654922ea65
CRs-Fixed: 2556361
2019-11-07 07:23:43 -08:00
wadesong
88aa89a079 qcacld-3.0: Convert SME code legacy channel ID usage
1) Change hdd_parse_plm_cmd's code to populate frequency
   list instead of channel ID list into struct
   plm_req_params.

2) Use frequencies instead of channel IDs in the following
   APIs' parameter/code:

   sme_set_plm_request
   csr_is_supported_channel

3) Stop populating channel freq list in function
   wma_plm_start, as the frequency list will be included
   in struct plm_req_params automatically.

Change-Id: I6704752317248ac4cfe800629d777f4a127e7be7
CRs-Fixed: 2560088
2019-11-07 07:23:37 -08:00
nshrivas
0cfea13e63 Release 5.2.0.156C
Release 5.2.0.156C

Change-Id: I72d6074b32f6aa2476e9885b5c2f8cf373bd1204
CRs-Fixed: 774533
2019-11-07 02:42:58 -08:00
wadesong
2bab3a5b7c qcacld-3.0: Convert SME code legacy channel ID usage
1) Change csr_get_cfg_valid_channels's code to make it
   use channel frequencies directly to calculate a
   valid channel list.

2) Add kernel-doc for csr_get_cfg_valid_channels.

3) Remove the definition, declaration and usage of
   csr_get_cfg_valid_freq as csr_get_cfg_valid_channels
   does exactly the same job.

Change-Id: I6745cb2220bf9387c64ac8c271297cb89f821ab3
CRs-Fixed: 2560091
2019-11-07 02:42:58 -08:00
nshrivas
31146c039c Release 5.2.0.156B
Release 5.2.0.156B

Change-Id: I81b20dd3fecfe384ece3e8282b61fe3201c4b0a1
CRs-Fixed: 774533
2019-11-06 23:50:23 -08:00
nakul kachhwaha
e3e92ae6db qcacld-3.0: Fix data stall during TDLS Offchan Operation
In non concurrency scenario with TDLS Offchan link, FW is sending
two pauses namely PAUSE_TYPE_CHOP and PAUSE_TYPE_CHOP_TDLS_OFFCHAN
back to back when DUT dwells between TDLS Off channel and AP channel
respectively. HOST handles these events as vdev based event instead
of peer based event and remove all the tx queues from scheduler for
all the peer irrespective of the pause type. This will lead to data
stall in TDLS offchan scenarios, as at any point of time, host will
be receiving one of the two pauses and keep its peer queues out of
scheduler.

Changes are done to decouple the handling of pause/unpause events
for TDLS peers with Offchan enabled from vdev based pause/unpause.
TDLS peers will be paused/unpaused based on PAUSE_TYPE_CHOP_TDLS_OFFCHAN
pause type. Other pause/unpause events will be handled as usual.

Change-Id: Iccb46fd6d121d5df6d53633c9978ddc8e02f588f
CRs-Fixed: 2558612
2019-11-06 23:50:23 -08:00
nshrivas
995f68f46e Release 5.2.0.156A
Release 5.2.0.156A

Change-Id: I8340fcd98cbeb23b1a416948ff79e4b890bd6cfc
CRs-Fixed: 774533
2019-11-06 21:35:57 -08:00
Rachit Kankane
0c9c5d3fdc qcacld-3.0: Update Beacon template
On detecting RADAR, if SAP / GO is operating on DFS channel, host
driver updates Beacon / Probe response template with CSA / ECSA IE
to firmware.

Once the count in CSA IE is reached to 0, host should remove these
IEs from both Beacon / Probe response template and send it to FW.

But with INI gDisableDFSChSwitch=1, After detecting RADAR, host
driver updates the Beacon and Probe response template with (E)CSA
IEs but doesn't remove these after count reaches to 0.
Updated the code to remove these IEs when INI gDisableDFSChSwitch
is set.

Change-Id: I91ea557b23a9bbd01dbad32a21ea4a21d43dc8fe
CRs-Fixed: 2552192
2019-11-06 21:35:56 -08:00
nshrivas
9ccde917b9 Release 5.2.0.156
Release 5.2.0.156

Change-Id: Ie9dd8b403ac4f74be1c5473829d93070ccc9e6be
CRs-Fixed: 774533
2019-11-06 18:02:41 -08:00
Kiran Kumar Lokere
cfdb4a7249 qcacld-3.0: Correct the log level of debug message
Change the log level to debug for HE operation IE information and
check for 6G session to log 6G operation IE information.

Change-Id: I9bcad23022253438381a68fe37f68d525d265035
CRs-Fixed: 2552012
2019-11-06 18:02:41 -08:00
nshrivas
17a19013db Release 5.2.0.155Z
Release 5.2.0.155Z

Change-Id: I203c180aa28e634f06a6e1fefa960294846b8a0f
CRs-Fixed: 774533
2019-11-06 14:06:05 -08:00
bings
2e8c62b82d qcacld-3.0: Convert legacy chan ID usage to chan freq
Modify the following API's code and parameters to make
sure it is using frequency instead of channel ID:
   sme_get_connected_roaming_vdev_band

Change enum band_info band field in struct set_pcl_req
to uint32_t band_mask

Change-Id: I8ad6fc2676c2306043aa9415eefb2b89d8c49a4d
CRs-Fixed: 2555041
2019-11-06 14:06:04 -08:00
bings
a4e27271d9 qcacld-3.0: Disable dfs phyerr offload when no sap/go in DFS channel
As FW required, send WMI_PDEV_DFS_PHYERR_OFFLOAD_DISABLE_CMDID when there
is no beaconing session in DFS channel for FW which supports dfs offload.

Change-Id: Ib3c24758b81d6218d2504729d44cdbfb122933ee
CRs-Fixed: 2544846
2019-11-06 14:05:48 -08:00
nshrivas
3fd35196eb Release 5.2.0.155Y
Release 5.2.0.155Y

Change-Id: I1c8e4488d95bc2e6fb1d158b46f7fb8c2521a995
CRs-Fixed: 774533
2019-11-06 12:38:07 -08:00
Visweswara Tanuku
6aca92114d qcacld-3.0: Do not send baselining start/stop during motion detection
Motion detection baselining can be started during Motion detection
phase which results in false motion detection

Do not send baselining start/stop during Motion detection phase,
to prevent false motion detection

CRs-Fixed: 2556575

Change-Id: I20de48b3d09cf8adec3a3a2d9585ad3754f12a9e
2019-11-06 12:38:06 -08:00
nshrivas
d4a741fa33 Release 5.2.0.155X
Release 5.2.0.155X

Change-Id: I622188ac3a1013b93e4baf2b315a518154ce5ccc
CRs-Fixed: 774533
2019-11-06 06:30:54 -08:00
nshrivas
2814e8deeb Release 5.2.0.155W
Release 5.2.0.155W

Change-Id: Id9d8a2bc9a980714cb6a3c808f60eb7ed3347d1e
CRs-Fixed: 774533
2019-11-06 03:33:11 -08:00
nshrivas
771911cded Release 5.2.0.155V
Release 5.2.0.155V

Change-Id: I3980dccdfb8286a347c76b1f158f78c3fca1ceb0
CRs-Fixed: 774533
2019-11-05 23:42:41 -08:00
Abhishek Singh
aed03cf5da qcacld-3.0: Check total beacon len before appending the additional IE
In sch_set_fixed_beacon_fields driver check if the additional IE
length + tDot11fBeacon2 length is less than the max beacon size
before appending the additional IE. But total beacon size also include
tDot11fBeacon1 and TIM IE. Thus additional IE may lead to beacon len
greater than SIR_MAX_BEACON_SIZE.

So consider tDot11fBeacon1 and TIM IE length as well, while checking
if additional IE can be appended.

Change-Id: I2e659e4f9eab4b558ecdb3daa076a5cfb0f3d7f3
CRs-Fixed: 2558911
2019-11-05 23:42:41 -08:00
nshrivas
69bf2935c1 Release 5.2.0.155U
Release 5.2.0.155U

Change-Id: I479f4990d55f1e329431c2f33354dfa53aa310bd
CRs-Fixed: 774533
2019-11-05 11:03:58 -08:00
Tushnim Bhattacharyya
e189d07322 qcacld-3.0: Replace channel with frequency in csr
Replace channel ID with frequency in csr.

Change-Id: Ie45056a2153c0e59c393cbf432604033543906f1
CRs-Fixed: 2552053
2019-11-05 11:03:58 -08:00
nshrivas
4eaed322b6 Release 5.2.0.155T
Release 5.2.0.155T

Change-Id: I5000360ef539933170d714b8611cbe55ced12843
CRs-Fixed: 774533
2019-11-05 09:27:19 -08:00
Amruta Kulkarni
b4a567d28a qcacld-3.0: Code clean up in lim_send_ht40_obss_scanind()
Remove wlan_reg_freq_to_chan() reference in
function lim_send_ht40_obss_scanind()

Change-Id: I776500a9f127b0837f9c1eef65b381cd89845622
CRs-Fixed: 2556403
2019-11-05 09:27:18 -08:00
Abhinav Kumar
0ba7ed00e3 qcacld-3.0: Fix Race condition btw RSO stop and VDEV_SET_PARAM cmd to FW
Currently, RSO STOP is going through CSR to WMA via LIM but VDEV_SET_PARAM
is going directly CSR to WMA. This results VDEV_SET_PARAM got processed
first and host sends VDEV_SET_PARAM (disable roaming) before
11K_OFFLOAD_REPORT to fw. If FW try to disable roaming without disabling
11k offload, leads to assert in fw.

In order to avoid asset in fw, host should send RSO cmd command before
disabling roaming via VDEV_SET_PARAM cmd.

Fix is, like RSO STOP, send VDEV_SET_PARAM from CSR to WMA via LIM.

Change-Id: Idbb602b717f46f88426ef36a738efd456ac7af8b
CRs-Fixed: 2554449
2019-11-05 09:27:12 -08:00
Nirav Shah
2b3843e027 qcacld-3.0: Make tx resource hi/low threshold configurable
Make tx resource hi/low threshold configurable through
config files and update hi threashold from 7.5% to 8%.

Change-Id: I2e52b7910caedf6e0af24242b79e1e9d42c6b85b
CRs-Fixed: 2548100
2019-11-05 09:26:45 -08:00
nshrivas
273ae92a4d Release 5.2.0.155S
Release 5.2.0.155S

Change-Id: I1ffbae7682bcba0cfa97169a8b7e0af6a450afc8
CRs-Fixed: 774533
2019-11-05 04:17:43 -08:00
Visweswara Tanuku
41d21c04e4 qcacld-3.0: Do not start motion detection if baselining is not done
Do not start motion detection if baselining is not done, or motion
detection config values are not available

CRs-Fixed: 2547648

Change-Id: I23a02dbd21e2b673e625938a35003f3730135327
2019-11-05 04:17:43 -08:00
tinlin
8d8fbcefa2 qcacld-3.0: Convert legacy channel usage
Modify the following API' code and parameters to make
sure it is using frequency instead of channel:

    csr_neighbor_roam_handoff_req_hdlr

Change-Id: I0af2bc8b3d59a6ca1bff83eff05364f9ac5b10db
CRs-Fixed: 2554953
2019-11-05 04:17:38 -08:00
nshrivas
c4a5d3ebd4 Release 5.2.0.155R
Release 5.2.0.155R

Change-Id: Ia8fa05afad217135e6451164e79e3659280e0948
CRs-Fixed: 774533
2019-11-05 02:12:29 -08:00
Visweswara Tanuku
a545b1d96a qcacld-3.0: Genoa: Do not send set_thermal_mgmt cmd
In Genoa, FW thermal throttling feature do not use cmd
set_thermal_mgmt
Do not send this cmd via iwpriv cmd - set_thermal_cfg

CRs-Fixed: 2555975

Change-Id: Ib8f430b230568627faecdf3da683a76786d7c8a1
2019-11-05 02:12:28 -08:00
Ashish Kumar Dhanotiya
94ffbd1079 qcacld-3.0: Remove cds_queue.h and queue.h from driver code
Currently MCL and WIN both have separate queue.h
files with the same declarations and definitions.
As part of cleanup single queue.h is created in cmn code,
use this newly created queue.h file instead of MCL
specific queue.h file.

Change-Id: I91619e5fff2040cb588cd0413cb42d5d7469f41f
CRs-fixed: 2505800
2019-11-05 02:12:22 -08:00
nshrivas
e276cba805 Release 5.2.0.155Q
Release 5.2.0.155Q

Change-Id: I96740bcfa9ca58a53afd374954fc968dde5711cb
CRs-Fixed: 774533
2019-11-04 00:19:55 -08:00
Wu Gao
882a1c94ff qcacld-3.0: Convert SME code legacy channel ID usage
Pass frequency to pcl_list of struct wmi_pcl_chan_weights directly.

Change-Id: I12cdbd37517098a73d6047288ab2c5eae71463cb
CRs-Fixed: 2554750
2019-11-04 00:19:55 -08:00
nshrivas
267ccdfb78 Release 5.2.0.155P
Release 5.2.0.155P

Change-Id: Icc3a76d1a5840d44f5181a4c8846007281a2412b
CRs-Fixed: 774533
2019-11-02 19:43:55 -07:00
Nirav Shah
d1fce91a9c qcacld-3.0: Increase value of AST skid limit for QCN7605
Increase value of AST skid limit for QCN7605 to avoid
peer create failure in FW in case of AST hash collision.

Change-Id: If931229d3b1458556a6e5c1023fb646b7274bedd
CRs-Fixed: 2517716
2019-11-02 19:43:54 -07:00
nshrivas
f44b5ac600 Release 5.2.0.155O
Release 5.2.0.155O

Change-Id: I0addb08c008f249d92226226095932ca39898589
CRs-Fixed: 774533
2019-11-02 12:25:39 -07:00
Sourav Mohapatra
e14c24792e qcacld-3.0: Use delete safe loop to remove sta info
Presently, in hdd_reset_all_adapters, the removal of the sta_info
structures via hdd_deregister_sta happens inside a loop that is not safe
for removal. This can cause various potential invalid memory access from
use-after-free to null-dereference.

To rectify this, use the delete safe API to loop over the sta info
entries.

Change-Id: I3d5526af8d8f819874f6bcffabf27ceb74f6f32a
CRs-Fixed: 2557364
2019-11-02 12:25:39 -07:00
Abhishek Singh
9fee518fe3 qcacld-3.0: Avoid calling wlan_hdd_set_mon_chan for STA mode
As part of Ie9ffc701d93ed1c050375dd56151b7a0da69cdce the STA mode
channel change was added in disconnected state for spectral scan
test at CV2X platform.

Now with iwpriv wlan0 setMonChan on STA mode, a monitor mode
pe_session is created in PE/LIM which take ref count with
WLAN_LEGACY_MAC_ID. As the interface is STA type this session
is not deleted when vdev is deleted. This lead to vdev ref leak.

This code is broken and is no longer in use and cause vdev
ref leak when executed. Thus revert
Ie9ffc701d93ed1c050375dd56151b7a0da69cdce.

Also move the lim session create to hdd_set_mon_rx_cb during
vdev create, as it is deleted during vdev delete.

Change-Id: Ib60aa2bd2746a8cd17f20efa7506c18784a42630
CRs-Fixed: 2557160
2019-11-02 12:25:34 -07:00
Sourav Mohapatra
32354389fb qcacld-3.0: Add NULL check for heap allocations
In function hdd_association_completion_handler, there are missing NULL
checks for couple of heap allocated variables. This can lead to
potential NULL pointer dereference.

Add NULL pointer sanity check.

Change-Id: I4343833b9e12da0012cfbff006bd8891e9bae025
CRs-Fixed: 2556755
2019-11-02 12:25:29 -07:00
nshrivas
84395d55b4 Release 5.2.0.155N
Release 5.2.0.155N

Change-Id: I1c2e870fbc1bf617f83f770a8d150a6f145e0fd6
CRs-Fixed: 774533
2019-11-02 05:19:59 -07:00
Paul Zhang
1ef2b7cd7f qcacld-3.0: Config latency level to fw after vdev creates
From android Q, it uses a random MAC to connect to different
SSIDs which causes the interface down/up, the vdev will be
deleted and the latency level info is lost in firmware.

To fix this, save the latency level and reconfig it to fw
after vdev creates.

Change-Id: Ifac93fb869553d0f9eb553d5c41da43c8b014ad8
CRs-Fixed: 2554736
2019-11-02 05:19:58 -07:00
nshrivas
0c0f1f392c Release 5.2.0.155M
Release 5.2.0.155M

Change-Id: I1e1bb0d453b85fd838958c573c9e35552bfc3bc7
CRs-Fixed: 774533
2019-11-01 16:59:38 -07:00
Jianmin Zhu
bc841052ca qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following 2 APIs' code and parameters to use frequency
instead of channel ID:
sme_get_operation_channel
wlan_hdd_update_survey_info

Change-Id: I90f05cc7fedd061bf08b47299d2fb6530c470136
CRs-Fixed: 2554149
2019-11-01 16:59:38 -07:00
nshrivas
c136369dc0 Release 5.2.0.155L
Release 5.2.0.155L

Change-Id: Ic754f0af6361f0aecac0b9d38f206be195a16194
CRs-Fixed: 774533
2019-11-01 15:19:47 -07:00
Wu Gao
f5a00ddc1b qcacld-3.0: Avoid to add duplicate HE IE
Host will set HE IE by channel mode, and needn't copy he ie to
additional ie. Otherwise, there will be two he ies in beacon frames of
P2P GO.

Change-Id: Ia144bb5e96f00114658a371ef27c65f90a6c7df2
CRs-Fixed: 2549450
2019-11-01 15:19:47 -07:00
Kiran Kumar Lokere
93484d7ccb qcacld-3.0: Fix the wrong HE 160MHz mcs map in assoc request
Populate HE 160MHz mcs map only from 5G band mac-phy capabilities.
Session bandwith is checked to disable HE mcs for 160MHz, but session
bandwidth is updated after the MCS is disabled. Update HE 160MHz
MCS map after session bandwidth is derived.

Change-Id: I94813ae269856b34cf1ea6c6a13013738909c674
CRs-Fixed: 2556457
2019-11-01 15:19:43 -07:00
nshrivas
c42cecd11f Release 5.2.0.155K
Release 5.2.0.155K

Change-Id: I62bf487a591d0da13af3b3d2998d0238365b88cb
CRs-Fixed: 774533
2019-11-01 13:47:22 -07:00
Abhinav Kumar
d883b0e176 qcacld-3.0: Update group mgmt cipher suite in RSO commands
Newly introduced WMI macro for group management cipher suite is:
WMI_CIPHER_BIP_GMAC_256 0xf

Currently, host updates the localy defined macro for group
management cipher suite to the firmware only as part of RSO
commands over the WMI_AP_PROFILE command. Host should update
group management cipher suite as per WMI cipher macro.

Fix is to update the group management cipher suite in RSO cmd
as per WMI cipher macro.

Change-Id: I81dc5e800c55d1eb6cd0447265205d3413b29177
CRs-Fixed: 2547507
2019-11-01 13:47:22 -07:00
nshrivas
9eab06b7b8 Release 5.2.0.155J
Release 5.2.0.155J

Change-Id: Ib33bc6fcc70c4873738f17da9428801c52c95c9a
CRs-Fixed: 774533
2019-11-01 12:05:22 -07:00
Jianmin Zhu
203d7533f9 qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following 2 APIs' code and parameters to use frequency
instead of channel ID:
   sme_get_roam_scan_channel_list
   drv_cmd_get_roam_scan_channels

Change-Id: I4e6edee71ef25bf73c170813159f5078f0c3e612
CRs-Fixed: 2554148
2019-11-01 12:05:22 -07:00
Liangwei Dong
7211b1d82e qcacld-3.0: Check vdev valid for access
Validate sap_contex->vdev before access.

Change-Id: Ib71c0d970a5ec119a01ecbb1b1f98a3a2a936a2a
CRs-Fixed: 2549289
2019-11-01 12:05:16 -07:00
Sourav Mohapatra
934409a8f8 qcacld-3.0: Clean up cache sta info in case of SAP
Currently in the driver, the cache sta info is not being cleaned up
before deinit of the SAP operation. This can lead to potential memory
leaks during driver unload.

Cleanup the remaining cached sta structures before deinit.

Change-Id: I75a61d8dbf8a6a8372882d2dcc978cc1dd0fb406
CRs-Fixed: 2550245
2019-11-01 12:05:10 -07:00
Li Feng
3cae460349 qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following API code and parameters to make
sure they're using frequency instead of channel ID:

    csr_roam_sort_channel_for_early_stop

Change-Id: Ifaab55099d00988bf56f13dcadca8a1f6000e646
CRs-Fixed: 2554178
2019-11-01 12:05:05 -07:00
nshrivas
6800f50db2 Release 5.2.0.155I
Release 5.2.0.155I

Change-Id: I787db298c2a7e510f440e6599b0d16adfb055c0d
CRs-Fixed: 774533
2019-11-01 08:16:58 -07:00
gaurank kathpalia
aa252b5ea2 qcacld-3.0: ACS changes for 6ghz support
Driver ACS changes for 6Ghz channel support

Change-Id: I3d01f8aeda10037175588690100762d6a7e00f2c
CRs-Fixed: 2555901
2019-11-01 08:16:57 -07:00
Jianmin Zhu
dc76e63f0f qcacld-3.0: Remove wma target_if F/W event handler from wma
target_if F/W event handler is moved from wma to cmn part per
MCL/WIN converge requirement.

Change-Id: I583059190827c9aed8d8089412a4cfac92ddf4c9
CRs-Fixed: 2554859
2019-11-01 08:16:50 -07:00
Jianmin Zhu
bc99999c41 qcacld-3.0: Don't register vdev start stop delete event in wma_open
Vdev start/stop/delete events have been registered in
target_if_vdev_mgr_wmi_event_register in MCL/WIN common code.

Change MACRO name SERIALIZE_VDEV_RESP_TIMER to
SERIALIZE_VDEV_RESP.

Change-Id: I4d54a4755d7311b488f12f46a73db7e4645a4e0b
CRs-Fixed: 2554732
2019-11-01 08:16:46 -07:00
nshrivas
1745b8c454 Release 5.2.0.155H
Release 5.2.0.155H

Change-Id: I8c176a89ea1f1287efbf86b7ab6194d4bbbaf3b4
CRs-Fixed: 774533
2019-11-01 04:57:20 -07:00
Gururaj Pandurangi
9bcf639924 qcacld-3.0: Replace channel id with frequency
Replace channel ID with channel frequency in tSirMacChanNum
limReassocChannelId under struct pe_session

Change-Id: Ice8565ebcfcb863b7da7ec14a36b3abf3332ebab
CRs-Fixed: 2556247
2019-11-01 04:57:20 -07:00
nshrivas
eee30a7889 Release 5.2.0.155G
Release 5.2.0.155G

Change-Id: I115ddafef8da57dea128f16ee7a5392f1e15f94f
CRs-Fixed: 774533
2019-11-01 02:30:47 -07:00
Liangwei Dong
075afa7922 qcacld-3.0: Use freq for SME roam API
Change below csr/sme APIs and dependent APIs to
use freq as parameter:
csr_create_roam_scan_channel_list,
csr_neighbor_roam_channels_filter_by_current_band,
csr_neighbor_roam_merge_channel_lists,
csr_create_bg_scan_roam_channel_list,
sme_update_roam_scan_channel_list.

Change-Id: Icfc45863d6dacb318558ba75fde111af24256641
CRs-Fixed: 2555688
2019-11-01 02:30:47 -07:00
nshrivas
229e2f055b Release 5.2.0.155F
Release 5.2.0.155F

Change-Id: I7b8ae3b638a847756efddbc524bb0c7b42e84ea6
CRs-Fixed: 774533
2019-11-01 00:17:18 -07:00
Rakesh Pillai
246f1dfdd2 qcacld-3.0: Add support to flush rx packets for a vdev
When a particular vdev is deleted, the corresponding rx
packets which have been queued to the rx thread are not
flushed. Hence when such packets are submitted to the
network stack, the dev for this skb will be invalid,
since we have already freed the adapter.

Flush out the packets in the rx thread queues, before
deleting the vdev.

CRs-Fixed: 2552140
Change-Id: Ia49af2c203c64077f7fd87524bb4caa4060e0044
2019-11-01 00:17:18 -07:00
nshrivas
47c3b08d05 Release 5.2.0.155E
Release 5.2.0.155E

Change-Id: I0122d725014e6c06bafb7a5aaacd5dbed2a800a8
CRs-Fixed: 774533
2019-10-31 22:30:26 -07:00
Srinivas Dasari
0610cc4041 qcacld-3.0: Allow NDI creation in all concurrent cases
Currently, NDI and NDP creation is happening only if the
corresponding concurrency is allowed. But NDI should be allowed
to create/delete in all concurrent scenarios. So, don't validate
the other interfaces present on device for NDI creation/deletion
and validate only for NDP requests.

Change-Id: I8e8817ac63f1f94b48fe71a30ddf1d49183d263a
CRs-Fixed: 2552623
2019-10-31 22:30:25 -07:00
Amruta Kulkarni
5b738c23a3 qcacld-3.0: Remove wma_txrx_node params(tx_power,max_tx_power)
Target_if cleanup done for tx_power,max_tx_power params
 Use vdev_mlme_mgmt_generic params(tx_power,maxregpower) instead

Change-Id: I3dc30bbce0026dc88f83009671851a70c1495b30
CRs-Fixed: 2555402
2019-10-31 22:30:18 -07:00
nshrivas
3ba129aff7 Release 5.2.0.155D
Release 5.2.0.155D

Change-Id: I47e910f17212319bb86f71d62c2290c34f9ffb1e
CRs-Fixed: 774533
2019-10-31 20:39:42 -07:00
Liangwei Dong
6feed3fbea qcacld-3.0: Update intf_ch_freq form intf_ch
"intf_ch" is updated by wlansap_check_cc_intf function.
"intf_ch_freq" needs to be updated based on new intf_ch.

Change-Id: I64a9ded8f6fa1ebd9cc88f69098c88a7a01ca82c
CRs-Fixed: 2555848
2019-10-31 20:39:42 -07:00
Mahesh Kumar Kalikot Veetil
798fddcadc qcacld-3.0: Fix pm_qos update logic
If the CPU latency requirement is not there, set the pm qos vote
to default value. The target values of resume latency and active
state latency tolerance are the minimum of the request values held
in the parameter list elements.

Change-Id: Ia5a68c024c08043da840490b6207803523f5a34a
CRs-Fixed: 2554446
2019-10-31 20:39:37 -07:00
Amruta Kulkarni
f560253148 qcacld-3.0: Replace channel id with frequency
Replace channel ID with channel frequency in struct tpSirChanChangeRequest

Change-Id: I37d1a17933b1c845bd3340f20717d667a629ec05
CRs-Fixed: 2555401
2019-10-31 20:39:32 -07:00
nshrivas
27359056bd Release 5.2.0.155C
Release 5.2.0.155C

Change-Id: I69ee093919faa8fee029d4375a05c7d3ef9aa6b5
CRs-Fixed: 774533
2019-10-31 02:44:35 -07:00
gaurank kathpalia
709a13714c qcacld-3.0: Fix the parsing for BTM message
Currently the driver parses the BTM list
in the API lim_add_roam_blacklist_ap, but
the pointer to the source list is not incremented
which leads to addition of the same entry multiple
times.

Fix is to increment the pointer to the list for
every iteration.

Change-Id: I057c6e314827768679085047b32e524e4273b9fc
CRs-Fixed: 2554039
2019-10-31 02:44:35 -07:00
nshrivas
a256ec1f38 Release 5.2.0.155B
Release 5.2.0.155B

Change-Id: Ic02c3385daaea58d9706cca7f0960f878f10e827
CRs-Fixed: 774533
2019-10-31 00:05:18 -07:00
Rakesh Pillai
2d5596fa13 qcacld-3.0: Fix compilation errors for QCN7605
Fix compilation issue related to datapath when
built for target QCN7605.

CRs-Fixed: 2555844
Change-Id: Iabe649205be31887f037545021f70dcaa5d3aabc
2019-10-31 00:05:18 -07:00
nshrivas
2ac6cc6cd6 Release 5.2.0.155A
Release 5.2.0.155A

Change-Id: Ia6eb698530d8c0904e3401a8170bb2c227a2b4f3
CRs-Fixed: 774533
2019-10-30 18:41:03 -07:00
bings
b1444b30a9 qcacld-3.0: Convert legacy chan ID usage to chan freq
Modify the following 2 APIs' code and parameters to make
sure they're using frequency instead of channel ID:
   csr_get_infra_operation_channel
   sme_search_in_base_ch_lst

Change-Id: I2010aac81a3297d2c274ac9f17784f8f5cbf846e
CRs-Fixed: 2554643
2019-10-30 18:41:02 -07:00
nshrivas
517911f7a6 Release 5.2.0.155
Release 5.2.0.155

Change-Id: I7d14354e7dcd31ec466e0a45c84d086f25fba6c3
CRs-Fixed: 774533
2019-10-30 16:51:08 -07:00
wadesong
43554802d4 qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following APIs' code and parameters to make
sure they're using frequency instead of channel ID:

   csr_scan_get_next_command_state
   csr_handle_nxt_cmd
   csr_scan_callback

Change-Id: I3bbbc20f906f0b757659f553e1ddb3d2ddd084d8
CRs-Fixed: 2554060
2019-10-30 16:51:07 -07:00
wadesong
2225e56fff qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following 2 APIs' code and parameters to make
sure they're using frequency instead of channel ID:

   sme_get_status_for_candidate
   csr_is_mcc_channel

Change-Id: If721813518caeb87c4de7c3d52ae18fd080cd713
CRs-Fixed: 2554048
2019-10-30 16:51:03 -07:00
hqu
12b821e08b qcacld-3.0: Convert SME code legacy channel ID usage
Modify the following 2 APIs' code and parameters to make
sure they're using frequency instead of channel ID:

csr_roam_get_ibss_start_channel_number50
csr_roam_get_ibss_start_channel_number24

Change-Id: I5d3c94f4266fdfc08efe2a0e87ac406a0e7cd5ea
CRs-Fixed: 2554196
2019-10-30 16:50:59 -07:00
Wu Gao
cdffcc7e2c qcacld-3.0: Allow SAP concurrency with NAN
If defined NDP_SAP_CONCURRENCY_ENABLE, allow SAP or SAP+SAP
concurrency with NAN and don't disable NDI when call
ucfg_nan_check_and_disable_unsupported_ndi.

Change-Id: I684df7608623f8eb77d485a61e8d9c6f3319574a
CRs-Fixed: 2547493
2019-10-30 16:50:51 -07:00
nshrivas
0ea263318e Release 5.2.0.154Z
Release 5.2.0.154Z

Change-Id: I2de2f4f071487674f08623c01e9bfd31c21528fc
CRs-Fixed: 774533
2019-10-30 04:38:24 -07:00
Nisha Menon
33030f8cd0 qcacld-3.0: CPU mask not set for affine cores on init
Set cpu_mask for affine cores on init before sending a
request to PM QoS interface to insert a element into the
list for DMA latency in the QoS framework.

Change-Id: I81f17077c6ddce69c99047c46cef008b6b195d77
CRs-Fixed: 2551349
2019-10-30 04:38:23 -07:00
nshrivas
c333dda001 Release 5.2.0.154Y
Release 5.2.0.154Y

Change-Id: Ic7e7d774a4d2d59bd55ce2a8ede4dc371ffa92e7
CRs-Fixed: 774533
2019-10-29 23:22:41 -07:00
Wu Gao
d07ea69d26 qcacld-3.0: Fix compilation issues with QCA6174
Fix compilation issues related to IPA and DP when built for target
QCA6174. Here is the change to fix them.

Change-Id: I4441858450a78cdd98e3c5e25cdeee00c3a7db9e
CRs-Fixed: 2554619
2019-10-29 23:22:41 -07:00
nshrivas
ea46f5f52b Release 5.2.0.154X
Release 5.2.0.154X

Change-Id: Id6931508fd9e06d47cbd6894a3e4915305b55e07
CRs-Fixed: 774533
2019-10-29 22:02:05 -07:00
Alan Chen
c2d4b1cbd9 qcacld-3.0: Add sap_pre_cac_work check before flushing
In hdd_stop_adapter and hdd_stop_all_adapters, sap_pre_cac_work is
sometimes being flushed when it is not initialized. Put a check to only
flush if it is initialized.

Change-Id: I1e25ae06f351188c1bc45c4f94c80b3c77799b88
CRs-Fixed: 2554551
2019-10-29 22:01:59 -07:00
nshrivas
902f38ae33 Release 5.2.0.154W
Release 5.2.0.154W

Change-Id: I79161f632863eac36eeddeaf9caa236e7460915c
CRs-Fixed: 774533
2019-10-29 20:39:04 -07:00
Alan Chen
e141698cbc qcacld-3.0: Change notifier call to only return valid NOTIFY values
When values such as -EAGAIN are returned as the return value, it causes
the notifier block chain to stop being parsed by ip6_route_dev_notify(),
which results in the pointer to nh_dev in fib6 being NULL since the value
is not able to be set. To solve this, set hdd_netdev_notifier_call to
return NOTIFY_DONE so that the error value returned does not prevent the
notifier block chain from progressing.

Change-Id: I294a837e9f6c9712d45a9a96b5f0967af968b8b6
CRs-Fixed: 2553168
2019-10-29 20:39:04 -07:00
nshrivas
763a622619 Release 5.2.0.154V
Release 5.2.0.154V

Change-Id: Iae04530ed713a90566a9191cb0c40728e6280c6b
CRs-Fixed: 774533
2019-10-29 19:23:44 -07:00
gaurank kathpalia
924b2a764a qcacld-3.0: ACS changes for 6ghz support
Driver ACS changes for 6Ghz channel support.

Change-Id: I94cc834a9fdd5cfe54e4dcc09aba0253de6b2a39
CRs-Fixed: 2555187
2019-10-29 19:23:44 -07:00
nshrivas
4fa476c979 Release 5.2.0.154U
Release 5.2.0.154U

Change-Id: Icffd8f5c3cfa4e662865e5a1a2487f7c4dbf210c
CRs-Fixed: 774533
2019-10-29 16:44:49 -07:00
Sourav Mohapatra
07b057fcc4 qcacld-3.0: Rectify sanity check in hdd_send_hang_reason
Currently in the driver, hdd_send_hang_reason() checks validity of
current context using wlan_hdd_validate_context(). This checks if the FW
is down and if recovery in progress along with other conditions. This is
a contradiction as the purpose of the API is to send the reason for
hang, which can come during FW down. The wlan_hdd_validate_context()
check prevents this from being sent to the userspace via the command
QCA_NL80211_VENDOR_SUBCMD_HANG.

Remove the wlan_hdd_validate_context() check as it is not required as
per the scenario.

Change-Id: I34da018ab4792f5c613d7ec2da8526261ee20e84
CRs-Fixed: 2554019
2019-10-29 16:44:49 -07:00
Tushnim Bhattacharyya
faa9c0114a qcacld-3.0: Replace channel id with frequency in sap
Replace channel ID with channel frequency in sap for channel
switch flow.

Change-Id: I3e7bf0e6d84604223c1791ccfd3d95d1ff5f2992
CRs-Fixed: 2554468
2019-10-29 16:44:43 -07:00
nshrivas
9cdb07f02c Release 5.2.0.154T
Release 5.2.0.154T

Change-Id: I762f3c7f3eb8fa74a5f3cdebade552361cc1a742
CRs-Fixed: 774533
2019-10-29 10:58:38 -07:00
Sourav Mohapatra
f6fefb873f qcacld-3.0: Do not assert on reinit failure
Presently, the driver performs device assert on re-init failure after
SSR. This is not desirable as in some cases the reinit failure can be
recovered from.

Change the default value of the INI controlled variable to 0 to avoid
this assert.

Change-Id: I802921e8602e0648cacc4185f550b72ad2b3af66
CRs-Fixed: 2547295
2019-10-29 10:58:37 -07:00
nshrivas
8f911a0ddd Release 5.2.0.154S
Release 5.2.0.154S

Change-Id: Iad65c2ab4d1de64d00c5c7f925bf4bc514145f23
CRs-Fixed: 774533
2019-10-29 05:39:53 -07:00
bings
b3a1cfe3be qcacld-3.0: Set cac duration to pe session in vdev start
When DFS and CAC are full offload, driver passes cac duration time
to FW in vdev start wmi command. Currently when SAP starts in DFS
channel, cac duration is passed as 0.

Cac duration should be set to pe session when vdev starts, then it
can be passed to FW correctly.

Change-Id: Ica2ae344d6734df89e22b088dea7a5059f1370f9
CRs-Fixed: 2548492
2019-10-29 05:39:52 -07:00
nshrivas
f488ce9720 Release 5.2.0.154R
Release 5.2.0.154R

Change-Id: I32599bf1d2162abbe10e5ca565d093553c2ecf8c
CRs-Fixed: 774533
2019-10-29 01:01:00 -07:00
Jingxiang Ge
9310892032 qcacld-3.0: Fix compilation error after 6ghz updates
Fix compilation error in legacy features after 6Ghz band
support and code cleanup.

Change-Id: I5b8c9b46d7647e88044b2f0a0f9c2d35fa4b8a89
CRs-fixed: 2554204
2019-10-29 01:00:59 -07:00
nshrivas
67c7471333 Release 5.2.0.154Q
Release 5.2.0.154Q

Change-Id: Ife47c0cfed1a5878206c2c05ea536730ea2b3eb2
CRs-Fixed: 774533
2019-10-28 20:58:30 -07:00
Yue Ma
39b6f2ed51 qcacld-3.0: Add PCIe register window lock related APIs
The register window needs to be configed properly before accessing
any larger than 4K range PCIe registers. Expose the lock in PLD to
avoid race condition when both platform and host drivers
try to config it.

Change-Id: Icd3df3d4d2cc2ecc3df608e7b767a3e654b94500
CRs-Fixed: 2549887
2019-10-28 20:58:30 -07:00
nshrivas
b78f300f9f Release 5.2.0.154P
Release 5.2.0.154P

Change-Id: I235e69620b9c0a956d2c99284ed69a7c87e24c6e
CRs-Fixed: 774533
2019-10-28 18:02:43 -07:00
Tushnim Bhattacharyya
acb23ee6f0 qcacld-3.0: Replace channel with frequency in unsafe_ch_list
Replace channel ID with frequency in struct unsafe_ch_list.

Change-Id: I4db260127b39d8a30d61d4348f70b1a77ddb9d95
CRs-Fixed: 2540581
2019-10-28 18:02:42 -07:00
nshrivas
6e3f16f865 Release 5.2.0.154O
Release 5.2.0.154O

Change-Id: Iabc83db527f3ca7f283b608979d1a038728a5f65
CRs-Fixed: 774533
2019-10-28 08:38:36 -07:00
Liangwei Dong
8c65f23490 qcacld-3.0: Downgrade channel bandwidth for DBS2
In DBS mode 2x2 VHT40 2G and 1x1 VHT 40 5G, the MAC 1 (5G)
doesn't support VHT80. Update the ch_width to max of 40Mhz
in beacon OMN ie when switch to DBS2.

Change-Id: If5cf65bca815d1e8df67a1515b2fb3edcba52a8e
CRs-Fixed: 2520719
2019-10-28 08:38:35 -07:00
nshrivas
21b3a81418 Release 5.2.0.154N
Release 5.2.0.154N

Change-Id: Ic4c2482d1f76c1f3f4ee8fdd36680f5fb4f71fd7
CRs-Fixed: 774533
2019-10-28 07:11:32 -07:00
Liangwei Dong
c213d8e885 qcacld-3.0: Fix memory corruption of GET_PREFERRED_FREQ_LIST
1. Change pcl_list to uint32_t array.
2. Populate weight freq from pcl_list.
3. Correct the skb allocation size to include attr hdr

Change-Id: Iace73efda1ec55b7f12c2ce3bcc1ea3262ad01f8
CRs-Fixed: 2554031
2019-10-28 07:11:31 -07:00
Venkata Sharath Chandra Manchala
cf57262302 qcacld-3.0: Enable FEATURE_TSO_STATS
Enable FEATURE_TSO_STATS based on
FEATURE_TSO flag.

Change-Id: I2fbeac180f6bb0988a6e3660936659ea1f5da4a4
CRs-Fixed: 2392266
2019-10-28 07:11:27 -07:00
nshrivas
177fe7ab24 Release 5.2.0.154M
Release 5.2.0.154M

Change-Id: If71314166928032f9fbfc9543c9aad41dba9b946
CRs-Fixed: 774533
2019-10-28 04:16:07 -07:00
Jianmin Zhu
387e65caa6 qcacld-3.0: Avoid wifi fail when timeout waiting for sme close session
In special case when vdev delete for wlan disabled,
event eWNI_SME_DEL_STA_SELF_RSP  has been sent
to QDF_MODULE_ID_SME queue,  but scheduler thread have no
execution chance,  timed out waiting for sme close session in
hdd_vdev_destroy, sme session isn't cleaned up.
When enable wifi again, vdev create failed for cannot re-open
active session, wifi failed to start any more,  can't recover
until system reboot.
Fix:
When timed out waiting for sme close session in
hdd_vdev_destroy, clean up sme session too as normal process.

Change-Id: If6c6ed313928294bb83ebbc0e716a574e6a07470
CRs-Fixed: 2547355
2019-10-28 04:16:07 -07:00
nshrivas
d636725178 Release 5.2.0.154L
Release 5.2.0.154L

Change-Id: I86469a3f079ecc49b2f271bed3df63687131c03f
CRs-Fixed: 774533
2019-10-27 13:47:43 -07:00
Sravan Kumar Kairam
761ae63623 qcacld-3.0: Support wlan ipa clk voting for kona
Support wlan ipa clk voting for kona. Host should provide
bandiwdth levels to IPA driver for which IPA uc monitors
the levels. Once the threshold is reached IPA uc interrupts
the IPA driver and IPA driver informs host driver via callback
registered.

Change-Id: I9fd805d69858a413f20b9e55a9c02a82054c646b
CRs-Fixed: 2526300
2019-10-27 13:47:42 -07:00
nshrivas
017fd97967 Release 5.2.0.154K
Release 5.2.0.154K

Change-Id: I3abb0933452b0cc90d5399a71056176ed16caddb
CRs-Fixed: 774533
2019-10-26 11:55:09 -07:00
Arun Kumar Khandavalli
a43590e897 qcacld-3.0: Move psoc object to common component
Move to the common psoc object and retrieve the cfg ini
information from the legacy implementation.

Change-Id: I38147c748796550f2adede44b681559a4f329fbf
CRs-Fixed: 2547536
2019-10-26 11:55:08 -07:00
Visweswara Tanuku
1a5e992075 qcacld-3.0: Use correct event id while registering md events
Use correct event ids while registering motion detection
events

Change-Id: I4328060dea7ac14459d194f98e92cd5ba518edd0
CRs-Fixed: 2548224
2019-10-26 11:55:04 -07:00
nshrivas
77577a9187 Release 5.2.0.154J
Release 5.2.0.154J

Change-Id: I6f8bf1754a5f3b046ce5a6fbfee65e7c7adf0a0a
CRs-Fixed: 774533
2019-10-26 08:11:48 -07:00
Jingxiang Ge
f1d8159208 qcacld-3.0: config 11ax linkspeed rate
This change is to support 11ax linkspeed rate
on UI.

It supports different config for gReportMaxLinkSpeed.

Current 11ax rate support to max 80 nss2 mcs11.

Change-Id: Iff8cbafe1354ab50c4b3a90ef8ab698a3350a21d
CRs-Fixed: 2529291
2019-10-26 08:11:48 -07:00
Wu Gao
cef8a74bef qcacld-3.0: Copy peer mac address when register new NDP peer
Since peer mac instead of sta_id used to find pointer to peer in
dp_register_peer, so copy and pass peer mac address when register new
ndp peer.

Change-Id: I47ab345fff83d9c03208c5c1457db0fb7f6ed9c0
CRs-Fixed: 2546705
2019-10-26 08:11:40 -07:00
nshrivas
eea51ad437 Release 5.2.0.154I
Release 5.2.0.154I

Change-Id: Ia3c577b22b042cb774e409f6bea47fa444f987f2
CRs-Fixed: 774533
2019-10-26 03:05:56 -07:00
Manikandan Mohan
0ba7e55beb qcacld-3.0: Update CSR for 6Ghz STA connection
Update SME/CSR for using channel frequency in STA connection
params and handle 6G AP IEs for association.

Change-Id: I1725223b6763a729762b604c850c9b493f739ae6
CRs-fixed: 2552009
2019-10-26 03:05:56 -07:00
Manikandan Mohan
8e4491c8ed qcacld-3.0: Send HE 6GHz band capabilities IE in WLAN frames
HE STA / AP operating in 6GHz should send HE 6GHz band capabilities
element. Update LIM layer for sending this IE in assoc, reassoc and
probe request / response frames.

Change-Id: Ie991ad3656e6b721e0ee0783b5974d438699091c
CRs-fixed: 2552009
2019-10-26 03:05:51 -07:00
Manikandan Mohan
5c1e9aeb3d qcacld-3.0: Update HDD for using channel frequency for STA connection
Due to channel number ambiguity with 6ghz, update channel references
in HDD STA connection path to use channel frequency.

Change-Id: I81f3449c9087030e4d98c17a5b12c731f99b39ab
CRs-fixed: 2552009
2019-10-26 03:05:44 -07:00
nshrivas
9328e053f2 Release 5.2.0.154H
Release 5.2.0.154H

Change-Id: I958a9181f081d365144884d4c2c2e301fe07f824
CRs-Fixed: 774533
2019-10-25 04:40:32 -07:00
Yeshwanth Sriram Guntuka
521b6b254b qcacld-3.0: Increase the rx debug buffer list size
Increase the rx debug buffer list size to 8k to
capture more history.

Change-Id: I56d37e5c25653daa9dac76328808e99ed24a7bff
CRs-Fixed: 2542805
2019-10-25 04:40:32 -07:00
nshrivas
65cb28f27b Release 5.2.0.154G
Release 5.2.0.154G

Change-Id: Ibf0f48c837aa0b2e97c2277dc70c5d495f162be7
CRs-Fixed: 774533
2019-10-25 03:12:54 -07:00
Yu Ouyang
67eeee1a50 qcacld-3.0: optimize WPA3 roam pre-auth offload callback
Function csr_update_sae_config is inital connection, so it should
be out of WLAN_FEATURE_ROAM_OFFLOAD. While function
csr_process_roam_auth_sae_callback is roaming related change,
so it should be in WLAN_FEATURE_ROAM_OFFLOAD.

And do the static inline to the dummy functions to avoid the warning
which defined but not used.

Change-Id: Ib873050d2f5bdb960244d2f900e078f314962a8b
CRs-Fixed: 2552295
2019-10-25 03:12:53 -07:00
Manikandan Mohan
7f218af255 qcacld-3.0: Fix policy manager API update for HOST_ROAM feature
Fix compilation error in WLAN_FEATURE_HOST_ROAM after policy manager
public API update to use channel freq as function argument instead
of channel number.

Change-Id: I690f25a169f4438272d44bb7292558a0171d1ab8
CRs-fixed: 2551820
2019-10-25 03:12:46 -07:00
nshrivas
76b0b3ca27 Release 5.2.0.154F
Release 5.2.0.154F

Change-Id: I741cf0b9435faf84ac74f74666c62bc7e7e1a6d3
CRs-Fixed: 774533
2019-10-25 01:22:38 -07:00
nshrivas
395e3c507c Release 5.2.0.154E
Release 5.2.0.154E

Change-Id: I0f5132b884e96a66feafc3ce6346c8b186d5e85c
CRs-Fixed: 774533
2019-10-24 21:41:48 -07:00
Rakesh Pillai
6c5af2fc0a qcacld-3.0: Use pdev_id instead of global dp handle
As a part of cdp convergence the pdev_id
is used to obtain the pdev handle on need
basis.

Instead of the pdev handle, use the pdev_id to
retrieve datapath pdev handle.

CRs-Fixed: 2539733
Change-Id: I887ea2f1a312207cbb642b33435f4e7111068c62
2019-10-24 21:41:42 -07:00
Rakesh Pillai
ca99b83616 qcacld-3.0: Add ol soc context
Add the soc context for ol_txrx.
This soc layer is used to hold ol pdev context.

CRs-Fixed: 2539731
Change-Id: I27a3f34a533034a4748674ce8b9212163b231b24
2019-10-24 21:41:36 -07:00
nshrivas
6bbb836d2a Release 5.2.0.154D
Release 5.2.0.154D

Change-Id: I558e20c6e99a2806806b8b19b2592981b4d1ea4d
CRs-Fixed: 774533
2019-10-24 18:53:55 -07:00
Li Feng
1b3116857c qcacld-3.0: Fix building error in tcp del ack
Fix building error in tcp del ack.

Change-Id: I74c5612536e703dbd0167ead07433f2ac66437be
CRs-Fixed: 2551290
2019-10-24 18:53:53 -07:00
nshrivas
e5b4b9e03f Release 5.2.0.154C
Release 5.2.0.154C

Change-Id: Ic18a32978ebd6ea36fbdc133955fcc6801e6ac05
CRs-Fixed: 774533
2019-10-24 17:24:24 -07:00
Rachit Kankane
914b79a337 qcacld-3.0: SAP in CAC, block concurrency
At the time of starting / stopping 2nd or 3rd connection,
Host sends WMI_PDEV_SET_HW_CMDID command to FW to change
HW mode to DBS / Single-Mac based on concurrency rule.
FW upon receiving this command turns off TXRX chainmask
which means that radar pulses might get missed for
20ms - 50ms during CAC period. To fix this, Host should
block new connection when existing SAP is performing CAC
on DFS channel.

Change-Id: I51eb117afa763a6ef54211808875419026c9075b
CRs-Fixed: 2533717
2019-10-24 17:24:24 -07:00
nshrivas
f004d01532 Release 5.2.0.154B
Release 5.2.0.154B

Change-Id: I3cd831d6a94f475f11e85b61ab784f3a27043fc4
CRs-Fixed: 774533
2019-10-24 16:03:43 -07:00
nshrivas
91e874ef20 Release 5.2.0.154A
Release 5.2.0.154A

Change-Id: I9fdd5d0976132849549d46c4a4a37b5dde0b58da
CRs-Fixed: 774533
2019-10-24 14:33:37 -07:00
Bala Venkatesh
ce98442c2a qcacld-3.0: Fill the pmf info for TDLS peer
Fill the pfm info of the TDLS peer before sending the peer assoc
command to FW.

Change-Id: I4e336c345c0fb8f063157b3e3a780efa777f1a74
CRs-Fixed: 2535832
2019-10-24 14:33:37 -07:00
Ashish Kumar Dhanotiya
0c91350afc qcacld-3.0: Enable wifi_pos logs
Currently logs for wifi_pos module are not enabled,
because of which it is difficult to debug the issues.

Enable the wifi_pos logs to address above issue.

Change-Id: I777076d5cd0251b7c714bf22fd885e0cabda6ea2
CRs-Fixed: 2547557
2019-10-24 14:33:32 -07:00
nshrivas
a98d0f149b Release 5.2.0.154
Release 5.2.0.154

Change-Id: I8401176ee745c5cb3f607dfab9340b096545750f
CRs-Fixed: 774533
2019-10-24 09:13:12 -07:00
Jianmin Zhu
36626e4fad qcacld-3.0: Fix SAP force scc failed after STA channel switch
After STA channel switch, when SAP try to force scc with STA,
race condition issue happens sometimes between mc thread and sap
restart thread, hdd_ctx->roaming_in_progress isn't cleared when
check roaming status in hdd_softap_set_channel_change, so channel
switch failed.

Fix: change order, make sure hdd_set_roaming_in_progress(false)
happens before policy_mgr_check_concurrent_intf_and_restart_sap.

Change-Id: I1146eb665941fe0beb8f6165272f32ac8f7e74f2
CRs-Fixed: 2549571
2019-10-24 09:13:06 -07:00
Pragaspathi Thilagaraj
c1335b01a0 qcacld-3.0: Fix null pointer dereference in lim_process_auth_retry_timer
In lim, gpLimMlmAuthReq is freed in lim_restore_auth_state if
auth failure timeout happens. gpLimMlmAuthReq is dereferenced in
lim_process_auth_retry_timer. When there is a race where
lim_restore_auth_state is called before lim_process_auth_retry_timer,
then null pointer dereference of gpLimMlmAuthReq happens in
lim_process_auth_retry_timer.

Validate gpLimMlmAuthReq against null before accessing it.

Change-Id: Ic1af10172aa98785c84165c4491c8bdc1b3e508f
CRs-Fixed: 2550793
2019-10-24 09:13:01 -07:00
Jianmin Zhu
c71151b3f7 qcacld-3.0: Fix whunt SAP start failed for wrong channel
Need initialize local var con_ch_freq before use.

Change-Id: I9f770dace7710019bd7d693b6c3b6ba3bdc43af1
CRs-Fixed: 2551516
2019-10-24 09:12:56 -07:00
nshrivas
a7e2cf9fd5 Release 5.2.0.153Z
Release 5.2.0.153Z

Change-Id: I4065b37a341f8c7044b9b62b4622aef892aa9c00
CRs-Fixed: 774533
2019-10-24 04:40:13 -07:00
bings
eb87bc97d8 qcacld-3.0: Fix DFS channel flag check when prevent/allow suspend
wlan_reg_get_channel_state does not return CHANNEL_STATE_DFS for DFS
channel if this channel is in NOL. Use wlan_reg_chan_has_dfs_attribute
to fix this issue.
With above fix, new issue is exposed. hdd_ctx->sap_dfs_ref_cnt is used
as a flag, If hdd_hostapd_channel_allow_suspend is called after
hdd_hostapd_channel_prevent_suspend, whatever the new channel state is,
if the old channel is going to release dfs lock, then dfs lock is
released. Generally we should handle the old channel then handle the
new channel, so exchange the order of hdd_hostapd_channel_prevent_suspend
and hdd_hostapd_channel_allow_suspend when doing channel switch.

Change-Id: I9bbeeb5ac23f3c2eaf694f64e0fea433dcc34740
CRs-Fixed: 2543642
2019-10-24 04:40:13 -07:00
nshrivas
91e06d1763 Release 5.2.0.153Y
Release 5.2.0.153Y

Change-Id: Ic9bc04609a3546e800d79ece088e0f38b3b4ddd6
CRs-Fixed: 774533
2019-10-23 21:29:20 -07:00
Tushnim Bhattacharyya
dd4e60dd31 qcacld-3.0: Free the memory in wma_rx_invalid_peer_ind
Free the memory in wma_rx_invalid_peer_ind in case the
indication is dropped.

Change-Id: I8e1d1fccd15e3af08b04d44670f31eb8f11fbe95
CRs-Fixed: 2550819
2019-10-23 21:29:19 -07:00
nshrivas
f67c42598d Release 5.2.0.153X
Release 5.2.0.153X

Change-Id: I1a18a7706e7495600ccd5a625fe56315b1acd793
CRs-Fixed: 774533
2019-10-23 19:58:20 -07:00
Jianmin Zhu
a3ba967318 qcacld-3.0: Fix build issue on genoa
is_dfs_unsafe_extra_band_chan can't be defined under
FEATURE_WLAN_ESE

Change-Id: I639d38c215782b8ce750f342df2435de2983f1a2
CRs-Fixed: 2549765
2019-10-23 19:58:19 -07:00
nshrivas
eb23f0bd0f Release 5.2.0.153W
Release 5.2.0.153W

Change-Id: Id72b4d127b8e13d4c0e3ef973252e12891dd03e3
CRs-Fixed: 774533
2019-10-23 18:41:16 -07:00