Commit Graph

19959 Commits

Author SHA1 Message Date
Pragaspathi Thilagaraj
bd697c1786 qcacld-3.0: Move sta related wmi functions from cmn to qcacld
Move STA specific wmi functions from qca-wifi-host-cmn to
qcacld-3.0 under components/wmi. Below is the wmi source tree
	qcacld-3.0 \
	    - components \
		-wmi \
		  src\
		  inc\

wmi_tlv_attach() will call the STA specific attach functions
defined in wmi_unified_priv.h.

Change-Id: Ia99e12d79500add94791db4447e1f6dbf44c99af
CRs-Fixed: 2714589
2020-06-25 03:49:39 -07:00
Jingxiang Ge
610b6ef7e0 qcacld-3.0: Disable CONFIG_EXT_WOW feature
ext-wow feature never supported/tested on MCC, and there
is no known customer using this feature, so compile it out.

Change-Id: I3c79ebecd5b2a44cfa9339748bf8e94f596e71bd
CRs-Fixed: 2680331
2020-06-25 03:49:34 -07:00
nshrivas
4946096a89 Release 5.2.0.191J
Release 5.2.0.191J

Change-Id: I4b3d9ce20c14abb81b8c79e4af7987b45f94b1ce
CRs-Fixed: 774533
2020-06-24 11:42:55 -07:00
bings
27f2d2ede8 qcacld-3.0: Set correct wep key for sap mode
When wep_default_key is not set as 0 in hostapd.conf, wep key with
key id 0 should not be sent to FW when new station is connected.
Wep key with key id specified in hostapd.conf should be sent to FW.

To fix this issue, wep default key id should be saved for sap mode.
When reference station is connected, set default key id related key
to FW with TX_USAGE flag.

Change-Id: Ic13e311593154911ee21db5172188c7037f429a3
CRs-Fixed: 2700441
2020-06-24 11:42:55 -07:00
Yu Tian
8b371301f4 qcacld-3.0: refine pktlog enable logic in KPI test
PKTLOG can be enabled from both 802.11 and WEXT, customer
integrates pktlog ctrl in script and is toggled frequently.
This leads host pktlog status variable and FW status out of
sync. Host bus vote logic need disable pktlog when TPUT is
high, based on host status. At last, it will not take effect,
KPI continues dropped by PKTLOG.

Change-Id: Ifad7b53060b6046361621bf927c99b6b66e0c278
CRs-Fixed: 2715362
2020-06-24 11:42:51 -07:00
nshrivas
ee0a4c12c9 Release 5.2.0.191I
Release 5.2.0.191I

Change-Id: I46107d89fad0dd23bd63ceb4476a87d71b990dea
CRs-Fixed: 774533
2020-06-24 03:34:34 -07:00
Vevek Venkatesan
5f2f624d8c qcacld-3.0: add hif_runtime_pm related files in Kbuild
Add hif_runtime_pmrelated files in Kbuild to be included
in the driver compilation.

Change-Id: Ifa392a517560a9391419da6733211f52aceb1170
CRs-Fixed: 2699439
2020-06-24 03:34:34 -07:00
nshrivas
4245b5a639 Release 5.2.0.191H
Release 5.2.0.191H

Change-Id: Ide5f6b9b86f44fbb85b8b842e4d53f0fb0a132ce
CRs-Fixed: 774533
2020-06-24 00:15:22 -07:00
Jinwei Chen
678c4d4648 qcacld-3.0: degrade log level for FISA debug
Currently when enable FISA debug, the default log level is
QDF_TRACE_LEVEL_ERROR which will output excessive logging
to kernel console, back pressure for RX might happen.

Degrade log level to QDF_TRACE_LEVEL_INFO_HIGH.

Change-Id: I5e910a6fc12d29179d3737f0c1d6c61b1383110b
CRs-Fixed: 2716688
2020-06-24 00:15:22 -07:00
nshrivas
f85259d999 Release 5.2.0.191G
Release 5.2.0.191G

Change-Id: I370b4827b552d714da6d47824fc163b356bf5232
CRs-Fixed: 774533
2020-06-23 20:03:22 -07:00
gaurank kathpalia
ce6aed0852 qcacld-3.0: Add ini to enable/disable dynamic cfg
Currently the driver supports the dynamic
configuration of nss and chain to FW for
VDEV if the FW advertises the capability
of supporting the same. However there is
no support to overide this.

Fix is to have an ini to enable/disable
this feature of configuring the dynamic
nss and chains to FW.

Change-Id: I0b84bb5aec53966a43a00c11d4aba3863414005c
CRs-Fixed: 2708303
2020-06-23 20:03:22 -07:00
nshrivas
b77fd72e3f Release 5.2.0.191F
Release 5.2.0.191F

Change-Id: Ibee5fb3afad8450a43f069348f2832229d4fba3b
CRs-Fixed: 774533
2020-06-23 15:44:10 -07:00
Srinivas Girigowda
9e0b3dbb70 qcacld-3.0: Replace obsolete WMA_LOGP() with wma_alert()
Replace obsolete WMA_LOGP() macro with wma_alert().

Change-Id: I7e9d8048789c8deee6c3bfab72d7f9b591fca9b9
CRs-Fixed: 2716176
2020-06-23 15:44:09 -07:00
Jianmin Zhu
e6c35ab600 qcacld-3.0: Replace channel with freq for 6G
Replace WLAN_REG_IS_24GHZ_CH with WLAN_REG_IS_24GHZ_CH_FREQ.
in TDLS.
Change-Id: I6c0ee6ec3a2d24cc0c826f93527d4655925cc6cd
CRs-Fixed: 2717000
2020-06-23 15:44:06 -07:00
nshrivas
511d6fac7e Release 5.2.0.191E
Release 5.2.0.191E

Change-Id: Iec94aecf6c781f67ea98a86345aa94d797a896dd
CRs-Fixed: 774533
2020-06-23 11:23:42 -07:00
Pragaspathi Thilagaraj
bbe3ab0934 qcacld-3.0: Set roam invoke in progress to false on HO failure
When roam invoke fails during handoff, firmware sends HO failure
indication to host. Here the roam_invoke_in_progress flag is not
cleared.

Clear the roam_invoke_in_progress flag when fastreassoc fails
due to handoff failure at firmware.

Change-Id: Ifc0ade939980138f64013299a9ea4e97468ce00f
CRs-Fixed: 2715281
2020-06-23 06:26:19 -07:00
nshrivas
fff75f60cc Release 5.2.0.191D
Release 5.2.0.191D

Change-Id: If48eae39185b2e4fb121b3ab7674d67fe436fac3
CRs-Fixed: 774533
2020-06-23 04:01:03 -07:00
Jianmin Zhu
faf92193d4 qcacld-3.0: Replace channel with frequency for 6G
Replace wlan_reg_is_24ghz_ch with wlan_reg_is_24ghz_ch_freq.
Replace channel with frequency in cds_get_vendor_reg_flags.

Change-Id: I72ffc5550e45be1edf460f9619fead8889cf2967
CRs-Fixed: 2714723
2020-06-23 04:01:03 -07:00
Ashish Kumar Dhanotiya
1130e58a67 qcacld-3.0: Remove validate context check in LL stats get NB ops
As a part of LL stats get NB operation, the driver sends the LL stats
req to the FW, waits for the response and sends back the stats in a
synchronous reply. All this happens as a part of one single NB
operation.

Within this operation, if an rmmod comes, there can be a possiblity
of a memory leak. In function hdd_link_layer_process_radio_stats, there
is a check to validate the hdd_context and return if the driver is
undergoing load/unload. As a part of the premature return, some stats
are not returned to user space..

To resolve this, remove the validity check from the NB operation. The
operation itself comes with DSC synchronization and ensures that the
hdd_context remains valid atleast until the operation is complete. Thus
there is no need for the redundant check of validity of hdd_context.

Change-Id: I20cc85b715330a28bc077ca47a1721343bba7214
CRs-Fixed: 2714136
2020-06-23 04:01:00 -07:00
nshrivas
f911f58d87 Release 5.2.0.191C
Release 5.2.0.191C

Change-Id: Ie73d9254c5ddb06881fa5f82d14477bc0bf2c120
CRs-Fixed: 774533
2020-06-23 00:27:55 -07:00
Yu Wang
7bb505608d qcacld-3.0: fix a potential assignment truncation issue
Truncation will happen when assining an association id over 256
to the u8 'aid' of struct wma_txrx_node.
To avoid such issue, change the type of 'aid' in struct wma_txrx_node,
from u8 to u16.

CRs-Fixed: 2713427
Change-Id: If360c017700aadaf9f2d3216601a011704f68180
2020-06-23 00:27:54 -07:00
nshrivas
77e6603717 Release 5.2.0.191B
Release 5.2.0.191B

Change-Id: Ic94216da8a04018f7eac86a7a104a28fad6b2fea
CRs-Fixed: 774533
2020-06-22 22:06:12 -07:00
Jianmin Zhu
477cb83408 qcacld-3.0: Fix LFR2 failed for roam scan mode 0
Regression of Change-Id:
I1de3f71ca96de9f464d5d33b0271f99c55cff535
make LFR2 roam scan mode config
WMI_ROAM_SCAN_MODE_RSSI_CHANGE depend on roam_force_rssi_trigger
which is uninitialzed when LFR3 disabled, so roam scan mode 0
is sent to F/W wrongly in WMI_ROAM_SCAN_MODE when LFR2 enabled.

Fix: Initialize roam_force_rssi_trigger in roam offload scan
request with ini config for LFR2 too.

Change-Id: Ifd65119a87a6a348a952a4eec70a336015192d43
CRs-Fixed: 2704513
2020-06-22 22:06:12 -07:00
nshrivas
24ff03400c Release 5.2.0.191A
Release 5.2.0.191A

Change-Id: Ib6e23bb510febcc07b4e1e0f0e976dc239218a93
CRs-Fixed: 774533
2020-06-22 15:55:17 -07:00
Rajeev Kumar
770edce351 qcacld-3.0: Validate vdev before try to get vdev ref
Validate vdev and make sure its not null before try to get vdev ref
during runtime pm suspend/resume path.

Change-Id: Ieb9cb26703727edbc302447453000e1d33717343
CRs-Fixed: 2715161
2020-06-22 15:55:17 -07:00
nshrivas
0c0f59b895 Release 5.2.0.191
Release 5.2.0.191

Change-Id: I66aac93cea64e05f337f4b0241988ebf190613f0
CRs-Fixed: 774533
2020-06-22 12:37:30 -07:00
Arun Kumar Khandavalli
b6404b1bbb qcacld-3-0: Have bus specific recovery ini checks to get imp info
Presently, in the host initiated recovery the handler checks whether
the support for recovery is enabled via the ini or triggers the panic.
Whenever the panic is triggered the irq's will be disabled,
this results in some targets not able to collect the important
MHI, PCI information on what caused the issue to root cause the issue.

So, for different targets check the ini at different places.

Change-Id: I0d0e322610abd9f8ceaba4fe9688cdd099c381e5
CRs-Fixed: 2715603
2020-06-22 12:37:30 -07:00
nshrivas
a2fcc4110b Release 5.2.0.190Z
Release 5.2.0.190Z

Change-Id: Ic984abb5c9f334c4130c688f114516f7f9968db5
CRs-Fixed: 774533
2020-06-22 06:14:42 -07:00
Surabhi Vishnoi
07fd1a8fe9 qcacld-3.0: Add support to handle CFR vendor command for adrastea
Adrastea target expects different attributes in vendor command
QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG. So add an api to parse
the vendor command  QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG
which will be called based on CFR version type.

Change-Id: I965b3cd6b93a288f1074ea0c09306cfff9f6ced0
CRs-Fixed: 2687075
2020-06-22 06:14:42 -07:00
nshrivas
361476e01b Release 5.2.0.190Y
Release 5.2.0.190Y

Change-Id: Idaf53412cb1163a3587a6a92e2e3bb90101a58dd
CRs-Fixed: 774533
2020-06-22 01:37:05 -07:00
Ashish Kumar Dhanotiya
a747d4cdb8 qcacld-3.0: Handle multiple oem data events for single command
FW can send multiple events for a single oem data command
based on the size of the data to be send and the available
buffer size.
Currenlty sme callback in the oem data event handler
wma_oem_event_handler is set to null after it process the
event because of which next events for the same command
are not processed.

To address this issue do not make the sme callback as null
in the wma oem event handler.

CRs-Fixed: 2714680
Change-Id: Ia435a5bee7ed4d2e16313698052033f8b45a5873
2020-06-22 01:37:05 -07:00
nshrivas
7bce548cae Release 5.2.0.190X
Release 5.2.0.190X

Change-Id: I2ff5e2296b6f70081affb03526732e35eec4b26b
CRs-Fixed: 774533
2020-06-21 23:36:52 -07:00
bings
3a251813a2 qcacld-3.0: Set group key to FW when sap starts
If any group key is gotten before sap bss starts, it should be sent to FW
when sap bss starts. There should be no valid unicast key before sap bss
starts, so no need to set the key to FW as unicast key again.

All the saved group key should be set to FW when sap starts.

Change-Id: I8a36415b896881b2e7c0ab72b9679eb1daa86e80
CRs-Fixed: 2705593
2020-06-21 17:15:55 -07:00
nshrivas
a84c07924b Release 5.2.0.190W
Release 5.2.0.190W

Change-Id: Id62105d04372abf2bbc067ce607821a040b40741
CRs-Fixed: 774533
2020-06-20 17:53:15 -07:00
Utkarsh Bhatnagar
38744f2fa8 qcacld-3.0: Check LDPC based on peer capabilities
Set LDPC if AP sets it in either assoc response or beacon
along with one of the following conditions:

1) nss should be greater than 4
2) channel width should be more than 20 Mhz
3) MCS 10 and 11 bit must be set

Change-Id: If23b119b3bf2d07282e9fc9a3bfbb6baa0887737
CRs-Fixed: 2708333
2020-06-20 17:53:14 -07:00
nshrivas
d9acbe021a Release 5.2.0.190V
Release 5.2.0.190V

Change-Id: Ibc41d456112a212f179ac9d02120f62b7e46424f
CRs-Fixed: 774533
2020-06-19 19:45:11 -07:00
Bapiraju Alla
1e8daa1ec3 qcacld-3.0: Set 40MHz capability in HE 2G PHY
Set IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_40MHZ_IN_2G flag in wiphy
2.4GHz capabilities

Change-Id: Ia142c4c307ea2f7edb9fac018d5be62ca93a3a11
CRs-Fixed: 2693444
2020-06-19 19:45:11 -07:00
Alok Kumar
0cbee2ed1f qcacld-3.0: Register hdd_gro_rx_dp_thread cb for GRO on QCA6750
For Lithium target, hdd_gro_rx_dp_thread callback is registered
to handle GRO.
Currently this callback is not registered for target qca6750.

Register hdd_gro_rx_dp_thread callback for target QCA6750 to
handle GRO.

Change-Id: I2991a6b2f6a2a614f4bb7f36bac6ec4909c4d251
CRs-Fixed: 2712504
2020-06-19 19:45:07 -07:00
Srinivas Girigowda
7678422000 qcacld-3.0: Replace obsolete WMA_LOGD() with wma_debug()
Replace obsolete WMA_LOGD() macro with wma_debug().

Change-Id: I41534dd1cc0321d0e5a77a8ba1f4fbe07ad7e6f3
CRs-Fixed: 2712788
2020-06-19 19:45:04 -07:00
Srinivas Girigowda
ba519cafa2 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_utils.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_utils.c

Change-Id: I917b234c6fef83e93d4ef7f8a27b9b604c3045ad
CRs-Fixed: 2712788
2020-06-19 19:45:01 -07:00
Srinivas Girigowda
3fab023fe0 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_power.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_power.c

Change-Id: I49c449af9cfba429a9709834b5b83db8a84a93fa
CRs-Fixed: 2712788
2020-06-19 19:44:57 -07:00
Srinivas Girigowda
2e20c75e42 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_main.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_main.c

Change-Id: Ia144748a2b6fc9e82cf9896f81586cd9d7147e09
CRs-Fixed: 2712788
2020-06-19 19:44:53 -07:00
Srinivas Girigowda
13d07aa54b qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_he.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_he.c

Change-Id: Ia448ade9d191ee5fc3db9a9c9a2cedd8f4f39757
CRs-Fixed: 2712788
2020-06-19 19:44:50 -07:00
Srinivas Girigowda
3827655105 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_features.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_features.c

Change-Id: I4482617c1bd564357d90df60cc858b3c2d270ef4
CRs-Fixed: 2712788
2020-06-19 19:44:46 -07:00
Srinivas Girigowda
17baebfba4 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_dev_if.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_dev_if.c

Change-Id: I3c7ac380e85e697d53f2196bb8a5d4da612fdae7
CRs-Fixed: 2712788
2020-06-19 19:44:43 -07:00
Srinivas Girigowda
45bb1adecf qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_data.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_data.c

Change-Id: Ia54e16b313dddae76d313b6abe0d579f9912bd11
CRs-Fixed: 2712788
2020-06-19 19:44:39 -07:00
Srinivas Girigowda
490a4e8704 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_scan_roam.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_scan_roam.c

Change-Id: I243ebfa3941738ebc251858123e90687b9a77c86
CRs-Fixed: 2712788
2020-06-19 19:44:34 -07:00
nshrivas
e409dc39ed Release 5.2.0.190U
Release 5.2.0.190U

Change-Id: I4974544d44874c95daaba6fd6156374b6a6aa00b
CRs-Fixed: 774533
2020-06-18 23:21:56 -07:00
gaurank kathpalia
015b76d0c7 qcacld-3.0: Reset crypto params on open mode connect request
In case of open mode the crypto params are not updated and thus
older params values are maintained. This can lead to failure
in open mode connect.

Thus Reset crypto params on open mode connect request

Change-Id: Ia986f1b0d7b29410d32090be3e9bfb9db96c6c11
CRs-Fixed: 2713346
2020-06-18 23:21:56 -07:00
Jianmin Zhu
61409803d7 qcacld-3.0: Avoid Rome mgmt nbuf double unmap during SSR
Rome supports mgmt Tx via HTT interface, not via WMI.

When mgmt frame is sent, 2 tx desc is allocated:
mgmt_txrx_desc is allocated in wlan_mgmt_txrx_mgmt_frame_tx,
ol_tx_desc is allocated in ol_txrx_mgmt_send_ext.
They point to same net buffer.
net buffer is mapped in htt_tx_desc_init.

When SSR during Rome STA connected, deauth frame is sent,
but no tx complete since firmware hung already.
Pending mgmt frames are unmapped and freed when destroy vdev.

hdd_reset_all_adapters->hdd_stop_adapter->hdd_vdev_destroy
->wma_handle_vdev_detach->wlan_mgmt_txrx_vdev_drain
->wma_mgmt_frame_fill_peer_cb
->mgmt_txrx_tx_completion_handler.

Don't need unmap and free net buffer of mgmt frames again during
data path clean up, just free ol_tx_desc.
hdd_wlan_stop_modules->cds_post_disable->cdp_pdev_pre_detach
->ol_txrx_pdev_pre_detach->ol_tx_free_descs_inuse.

Change-Id: I2fc658e833cf013bf7048c6bec90d9b247566444
CRs-Fixed: 2694854
2020-06-18 23:21:52 -07:00