Commit Graph

22607 Commits

Author SHA1 Message Date
Deeksha Gupta
7cfc990823 qcacld-3.0: Remove radar event if dfs_channel_switch is disable
Currently, DUT is able to detect the radar event
causing channel switch even if disable dfs channel
switch ini is set. Due to this, there is a chance
of unwanted CSA.

Adding check for disable dfs channel switch ini before
detecting the radar. If gDisableDFSChSwitch = 0 then
detect the radar event else ignore the radar event.

Change-Id: I977d93e47ee35026662d55a8e292c8790ddc7d31
CRs-Fixed: 2905871
2021-03-24 12:04:15 -07:00
Liangwei Dong
576283f245 qcacld-3.0: Allow hw mode change for dbs 2x2 target
Previously, the hw mode changing is not allowed when SAP is CAC
state in old target which supports 1x1 dbs. The reason is
some action frame would be sent out when chainmask changes in
those target. But for 2x2 dbs target, chainmask is not changed
and hence not action frame will be sent out.
Allow the hw mode change for 2x2 dbs target when SAP is CAC.

Change-Id: I2d123a7f0065a562048584f56d5dd7640aaaf975
CRs-Fixed: 2892813
2021-03-24 12:04:10 -07:00
snandini
a734fe8642 Release 5.2.0.227H
Release 5.2.0.227H

Change-Id: Ifd1acd3eee039f124732022f4c99b89e6b727f48
CRs-Fixed: 774533
2021-03-24 09:47:51 -07:00
Karthik Kantamneni
ff20d99b98 qcacld-3.0: Use msleep instead of mdelay in cds_drop_rxpkt_by_staid
Currently mdelay is used which leads to busy wait blocking CPU from
running other process, so use msleep which yields cpu for other tasks.

Change-Id: Ia7c76cfb1c950e78008f6fe19825733cbc261e50
CRs-Fixed: 2888309
2021-03-24 09:47:51 -07:00
Amruta Kulkarni
15ac4a4e5a qcacld-3.0: Support roam sync indication in CM
Add change to support roam synch indication
in connection manager.

Change-Id: I06b23ae085a5a86caf4fe04fe5929b86d8d5c543
CRs-Fixed: 2901858
2021-03-24 09:47:46 -07:00
snandini
1195e8d28a Release 5.2.0.227G
Release 5.2.0.227G

Change-Id: I49efd2734c37c1e464ac2983ca003b9f16769fb0
CRs-Fixed: 774533
2021-03-24 06:44:06 -07:00
Will Huang
41829e661c qcacld-3.0: Assign lim_join_req in LFR2.0 reassociated case
session_entry->lim_join_req is NULL for LFR2.0 roaming case, but some
functions will access it like lim_check_oui_and_update_session(),
lim_get_cb_mode(). Temp assign session_entry->lim_join_req with
reassoc_req.

Change-Id: I1122f9dffea38741700599fbef10bb0d4972b1b0
CRs-Fixed: 2874885
2021-03-24 06:44:06 -07:00
snandini
f2091f90bb Release 5.2.0.227F
Release 5.2.0.227F

Change-Id: Ic97272429225a6c2aac902c7fb4c05d2b9cdb809
CRs-Fixed: 774533
2021-03-24 04:33:20 -07:00
Srinivas Dasari
84f2788e50 qcacld-3.0: Wait for RSO stop response only if roaming is enabled
When host driver receives RSO_STOP from userspace, HDD sends the
RSO_STOP down to lower layers and starts a wait for response upon
success status.
Below layers(connection mgr/CSR) ignore the RSO_STOP request and
return success if the current state is not RSO_ENABLED or
IN_PROGRESS. This keeps the HDD waiting for response and a timeout
happens after 2 seconds.
So, wait for RSO stop response only if roaming is in enabled state
to avoid this wait and timeout.

Change-Id: I3ed81c5da26ebe05d17fc37dc43665f1f7b7c8b2
CRs-Fixed: 2901494
2021-03-24 04:33:20 -07:00
snandini
0b0f7c6ac4 Release 5.2.0.227E
Release 5.2.0.227E

Change-Id: I3562240ff2fc233d6230dbf070a4928b6e1301ae
CRs-Fixed: 774533
2021-03-24 02:12:11 -07:00
Pragaspathi Thilagaraj
fb88149381 qcacld-3.0: Add new ini to disable TWT in 2.4Ghz connection
Add new ini "enable_twt_24ghz" to enable/disable host triggered
TWT in 2.4Ghz connection. Check this ini value in TWT get
capability. The userspace will query the self capability before
triggering the host TWT.

Change-Id: I3544de89f438fc526f8a2554c6aeebcd25d6c415
CRs-Fixed: 2904775
2021-03-24 02:12:10 -07:00
snandini
92d317f98e Release 5.2.0.227D
Release 5.2.0.227D

Change-Id: I6fb56b0d024ba2a61a60360fa55d0594e1652bbc
CRs-Fixed: 774533
2021-03-23 23:43:17 -07:00
Li Feng
8b8f61989c qcacld-3.0: Use for_each_present_cpu() to traverse each cpu
On quad-core cpu paltform, the qdf_for_each_possible_cpu() iterate
8 times in the hdd_pm_qos_add_request() trying to add pm qos request
for CPU0~7, but only CPU0~3 actually. There is same issue in the
hdd_pm_qos_update_request()/hdd_pm_qos_remove_request(), it hit the
kernel waring about "called for unknown object" when try to update
/remove pm qos request for non-existed CPU4~7.

The fix is to use for_each_present_cpu() to traverse each cpu
to avoid the kernel warning.

Change-Id: I38fe4a6807452e11eb7230c2c194af7cbae28564
CRs-Fixed: 2902547
2021-03-23 23:43:17 -07:00
snandini
dfff97c69e Release 5.2.0.227C
Release 5.2.0.227C

Change-Id: Icc9bb2b9ee8bac78e74b3a1978026b2f229fafec
CRs-Fixed: 774533
2021-03-23 21:39:22 -07:00
Liangwei Dong
b0fa851d3c qcacld-3.0: Fix invalid frequency in CSA
API sap_indicate_radar needs to return sap current
frequency instead of channel.

Change-Id: I62a4aae0604b11587a14d17d4c641262b8019ab3
CRs-Fixed: 2900489
2021-03-23 21:39:21 -07:00
Lincoln Tran
bd277f1bb0 Revert "qcacld-3.0: Send TxBF in NAN case"
This function call is not needed because the capabilities
are being sent post vdev start correctly. The call here sends
the capabilities incorrectly at a later time so the good
values are overwritten.

This reverts change I32af660724cfaecfe59da153fea9f98d24b0d4cb.

Change-Id: Ie57a598f1055ee6a3d5a5f9cd353724dc620ab1d
CRs-fixed: 2905402
2021-03-23 21:39:15 -07:00
snandini
2232d9503a Release 5.2.0.227B
Release 5.2.0.227B

Change-Id: Ifd74ec7e969cd68c97a6d319c1e7e0d15d479ea1
CRs-Fixed: 774533
2021-03-22 13:31:03 -07:00
sheenam monga
1f6cb040c4 qcacld-3.0: Don't find dsrc channel based on channel number
Channel number may be same for different bands due to which
non-dsrc channel may be treated as dsrc or vice-versa.

Fix is to find channel is dscrc or non-dsrc based on frequency.

Change-Id: I349172713dda6880771e14231aeb1b4419a86e01
CRs-Fixed: 2902986
2021-03-22 13:31:02 -07:00
Lincoln Tran
ab9679a5eb qcacld-3.0: Send VHT TXBF caps after vdev start
After creating the vdev, send the VHT beamforming capabalities.

Change-Id: I9c989a51dab4e239b31d0e8e25f5cf471e6aa0a6
CRs-fixed: 2902912
2021-03-22 13:30:57 -07:00
snandini
e82b9815fa Release 5.2.0.227A
Release 5.2.0.227A

Change-Id: I8461945cfe43ba73781cb16afc14a65b86129569
CRs-Fixed: 774533
2021-03-22 11:30:17 -07:00
abhinav kumar
b7de8d2d47 qcacld-3.0: Invalid reason code in case of scan
If the WLAN driver stops sending up beacon information
due to other WIFI operations (like scan and disconnection),
Driver must send pause indication to wpa-supplicant with
reason code defined in enum
qca_wlan_vendor_beacon_reporting_pause_reasons.

Currently, host sends invalid pause reason in case of
scan.

Fix is to send proper reason code in pause indication
in case of a scan.

Change-Id: Id99e5a29be09fbde2c23908ab1f85d40ca3d74b8
CRs-Fixed: 2890110
2021-03-22 11:30:17 -07:00
snandini
81e51a4ba2 Release 5.2.0.227
Release 5.2.0.227

Change-Id: Idac8499a8086e460ce3cac6128c970861116671b
CRs-Fixed: 774533
2021-03-22 09:31:43 -07:00
Pragaspathi Thilagaraj
476d1fadb1 qcacld-3.0: Fix incorrect TWT info frame enabled flag in status query
In TWT status query, the driver fills the TWT info frame enabled
flag if TWT info frame is disabled. This gives wrong information
to the userspace.

Set the TWT info frame flag appropriately if info_frame_disabled
flag is false.

Change-Id: I319da5aacaec792090c0eca05d2a4be8b280e3e0
CRs-Fixed: 2902548
2021-03-22 09:31:43 -07:00
snandini
883d667ace Release 5.2.0.226Z
Release 5.2.0.226Z

Change-Id: Ib3ddb83a3c907e611e9fee94144a43f3a8c558aa
CRs-Fixed: 774533
2021-03-22 04:54:49 -07:00
Jyoti Kumari
6308349a61 qcacld-3.0: Check NULL value of wmi_handle
In target_if_register_mgmt_data_offload_event(), check NULL value of
wmi_handle before it's used by wmi_service_enabled()

Change-Id: Iea51c59770258fd10468bb439f559094b563851f
CRs-Fixed: 2900533
2021-03-22 04:54:49 -07:00
snandini
04d0c0e406 Release 5.2.0.226Y
Release 5.2.0.226Y

Change-Id: I0ab3c225f81fed7782e26be01f3b7d83af5ee38b
CRs-Fixed: 774533
2021-03-22 02:51:19 -07:00
wadesong
350189038e qcacld-3.0: Fix a compilation error on gno
Function hdd_ipa_update_rx_mcbc_stats()'s implementation
shouldn't be enclosed by macro SAP_DHCP_FW_IND, so move it out
of the block controlled by SAP_DHCP_FW_IND to avoid compilation
error when the same macro is not defined.

Change-Id: I1fa6d350f180dec3a82432f798f026b75ac89639
CRs-Fixed: 2903757
2021-03-22 02:51:18 -07:00
snandini
f10f13039f Release 5.2.0.226X
Release 5.2.0.226X

Change-Id: Ibec8b45441bc91562436d00740b8f34d7b4707ca
CRs-Fixed: 774533
2021-03-21 23:48:55 -07:00
Yeshwanth Sriram Guntuka
291a013641 qcacld-3.0: Reset the rx hw ext stats on connection
CNE queries stats via the ext stats vendor cmd. As
part of this, REO commands are enqueued to HW for
each tid to get mpdu_rx and mpdu_rx_missed counts.
In the scenario where the first ext stats request
post STA disconnection and re-connection times out,
the counts from the previous connection are reused.
The second ext stats request can successfully get
the new counts from HW in which case, there is a
possiblity for the mpdu_rx count sent in the second
stats response to be lower than the count sent in
the first stats response.

Fix is to reset the mpdu_rx and mpdu_rx_missed count
on STA connection.

Change-Id: I4d5bb646050f667bb884184b4f65fa0fcf4cfd38
CRs-Fixed: 2898969
2021-03-21 23:48:54 -07:00
snandini
1f5956d029 Release 5.2.0.226W
Release 5.2.0.226W

Change-Id: If03359b6ac53dec781a2d5b15f54baf89a33466b
CRs-Fixed: 774533
2021-03-21 21:50:36 -07:00
Jyoti Kumari
e6f2a6bded qcacld-3.0: Avoid double memory free of ack_work handler
when the worker thread executes wma_data_tx_ack_work_handler()
as part of driver load/unload, driver frees ack_work but dosent
reset to NULL which results to double memory free in wma_stop()

The fix is to make sure to flush this work and reset to NULL
before the wma_handle gets freed.

Change-Id: I4f56db87256b0f8828c00a2e70158cd76afe1ee0
CRs-Fixed: 2895664
2021-03-21 21:50:35 -07:00
snandini
2412755898 Release 5.2.0.226V
Release 5.2.0.226V

Change-Id: If962fb04b37fff4063ac3c8d488f22d9bb7a2ac8
CRs-Fixed: 774533
2021-03-19 20:49:53 -07:00
Alan Chen
0a0388fdba qcacld-3.0: Disable FISA compilation for certain builds
Add conditional statements to enable/disalbe FISA compilation
for certain builds.

Change-Id: I76fbe3336b9ad45dc0a4db585fd012778ba792aa
CRs-Fixed: 2901065
2021-03-19 20:49:53 -07:00
snandini
1efdd2dc11 Release 5.2.0.226U
Release 5.2.0.226U

Change-Id: I6ddfac932c059c5753b916c0915b59508a9c229a
CRs-Fixed: 774533
2021-03-19 12:15:22 -07:00
Srinivas Girigowda
aa4dd3ddff qcacld-3.0: Allow TWT setup re-negotiation for the existing session
Add support to allow TWT setup re-negotiation for the existing session.
If the setup request is received:
   - before the host driver receiving the setup response event from
     firmware for the previous setup request, then return -EINPROGRESS.

   - after the host driver received the setup response event from
     firmware for the previous setup request, then setup_done is
     set to true and this new setup request is sent to firmware
     for parameter re-negotiation.

CRs-Fixed: 2897896
Change-Id: I4d0cc5dac8d569a2e57c70ae6896ad1a24937597
2021-03-19 12:15:22 -07:00
snandini
5abfed6f9a Release 5.2.0.226T
Release 5.2.0.226T

Change-Id: I0fffc6b37e874452a25a77f7a2348d06c37da290
CRs-Fixed: 774533
2021-03-19 06:49:50 -07:00
Subrat Dash
5f7fb344cc qcacld-3.0: Kbuild: Add dp_txrx_wds.o to DP_OBJS
Add following build config options to enable WDS support.
* CONFIG_FEATURE_WDS
* CONFIG_FEATURE_MEC
* CONFIG_FEATURE_MCL_REPEATER

CRs-Fixed: 2894217
Change-Id: I3a97063be6317cbd4d65e0292deaef4116dbd433
2021-03-19 06:49:49 -07:00
snandini
c66fbde8ab Release 5.2.0.226S
Release 5.2.0.226S

Change-Id: I942971075d43fa1b13907afe34c29db6ebe3b654
CRs-Fixed: 774533
2021-03-18 16:41:42 -07:00
Dustin Newman
dec9fd4086 qcacld-3.0: Reduce the log level alloc failure
Reduce the log level alloc failure since it is not fatal. Log the
requested size of memory instead of last ring size found in the
case of alloc failure.

CRs-Fixed: 2894342

Change-Id: Idfb0eec7421e4568008517e35b2fb928f09b6818
2021-03-18 16:41:42 -07:00
Subrat Dash
d7794ba3b5 qcacld-3.0: Add support for WDS repeater mode
Enable 4address frame format for the packets to the AP.
Enable MEC check for the sta dp vdev.

A new ini is added to enable WDS feature specifying the
desired WDS mode.

CRs-Fixed: 2889438
Change-Id: I99ccb91adf283a1ed863902ec4b31f1c3e821d32
2021-03-18 16:41:38 -07:00
snandini
7280aff038 Release 5.2.0.226R
Release 5.2.0.226R

Change-Id: If5c58bcc7f1b712a5281588f474e6803ee9ca764
CRs-Fixed: 774533
2021-03-18 11:51:26 -07:00
Chaoli Zhou
d0e2c2f3a4 qcacld-3.0: Enable CONFIG_WLAN_STREAMFS for CFR
Set CONFIG_WLAN_STREAMFS depend on CONFIG_RELAY,
which can support write CFR data to the node:
/sys/kernel/debug/xxx/cfrwlan/cfr_dump0

Change-Id: I2a9b1920c55ca16277282d5430ad3f3de5c4795d
CRs-Fixed: 2902315
2021-03-18 11:51:26 -07:00
snandini
3945957ea9 Release 5.2.0.226Q
Release 5.2.0.226Q

Change-Id: I4a87cc0a7791f162e22cd5dd1fd94cef6914933c
CRs-Fixed: 774533
2021-03-18 09:51:13 -07:00
Abhishek Ambure
e489d5e393 qcacld-3.0: Fill wma req before pdev_set_dual_mac cmd sent to fw
Presently host prepares and fills wma req in wma_hold_req_queue
after sending pdev_set_dual_mac command to FW. Host uses same wma
request to process response from firmware. If host gets FW response
before filling wma request to wma_hold_req_queue, host fails to
process pdev_set_dual_mac cmd response. And thus the wma request
queued after sending pdev_set_dual_mac command gets timeout.
Hence prepare and fill wma req in wma_hold_req_queue before sending
pdev_set_dual_mac command to firmware.

Problem scenario:
1) Host send pdev_set_dual_mac cmd to fw in kworker thread and then
   gets suspend before filling wma req into wma_hold_req_queue.
2) Host gets pdev_set_dual_mac cmd response from fw and schedular
   thread runs to process response where it doesn't get wma request.
3) Now kworker thread gets scheduled and fill wma req and gets
   timed out.

Change-Id: I4d32e4459c32843c8fdb9a48262b5a55eecf2cbd
CRs-Fixed: 2902212
2021-03-18 09:51:13 -07:00
snandini
c6fb4f728d Release 5.2.0.226P
Release 5.2.0.226P

Change-Id: I5c7238ba708dd99d14804b87cc0ae79fc5234dd6
CRs-Fixed: 774533
2021-03-18 07:43:01 -07:00
Karthik Kantamneni
6d45287e66 qcacld-3.0: Enable delayed reg update feature for QCA6750
Enable srng delayed reg update feature for QCA6750

Change-Id: Idf3765d1c624e88ffa2fc51468dde0a300348654
CRs-Fixed: 2900494
2021-03-18 07:43:01 -07:00
snandini
607ee95e17 Release 5.2.0.226O
Release 5.2.0.226O

Change-Id: Ie2a67daca14bb9310742888a9ca2b8d7eb5099bb
CRs-Fixed: 774533
2021-03-18 05:43:37 -07:00
ngong
9ba19df97c qcacld-3.0: Set SIR_VDEV_PLCY_MGR_TIMEOUT to 4s
The WMI command tx credit request/return period is impacted
by host CPU loading/scheduling. For a real world case, when
at most 90 WMI commands are queued, and the period is 30ms,
at least 2.7s is needed, so set timeout to 4s for safety margin.

Change-Id: Ice444946292cd4d3cb82f1672a157d3858ac8c5e
CRs-Fixed: 2875205
2021-03-18 05:43:37 -07:00
snandini
6e9db0d9b4 Release 5.2.0.226N
Release 5.2.0.226N

Change-Id: I98f24aa18c405d138819e3e145d753bf3a8879a4
CRs-Fixed: 774533
2021-03-18 03:38:17 -07:00
Deeksha Gupta
bae3e63070 qcacld-3.0: Receive twt_setup wake_mantisa in microsecond
Currently, host receive the mantissa in TU from upper
layer.
Add support for below TWT setup additional parameters:
Mantissa in Microsecond
Add changes to receive mantissa value of wake interval
in microsecond.

Change-Id: I00ac5006002a6b4d521a005080a1f5a787f54ba7
CRs-Fixed: 2888361
2021-03-18 03:38:17 -07:00