Commit Graph

29616 Commitit

Tekijä SHA1 Viesti Päivämäärä
Arun Kumar Khandavalli
deb06bc73b qcacld-3.0: take vdev reference before passing the vdev around
While STA is connecting we check if SAP is on any of the dfs
channels passing the vdev without taking vdev reference.

SAP interface can be removed in the other thread resulting in
invalid access. So take the vdev reference before passing the
vdev.

Change-Id: I5e1e24c5c8a3f877143bc2fc1b7a5744452ac9c6
CRs-Fixed: 3541378
2023-07-15 16:06:28 -07:00
Rahul Choudhary
c719dbf10d Release 5.2.1.74B
Release 5.2.1.74B

Change-Id: I50e82f09ab73600035cc2707f6f46baf4ec0937a
CRs-Fixed: 774533
2023-07-15 08:07:03 -07:00
Vinod Kumar Pirla
7627d7c410 qcacld-3.0: Reject start adapter if no assoc adapter found
Driver creates all SAP add virtual interface as ML-type adapter
and when driver receives change interface mode to STA type on
that adapter, it will not reset the ML-type flag and during
VDEV create driver is trying to search link adapter for this
STA adapter to fill link address of the VDEV. As there won't be
any link adapter for virtually created interface, driver is not
filling MAC address and attempting VDEV create with NULL MAC.

If link adapter is not found for any reason, result in failure
for start adapter.

Change-Id: I639c384964b15a92eb7dea4e6a69fd588025e850
CRs-Fixed: 3559740
2023-07-15 08:07:03 -07:00
Rahul Choudhary
36b2cba833 Release 5.2.1.74A
Release 5.2.1.74A

Change-Id: Ic2645d4b02861f7db7e35faa8b6eafd43dc48472
CRs-Fixed: 774533
2023-07-14 18:47:59 -07:00
Aditya Kodukula
5d0fdc0b92 qcacld-3.0: Cache mlo ll_peer stats in hdd context
Currently for mlo connection, the peer_stats sent by FW
are cached into the link_info structure. Since FW sends
peer stats for all connected peers in a single event,
cache it in hdd context for easy access.

Change-Id: I5e13694683f96f9c0d4e11026f5f2737d8454c65
CRs-Fixed: 3559549
2023-07-14 18:47:59 -07:00
Rahul Choudhary
248c051ae5 Release 5.2.1.74
Release 5.2.1.74

Change-Id: I6b8a65b1f746b7c2caf7c7986b940148d5b15dd5
CRs-Fixed: 774533
2023-07-14 15:41:19 -07:00
Abhinav Kumar
c6cda92c56 qcacld-3.0: select pri20 frequency in a wideband scan list
As 320 MHz wideband scan is not supported host splits 320 MHz
bandwidth into two 160 MHz scans. Currently, none of these
two 160 MHz wideband scan requests carry the pri20 sub-band
frequency of the connected 6 GHz ML link.
Due to this, DUT is not able to receive beacons sent by 6 GHz
AP (AP sends beacons only on primary 20 MHz freq).

The fix is to fill the pri20 sub-band freq of the connected
6 GHz ML link as one frequency in the wide band scan list
request.

CRs-Fixed: 3552131
Change-Id: I3da18d5801fb7af84b6e20b8134af2d738cc57e1
2023-07-14 15:41:18 -07:00
Jyoti Kumari
8b0e06658f qcacld-3.0: Store TWT SI and SP in twt peer private object
Store TWT SI and SP in twt peer private object. This info will be
use in LL_LT_SAP to decide CSA via GATT message or ECSA action
frame.

Change-Id: I163b38a46267a2f1453cdb91d90dc97d0e6265e4
CRs-Fixed: 3517009
2023-07-14 15:41:13 -07:00
Deeksha Gupta
fb6061d91f qcacld-3.0: Reset the vdev level T2LM info as default mapping
Currently, during disconnection vdev level T2LM established
mapping set as 0.

Add changes to reset it to default mapping T2LM mapping
instead to 0.

Change-Id: I4590045a65d3e715ceddcbf73252ec853abc7cb3
CRs-Fixed: 3560022
2023-07-14 15:41:08 -07:00
Rahul Choudhary
ae93efe6e8 Release 5.2.1.73Z
Release 5.2.1.73Z

Change-Id: Ic87aa2c8da67563610afec1bb6ff9d30bc4d2f36
CRs-Fixed: 774533
2023-07-14 10:07:00 -07:00
Surya Prakash Sivaraj
3ff6b85589 qcacld-3.0: Add sanity checks to prevent incorrect CSA
Prevent DFS-to-NON-DFS CSA, if the chosen candidate
frequency is passive or if the SAP is not 6 GHz capable.
Instead, select a non-dfs channel from PCL and move the
SAP. Later, the SAP will be re-oriented to SCC if there
is interference.

Change-Id: I954a5e810639fe41b9b4e16bd84a93c24a7b03e6
CRs-Fixed: 3550941
2023-07-14 10:06:59 -07:00
Vinod Kumar Pirla
797fca51a5 qcacld-3.0: For add key VDEV use proper link info pointer
To add key for particular VDEV, the following API is using
deflink and this will lead to saving keys for wrong VDEV
incase the add key is for non-deflink VDEV.

Use the proper link info fetched from the IEEE link id or
vdev id.
APIs:
1) wlan_hdd_add_key_vdev()
2) wlan_hdd_add_key_sta()
3) wlan_hdd_add_key_sap()

Change-Id: Ia51452b56bd490976dbf677d3d27b4e0f84415d5
CRs-Fixed: 3547669
2023-07-14 10:06:52 -07:00
Rahul Choudhary
8028007ef7 Release 5.2.1.73Y
Release 5.2.1.73Y

Change-Id: I834f82f9b34d74116cef579f5e551672c005a49e
CRs-Fixed: 774533
2023-07-14 01:11:24 -07:00
Jyoti Kumari
1c4333ac79 qcacld-3.0: Create new file in ll_sap component
Create new file in ll_sap component to add api's
related with ll_sap

Change-Id: Ic3829ecd1f00268dae9ddf138caeb4288a47fb3c
CRs-Fixed: 3550283
2023-07-14 01:11:24 -07:00
Abhishek Singh
2f4d5c28be qcacld-3.0: Fix SAP start on DFS freq due to invalid sap fsm state
SAP FSM state is not moved to STARTING from STARTED for DFS freq,
thus CAC complete is not handled in STARTED state and VDEV does
not move to UP state.

Fix this by moving state to STARTING from STARTED for DFS Freq.
Also add vdev id in all FSM logs.

Change-Id: Id8f178d8d7838bdeacdeea50b41dbb19146108c2
CRs-Fixed: 3556248
2023-07-14 01:11:18 -07:00
Rahul Choudhary
d34e8536b9 Release 5.2.1.73X
Release 5.2.1.73X

Change-Id: I9fbaaadd8e8cbed8851a7a2774d5c722cbf72e55
CRs-Fixed: 774533
2023-07-13 19:23:29 -07:00
Deeksha Gupta
0837347372 qcacld-3.0: Update T2LM direction if T2LM IE is present
Currently, if T2LM IE is not present in the beacon, probe
or assoc resp frame still host is updating established_t2lm
T2LM info 0. Updating the T2LM info as 0 leads to incorrect
info after T2LM teardown.

To fix this, update the T2LM info if T2LM IE is present in
beacon, probe or assoc resp frame.

Change-Id: If3f4f9b1ee4296a0dca5f85833944fbe28df5d5e
CRs-Fixed: 3541848
2023-07-13 19:23:29 -07:00
Vinod Kumar Pirla
0cecec6df6 qcacld-3.0: Update the derived link address in mlo mgr
After all VDEV in the ML dev context are created, update the link
addresses derived in the ML dev context for connecting with 3 link APs.
For the link address which doesn't have valid VDEV id, mark the VDEV ID
invalid, for valid VDEV ID fill the corresponding VDEV ID.

Change-Id: I5e9b3414d0e0db7135cb977f48abb072cc1b6e8b
CRs-Fixed: 3492039
2023-07-13 19:23:23 -07:00
Rahul Choudhary
eabfc1a5ae Release 5.2.1.73W
Release 5.2.1.73W

Change-Id: I646f485a88f888fe6e44fcc79830ec9b91d5f2fa
CRs-Fixed: 774533
2023-07-13 11:23:59 -07:00
Vinod Kumar Pirla
780f32137a qcacld-3.0: Use array size for checking valid link idx
Use array size of link info for checking valid link idx

Change-Id: I197fbc011bd71e6a56b607726a8029c4247e6926
CRs-Fixed: 3554841
2023-07-13 11:23:59 -07:00
Deeksha Gupta
cc9067400c qcacld-3.0: Move wma_host_to_fw_phymode to WMI layer
Move wma_host_to_fw_phymode() from WMA to WMI.

Change-Id: Ib781a3fa78a15c435e22a90ca46321cd3c4b18f9
CRs-Fixed: 3557263
2023-07-13 11:23:54 -07:00
Rahul Choudhary
ec292bd305 Release 5.2.1.73V
Release 5.2.1.73V

Change-Id: Idb2c5fb8e1c734508947c53c9a936778501c978f
CRs-Fixed: 774533
2023-07-13 04:49:49 -07:00
Jianmin Zhu
331bebf233 qcacld-3.0: Don't enable roam if MLO vdev is not up
When MLO sta disconnected, sta_ctx->wlan_connected_links is cleared,
mlo_check_if_all_vdev_up return true, RSO can be enabled on this stopped
vdev, F/W assert will happen for roam struct is absent.

To fix it, for MLO vdev, don't enable roam if current vdev is not up like
legacy vdev.

Change-Id: I32e1b50525edcc4e7f6b42078e4fda9f415c9841
CRs-Fixed: 3555349
2023-07-13 04:49:49 -07:00
Yu Ouyang
cc781de492 qcacld-3.0: Disable HIF_CPU_PERF_AFFINE for Genoa
Auto GVM platform, cluster 0 is gold core, cluster 1 is siliver core.
Disable HIF_CPU_PERF_AFFINE to ensure WLAN CE can work on gold core.

Change-Id: Idc6a0400d5fc232e93af1a2c362f58d62805c836
CRs-Fixed: 3549998
2023-07-13 04:49:43 -07:00
Paul Zhang
fa3d782584 qcacld-3.0: Update the EHT CAP IE to firmware
When EPCS priority access flag changed, it needs to update
the EHT CAP IE to firmware for the probe request when offload
scan happens.

Change-Id: I37ed8edcbc05ec4e6fe5edec7cfe20de0d64b7bb
CRs-Fixed: 3552311
2023-07-13 04:49:38 -07:00
Asutosh Mohapatra
43249aa86c qcacld-3.0: Avoid allocating large chunk of memory statically
Currently in wlan_is_nan_allowed_on_6ghz_freq and
__wlan_hdd_sysfs_freq_show static allocation of 6 GHz
channel list is present which leads to stack overflow.

To address this issue allocate 6 GHz channel list
dynamically.

Change-Id: If363270ab51516b67c68399f805a0434ccbb5bd3
CRs-Fixed: 3557442
2023-07-13 04:49:32 -07:00
Rahul Choudhary
3a331ae870 Release 5.2.1.73U
Release 5.2.1.73U

Change-Id: Ia5ac5f348a86cc98c3e4da776f9926b04492dbea
CRs-Fixed: 774533
2023-07-12 21:59:36 -07:00
Paul Zhang
11a1a57d1d qcacld-3.0: Save EPCS Capability in psoc
Save EPCS Capability in psoc instead of vdev to avoid the value
lost when random MAC setting happends.

Change-Id: I35299da59156dc1197adaa3350b0d11255b76c2e
CRs-Fixed: 3551773
2023-07-12 21:59:36 -07:00
Rahul Choudhary
0b1ebf053f Release 5.2.1.73T
Release 5.2.1.73T

Change-Id: I20472c3829f897b90f5bba6194eedef6aae4feff
CRs-Fixed: 774533
2023-07-12 19:03:19 -07:00
Vinod Kumar Myadam
c55a7c9ad5 qcacld-3.0: Handle the error condition in start modules
Currently if cds_dp_open is failed, hdd_start_modules is not
disabling the scheduler thread. So, if we start wlan again,
leads to crash on scheduler restart as it was not
disabled properly.

To fix this add dispatcher_disable in the cleanup in
hdd_start_modules to disable scheduler.

Change-Id: Ibe12e8bf74a8cb8b7604fd2b57426005c922f65a
CRs-Fixed: 3550858
2023-07-12 19:03:18 -07:00
Vinod Kumar Myadam
c2b848ae80 qcacld-3.0: Check for MLO IE presence only if STA is waiting for frame
Currently, host driver checks if MLO IE is present or not if an auth
frame is received in 11be station mode. But it's observed that some
APs send auth frame with invalid contents(e.g. missing MLO IE in the
frame) though it has already responded with a proper auth frame and
authentication is completed.

Host driver drops this frame and initiates a disconnection as the frame
contents are invalid. Auth node gpLimMlmAuthReq is accessed as part of
the cleanup. But host driver has cleaned up the auth_node when it
received the valid frame2. So, host driver can ignore the invalid frame
as authentication is already completed to avoid disconnection/access of
freed object gpLimMlmAuthReq.

Check for the MLO IE presence in auth frame only if driver is waiting for
the auth frame(auth_frame2) to avoid disconnect/invalid access of
freed auth_node.

Change-Id: I8c8f5e81331f684960f51df3f63f69e5905c05f2
CRs-Fixed: 3504684
2023-07-12 19:03:13 -07:00
Paul Zhang
3e9f7d3d0e qcacld-3.0: Stop TDLS peer_discovery_timer
For MLO TDLS, the discovery request frame is sent on
different links and peer_discovery_timer is started to
receive the discovery response frames from different
links.

One race condition is: the timer is running and then
vdev destroy happens. Then the timer callback could not
get the right pointer when timer is triggered.

To resolve this issue, stop the timer in the function
tdls_vdev_obj_destroy_notification.

Change-Id: I0b7aff14a599229cb5848b0b7eb9d2af53e6ad94
CRs-Fixed: 3554466
2023-07-12 19:03:08 -07:00
Arun Kumar Khandavalli
f7864c0c78 qcacld-3.0: Enabling link switch in kbuild
Include link switch source files in Kbuild.

Change-Id: If5c20399a550918add444fad9eafbdaf75cb823e
CRs-Fixed: 3530145
2023-07-12 19:03:03 -07:00
Rahul Choudhary
8b51936ada Release 5.2.1.73S
Release 5.2.1.73S

Change-Id: I39c09bc11d23a176ac644b8f79f8a2f98df3d6ff
CRs-Fixed: 774533
2023-07-12 15:39:03 -07:00
Paul Zhang
1ab4d89a23 qcacld-3.0: Init ret for wlan_cfg80211_tdls_mgmt_mlo
Currently ret is not initialized and it can return
uninitialized value in some cases.

Change-Id: Ic70ad295108cc89bea371b78f6f14ca356706d2b
CRs-Fixed: 3491253
2023-07-12 15:39:02 -07:00
Rahul Choudhary
652b015c9d Release 5.2.1.73R
Release 5.2.1.73R

Change-Id: I6c127d86888a10f87e8754d4338f9636f86b1f24
CRs-Fixed: 774533
2023-07-12 07:48:35 -07:00
Vijay Patil
c9520ce773 qcacld-3.0: Add change to replace free connect request API
In current scenario mlo_free_connect_ies() and qdf_mem_free()
use to free up connect request and sub memory.
Similarly wlan_cm_free_connect_req_param() also free up the
connect request and its sub memory.

So replace mlo_free_connect_ies() and qdf_mem_free() with 
wlan_cm_free_connect_req(). Also replace mlo_free_connect_ies()
with wlan_cm_free_connect_req_param() to avoid code duplication.

Change-Id: I37a930c3b7e63eaa8b9df9433fdc25b25d562a3c
CRs-Fixed: 3554198
2023-07-12 07:48:34 -07:00
Ashish Kumar Dhanotiya
2e488c3793 qcacld-3.0: Enable 11d on different vdev
Currently host enables 11d on different available vdev before it
sends the vdev delete command to the FW. Since 11d is already enabled
on existing vdev, FW, do not enable the 11d on this command on
different vdev.
For example in current issue, when host driver creates vdev0, it
enables 11d on vdev0. Now it creates vdev1. when host drivers tries
to delete vdev0, it sends 11d start command on vdev1 before it sends
vdev delete for vdev0. Since 11d is already enabled on vdev0, fw do
not enable 11d on vdev1. Now host driver deletes vdev0.
Since FW rejects 11d start on vdev1, 11d algorithm does not run
after vdev0 deletion.

To fix this issue, enable 11d on different vdev, once host deletes
the current 11d vdev.

Change-Id: If49a0ad62fb67a93b9f4049340a26e6f6b335f5c
CRs-Fixed: 3457642
2023-07-12 07:48:28 -07:00
Rahul Choudhary
f5d3f0020a Release 5.2.1.73Q
Release 5.2.1.73Q

Change-Id: Id1339fbbbd480a619fa0224f02306d4228075f5f
CRs-Fixed: 774533
2023-07-12 02:26:44 -07:00
Mohammed Ahmed
1899618ebc qcacld-3.0: Fix MAXTXPOWER command not applying on STA mode
Current code does not set MAXTXPOWER when using wpa_cli tool.
This is due to current code setting the tx param to the self
MAC address rather than the BSSID during STA mode.
Fix this by checking mode of adapter and setting appropriate
MAC address accordingly.

Change-Id: I32c1609812273184ddf582c404b1a5827c62ca7d
CRs-Fixed: 3552240
2023-07-12 02:26:44 -07:00
Liangwei Dong
fa9f2fa5c0 qcacld-3.0: Fix ACS downgrade BW issue
If the all of valid channels in ACS (filtered by PCL) don’t support
320 MHz, sap_sort_chl_weight_320_mhz should return failure code and then
sap_sort_chl_weight_all will downgrade BW to lower one.
But current code doesn't update valid_chans based on channel "valid"
or not in sap_sort_chl_weight_320_mhz, which causes the API
return QDF_STATUS_SUCCESS if some channels (not "valid") support
320 MHz.
"valid" means the channel is in ACS list(filtered by PCL).

Fix by check channel "valid" or not before update valid_chans.

Change-Id: Ia634f28e09f5446a0ca53aebef8af5c003b38002
CRs-Fixed: 3552093
2023-07-12 02:26:38 -07:00
Rahul Choudhary
0362d148b8 Release 5.2.1.73P
Release 5.2.1.73P

Change-Id: Id9474eb013f12bc0b6ee32685c7e7b32abff1cdc
CRs-Fixed: 774533
2023-07-11 12:48:56 -07:00
Liangwei Dong
11a102942b qcacld-3.0: Notify connection state change event
Notify connection state change event to policy mgr
to change force link mode accordingly.

Change-Id: I2da0f453ee1af67c95346f2dc23e9e757aa491b6
CRs-Fixed: 3525191
2023-07-11 12:48:56 -07:00
Aravind Kishore Sukla
61e6e88fff qcacld-3.0: Update eht nss in session on SAP
NSS info in eht is not updated to 1*1 after SISO
mode is enabled on SAP.

Update NSS info for all bandwidths in eht.

Change-Id: I3ee90c40f75d2bfed127a5c158cf1d05d46e7849
CRs-Fixed: 3456133
2023-07-11 12:48:51 -07:00
Rahul Choudhary
c404317417 Release 5.2.1.73O
Release 5.2.1.73O

Change-Id: Ia6236b5e0ab8e25d4bd867a72a5b62273e42e910
CRs-Fixed: 774533
2023-07-11 03:16:53 -07:00
Prasanna JS
d20796e882 qcacld-3.0: Add support to configure UL MU
Add support to inform peer enable/disable UL_MU
support in STA mode using OMI frame.

Change-Id: Ie12f4991654f7504802b4ae0fbdd26aecda1ee63
CRs-Fixed: 3546176
2023-07-11 03:16:53 -07:00
Amit Mehta
fe6f4d208b qcacld-3.0: Add UCFG API to get DP vdev stats
Add UCFG API to get DP vdev stats.

Change-Id: Icc0eab717ed02c544240379b8f5fcfa9d98a251a
CRs-Fixed: 3554687
2023-07-11 03:16:47 -07:00
Rahul Choudhary
c6454df63a Release 5.2.1.73N
Release 5.2.1.73N

Change-Id: Ice76c5eb72a6aa66b1c16dae9a5b16c073a38837
CRs-Fixed: 774533
2023-07-10 18:03:32 -07:00
Vijay Patil
94435f22df qcacld-3.0: Cleanup current peers upon non-11BE roaming also
Currently, all bss peers are cleaned-up as soon as ROAM_SYNC
indication is received when ML-roaming happens. This is to
avoid self-roaming cross peer issue where a peer that is
present on one vdev in the previous connection moved to other
vdev due to roaming to the same AP. So far the use case is to
roam from one set of links(e.g. 2 GHz + 5 GHz) to another set
of links (e.g. 5 GHz + 6 GHz) of same AP.

But due to recent enhancements to support non-wpa3 connections,
firmware does downgraded-roaming from 11BE to non-11BE mode.
Host receives ROAM_SYNC indication and faces self-roaming cross
peer issue in this case also.

Delete all peers even when DUT roams to non-11BE AP to avoid
this issue.

Change-Id: I9b1e63ebba85e5f2f19efc5e4608a51e06e77a40
CRs-Fixed: 3548398
2023-07-10 18:03:31 -07:00
Venkateswara Naralasetty
0246a1ba30 qcacld-3.0: add SWLM support for wcn6450
Changes required for SWLM support on wcn6450

Change-Id: I50e32d91fe45e31688cd1a11e5055a87a2fd7a4d
CRs-Fixed: 3540274
2023-07-10 18:03:26 -07:00