Commit Graph

29511 Commitit

Tekijä SHA1 Viesti Päivämäärä
Srinivas Dasari
db403bc9de qcacld-3.0: Allow CSA to DFS channel only if PCL list has it
Currently, PCL returns all 5 GHz channel and SCC channel for SAP
when an ML-STA is present. But this may lead to a case
where the CSA request might be for a DFS channel which needs CAC.

This needs a dedicated mac and ML-STA can't move to MLMR in such
cases. When firmware attempts to move STA to MLMR from MLSR,
firmware asserts as the other mac is occupied by DFS SAP for
CAC operation.
So, allow CSA to a DFS channel only if the channel is present in
PCL list as it covers the supported channel list anyway. Fix
policy mgr table entries also by allowing SCC channels only.

Change-Id: I079fa6beea97fcd7c926ad4bd2bf928a0442d146
CRs-Fixed: 3484572
2023-06-22 09:10:10 -07:00
Rahul Choudhary
874fc8ea91 Release 5.2.1.71M
Release 5.2.1.71M

Change-Id: I5d1d00fa77f34db9d66f5437a2d441e222ab47da
CRs-Fixed: 774533
2023-06-22 06:06:33 -07:00
Aasir Rasheed
ffc2dc0ba8 qcacld-3.0: Use object manager to fetch vdev info
Currently host driver uses wma->interfaces to fetch vdev
info.
This change is to use object manager instead of wma interface
to check vdev info.

Change-Id: I356e002ba6b43382e96c8e2da6d433df68de603b
CRs-Fixed: 3525139
2023-06-22 06:06:33 -07:00
Surya Prakash Sivaraj
5f79c535ac qcacld-3.0: Enable RSO for SL open connection
Driver doesn't enable RSO currently for SL + Open auth cases.

Enable the RSO from connect complete path for open auth. Add changes
to enable the RSO only after all the ML links are up in case of
N-link MLO.

Change-Id: Ie3540493660e3605fe6739dc6d7706782b8a78ea
CRs-Fixed: 3509724
2023-06-22 06:06:28 -07:00
Lin Bai
bf0f88ec20 qcacld-3.0: Add vdev id sanity check
Add vdev id sanity check when searching SAP adapter
on DFS channel, to avoid accessing obsolete adapter(s) stopped already.

Change-Id: I0ea565f343e449132de54367566656a6d6f989b0
CRs-Fixed: 3471773
2023-06-22 06:06:23 -07:00
Rahul Choudhary
738b864e26 Release 5.2.1.71L
Release 5.2.1.71L

Change-Id: Icf194fd1ff2a91c04885e390442afc8778139abf
CRs-Fixed: 774533
2023-06-21 22:48:43 -07:00
Mohammed Ahmed
f73476eb40 qcacld-3.0: Additional GKI config change
GKI config was missing some config values. Fix this
by adding them.

Change-Id: I1dc285f9e4701966ea52ec61790399899f14411e
CRs-Fixed: 3533890
2023-06-21 22:48:43 -07:00
Vinod Kumar Myadam
ea0b027073 qcacld-3.0: Fix read current country code
In populate_dot_11_f_ext_chann_switch_ann API, will read current country
code from mac context which is not have the updated country code.

So, read the current country code directly from regulatory API,
wlan_reg_read_current_country.

Remove unused variables mac->scan.countryCodeCurrent,
mac_ptr->scan.countryCodeDefault and tagCsr11dinfo->countryCode.

Change-Id: Ice64ef1be5b775125ff3bcacfcab7684c6833cad
CRs-Fixed: 3529808
2023-06-21 22:48:37 -07:00
Rahul Choudhary
c7d1a53711 Release 5.2.1.71K
Release 5.2.1.71K

Change-Id: Ia91dda9f11e3daba7da0c5ef6450fceec16abf80
CRs-Fixed: 774533
2023-06-21 16:53:41 -07:00
Abhinav Kumar
6063571728 qcacld-3.0: Process LINK_STATE_CONTROL_MODE in default mode
1.Host receives QCA_NL80211_VENDOR_SUBCMD_MLO_LINK_STATE
  vendor cmd.

2.Parse new attribute
  QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONTROL_MODE.

3.Restore mlo link(s) state as per driver.

Change-Id: I79327618a007cd1f50ca1eafcb3633bcbac2e13f
CRs-Fixed: 3529507
2023-06-21 16:53:40 -07:00
Asutosh Mohapatra
9b91648905 qcacld-3.0: Cleanup mlo interfaces properly
Currently mlo interfaces are not getting cleaned up properly
during virtual interface delete. During the driver unload
sequence host is cleaning up these link adapters but not
removing the DSC vdevs associated with these which leads
to memory leakage.

To address this issue, de-initialize and close link adapters
during virtual interface delete properly.

Change-Id: I427b9ef5ec82b4ad651bd6d4a36b9fef3f120c99
CRs-Fixed: 3515367
2023-06-21 16:53:35 -07:00
Abhinav Kumar
3bccad6892 qcacld-3.0: Process MIXED_MODE_ACTIVE_NUM_LINKS vendor command
1. Host receives QCA_NL80211_VENDOR_SUBCMD_MLO_LINK_STATE
   vendor command.

2. parse the new attribute
   QCA_WLAN_VENDOR_ATTR_LINK_STATE_MIXED_MODE_ACTIVE_NUM_LINKS
   and get the number of MLO links to operate in the active state.

3. If any of the links is in an inactive state due to concurrency,
   we need to reject the request.

4. Host sends to FW via WMI command WMI_MLO_LINK_SET_ACTIVE_CMDID
   via the below WMI attributes with mode
   WMI_MLO_LINK_FORCE_ACTIVE_LINK_NUM and set the wmi flag
   control_flags to indicate if FW need to use force link number
   instead of force link bitmap.

Change-Id: I7596c4815630563cbc419e0e9df28f1330775334
CRs-Fixed: 3529488
2023-06-21 16:53:29 -07:00
Alan Chen
baf6433a8f qcacld-3.0: Add additional bazel-related changes
Add additional bazel-related changes to resolve build errors.

Change-Id: I891556a81d217fded38915293aeea83a389d6782
CRs-Fixed: 3517415
2023-06-21 16:53:13 -07:00
Rahul Choudhary
7f496f8ccf Release 5.2.1.71J
Release 5.2.1.71J

Change-Id: I50664f0802c429b5bb2136df263cf9ae32bb740d
CRs-Fixed: 774533
2023-06-21 00:17:32 -07:00
Vinod Kumar Pirla
ec8ae33406 qcacld-3.0: Refactor wlan_hdd_get_link_speed() API
The API uses BSSID in sta_ctx which is per link data structure now.
To request the link speed on each link info, modify the API
to accept link info pointer as argument. The caller can pass
link info pointer corresponding to the sta ctx.

Change-Id: Ideb79265b64d959d6464c5d5bfc9a6380faf3ede
CRs-Fixed: 3520873
2023-06-21 00:17:32 -07:00
Vinod Kumar Pirla
58f28eb092 qcacld-3.0: Refactor RSSI/SNR get APIs
Modify the following functions to take link info as function
argument to get the RSSI and SNR values from FW on per link.
The existing callers moved to deflink pointer in adapter.
1) wlan_hdd_get_rssi()
2) wlan_hdd_get_snr()

Change-Id: I2ebefab54192ca7e7672794d446b41a6d0dffec6
CRs-Fixed: 3520838
2023-06-21 00:17:25 -07:00
Vinod Kumar Pirla
85ff638a46 qcacld-3.0: Refactor hdd_wlan_get_stats() API
Modify the API to have link info pointer as function argument
so the caller can request per link stats to query from DP stats.
Existing callers moved to deflink pointer in adapter.

Change-Id: Ie231a7a024d1a05cdb2d9e8cf022c4f5bf3e2947
CRs-Fixed: 3520700
2023-06-21 00:17:20 -07:00
Rahul Choudhary
726f34cbb3 Release 5.2.1.71I
Release 5.2.1.71I

Change-Id: Iba39e1e5b4eecdbf45c1beb2e76d4cd93436425a
CRs-Fixed: 774533
2023-06-20 20:48:55 -07:00
Vinod Kumar Pirla
437d62fb08 qcacld-3.0: Use link info pointer to get rx peer stats
To get the peer Rx stats per link, modify the following API
to take link info argument which corresponds to the VDEV for
which the stats are to be fetched as saved in respective
stats structure in link info pointer.
The existing callers moved to deflink pointer.

1) wlan_hdd_get_peer_rx_rate_stats()

Change-Id: I0c3b1532ef9352f00d871b2c9b3073d72bef1bd4
CRs-Fixed: 3520672
2023-06-20 20:48:54 -07:00
Vinod Kumar Pirla
0450e3b41e qcacld-3.0: Use link info pointer to get station stats
Modify the following API to request station stats on per link
in the adapter. Request and store FW stats corresponding to
the VDEV in the link info structure.
The existing callers moved to deflink pointer.

Change-Id: I6cc9dd7609ce754e2ab7bcb53977aa6637051143
CRs-Fixed: 3520654
2023-06-20 20:48:48 -07:00
Vinod Kumar Pirla
b30432f42a qcacld-3.0: Refactor wlan_hdd_get_sap_stats() API
To fetch the SAP stats per link, change the function prototype to take
link info pointer as argument. The callers moved to deflink pointer.

Change-Id: I4e5850e055a90ca21cd75deb530dbd179476ba59
CRs-Fixed: 3518207
2023-06-20 20:48:42 -07:00
Vinod Kumar Pirla
399b45759d qcacld-3.0: Move big data stats to per link data structure
To save per link big data stats received from FW and later send to
userspace, move the big_data_stats member in adapter to link_info.
Update the existing references to deflink in adapter.

Change-Id: I0b68e60f51c4f7b9dbe996d71754530f53350cb2
CRs-Fixed: 3518185
2023-06-20 20:48:36 -07:00
Vinod Kumar Pirla
bf2638514a qcacld-3.0: Refactor hdd_get_station_info_ex() API
To query station stats on per link, change the following API
function prototype to pass link info pointer as argument.
The caller can pass the link info corresponding to the link.
The existing calllers moved to deflink.

Change-Id: Iad84be510cfcc3154124d28f6b9902a39e711a8c
CRs-Fixed: 3518094
2023-06-20 20:48:31 -07:00
Vinod Kumar Pirla
4a25793b34 qcacld-3.0: Use link info pointer to save bcn protect stats
Modify the following API to take link info pointer as function
argument to fetch per link bcn protect stats.
The existing callers moved to deflink pointer in adapter.

1) hdd_add_pmf_bcn_protect_stats()

Change-Id: I0a09238586c6dbb8b7e7a49ddfb9dca211ff3428
CRs-Fixed: 3517954
2023-06-20 20:48:25 -07:00
Vinod Kumar Pirla
6d76bdb7cf qcacld-3.0: Use link info to fetch station stats
To fetch the each link's individual stats, modify the following APIs
to take link info pointer as function argument.
Existing callers moved to deflink pointer in adapter.

1) wlan_hdd_update_rssi()
2) wlan_hdd_update_rate_info()
3) wlan_hdd_get_sta_stats()

Change-Id: I22cfa45c045f4fea0860e756ae088f7889ed4d62
CRs-Fixed: 3517920
2023-06-20 20:48:20 -07:00
Vinod Kumar Pirla
82e212cbce qcacld-3.0: Loop all links to get connection in progress API
Iterate through all link info in adapter to return any VDEV
in connecting state.
If found the API will return link info pointer corresponding
API: hdd_get_sta_connection_in_progress()

Change-Id: I5433ccdf9cb7be26e38ab6523b29009afa3e8c99
CRs-Fixed: 3517822
2023-06-20 20:48:15 -07:00
Vinod Kumar Pirla
e5e638133a qcacld-3.0: Return link info pointer for BSSID search API
Modify the following API to return link info pointer where the
matching BSSID is found. As the API iterates all the indices in
the link info array, keep a NULL BSSID check to avoid false match
with uninitialized link info pointer.
The existing callers moved to deflink pointer in adapter.

Change-Id: I6f71344b86d53488c30211be8bef730e133876c2
CRs-Fixed: 3517810
2023-06-20 20:48:10 -07:00
Vinod Kumar Pirla
052b172af0 qcacld-3.0: Remove unused adapter argument to connect rec API
The adapter argument to hdd_cm_rec_connect_info() API is not
referenced anywhere in the function making it obsolete, hence
remove the argument.

Change-Id: I45682ada67bf74f6acafbc5ca1db7f1aa2468dd0
CRs-Fixed: 3517807
2023-06-20 20:48:05 -07:00
Vinod Kumar Pirla
66f634dce3 qcacld-3.0: Use link info pointer to copy station stats
Modify the following API to take link info pointer as function
argument to copy the hdd_stats from FW into the corresponding
VDEV stats in adapter.
The existing callers moved to deflink pointer in adapter.

Change-Id: I5a776930e833b2c864eca2c3131d5a69e9b54f81
CRs-Fixed: 3517804
2023-06-20 20:48:00 -07:00
Vinod Kumar Pirla
911af7419f qcacld-3.0: Change TDLS connection peer count and legacy APIs
As the APIs retrieve information from per link data structure
changing the function prototype to take link info as argument
so that callers can query for each link info.
Existing APIs changed to deflink pointer in adapter.

1) hdd_is_legacy_connection()
2) hdd_get_tdls_connected_peer_count()

Change-Id: I29bc2b32583ecc7af26e295a6b338b4261b1ed23
CRs-Fixed: 3517800
2023-06-20 20:47:55 -07:00
Vinod Kumar Pirla
04f2381b3d qcacld-3.0: Modify TDLS antenna switch API
Modify the following API to configure antenna switch for TDLS
to take link info pointer as function argument.
Pass the link info corresponding to VDEV. The existing callers
moved to deflink pointer in adapter.
API: wlan_hdd_tdls_antenna_switch()

Change-Id: Ic81ca38cea0314767bfc988d013f7f21eaebc40e
CRs-Fixed: 3517796
2023-06-20 20:47:50 -07:00
Vinod Kumar Pirla
86bff6137d qcacld-3.0: Modify APIs to get per link Tx/Rx NSS config
To get the Tx/Rx NSS configuration per link in adapter, modify
the following function prototype to take link info as argument.
Existing callers moved to deflink pointer.

1) hdd_get_sta_rx_nss()
2) hdd_get_sap_rx_nss()
3) hdd_get_sap_tx_nss()
4) hdd_get_sta_tx_nss()

Change-Id: I735ab21d5c0d49a570721cc2993ab7e7c76a2089
CRs-Fixed: 3517793
2023-06-20 20:47:45 -07:00
Vinod Kumar Pirla
580ddb686a qcacld-3.0: Modify APIs to get per link connected band info
Change the function prototype to take link_info pointer
instead of adapter to get per link connected band information.
Existing callers moved to deflink pointer in adapter.

1) hdd_conn_get_connected_band()
2) hdd_get_sap_operating_band_by_adapter()

Change-Id: Ifbfb09dabc8ba2da51bdb704df33fc5b934c15b1
CRs-Fixed: 3517703
2023-06-20 20:47:39 -07:00
Vinod Kumar Pirla
9dd4f4a2ee qcacld-3.0: Pass mac ctx to get RSSI and SNR by BSSID
Modify the hdd_get_rssi_snr_by_bssid() API to take mac ctx as
function argument directly instead of adapter, so as to save the
RSSI in link info and avoid having adapter in the calling function.

Change-Id: Id783f84266205ac948b4e7d98c37eeea264e0335
CRs-Fixed: 3517698
2023-06-20 20:47:34 -07:00
Vinod Kumar Pirla
855472fdfa qcacld-3.0: Introduce iterator API for active link info
MACRO: hdd_adapter_for_each_active_link_info()
      The new iterator will only iterate through the link info
      elements in the link_info array which are set to active.
      The bitmap of active link info indices is saved in
      active_links member in adapter structure.

MACRO: hdd_adapter_for_each_link_info()
      Modify the existing hdd_adapter_for_each_link_entry()
      iterator MACRO to have similar prototype as
      hdd_adapter_for_each_active_link_info()

Change-Id: I02b8a297ea809f860e041a71c180af2a8f946b3d
CRs-Fixed: 3515068
2023-06-20 20:47:28 -07:00
Aravind Kishore Sukla
7537b591b0 qcacld-3.0: Configure CFG_PCIE_CONFIG INI
Configure PCIE Gen Speed and Lane width INI based on the
MCS, BW and TXRX throughput using traffic monitor.

Change-Id: Ie899033dfe54dea1533b47b895bda52deb12d0e9
CRs-Fixed: 3532028
2023-06-20 20:47:23 -07:00
Abhinav Kumar
59c0108fe6 qcacld-3.0: Process QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONFIG
1.Host receives QCA_NL80211_VENDOR_SUBCMD_MLO_LINK_STATE
  vendor command.

2.Parse the new attribute
  QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONFIG and get the
  link and corresponding link state.

3.Send it to FW via WMI command
  WMI_MLO_LINK_SET_ACTIVE_CMDID

Change-Id: I78a055f4a9fb60ccce106f9e4761fbf6d4d2f262
CRs-Fixed: 3529456
2023-06-20 20:47:19 -07:00
Rahul Choudhary
6de7b8ebac Release 5.2.1.71H
Release 5.2.1.71H

Change-Id: I9ed8dbf6d87132524c2eca14a11c4ecbbd857fe2
CRs-Fixed: 774533
2023-06-20 09:58:28 -07:00
Jianmin Zhu
5ab6ec7f8b qcacld-3.0: Fix roam scan channel list trimmed after roaming
When roamed from mlo to single link, link vdev1 disconnected, assoc vdev0
RSO is disabled, after vdev1 disconnected, even vdev0 RSO is enabled again,
roam scan channel list is trimmed.

To fix it, when link vdev disconnect, just stop RSO, don't disable RSO,
roam scan channel list won't be trimmed.
Disable RSO only when assoc vdev disconnect.

Change-Id: Ie624cffa3acaebcd73abb7be54ce1016e88447f6
CRs-Fixed: 3522793
2023-06-20 09:58:27 -07:00
Rahul Choudhary
7a8688c906 Release 5.2.1.71G
Release 5.2.1.71G

Change-Id: I341fe383b15836a478257474d349c6d19ee0c750
CRs-Fixed: 774533
2023-06-20 06:38:52 -07:00
Vijay Patil
68badfb043 qcacld-3.0: Add fix to avoid memory leak in mlo_roam_copy_reassoc_rsp()
In current scenario during OWE roaming when HB failure occurs, it
should clean copied reassoc response and roaming info. But it is not
getting freed which leads to host driver crash while on idle shutdown.

In mlo_roam_copy_reassoc_rsp() memory is allocated for
sta_ctx->cpied_reassoc_rsp, sta_ctx->cpied_reassoc_rsp->roaming_info
and connect_ies->assoc_rsp.ptr but if memory allocation fails for
these it directly retuning without feeing previously allocated memory.

Add change to free the prevoiusly allocated memory if memory
sta_ctx->cpied_reassoc_rsp->roaming_info and connect_ies->assoc_rsp.ptr
fails to allocate memory which avoid the memory leak issue.

Change-Id: I7ca6ee526bf08c614ff25e4c3457db0dd58fc9aa
CRs-Fixed: 3507296
2023-06-20 06:38:51 -07:00
Alan Chen
085a77b29f qcacld-3.0: Convert additional configs to feature
Convert additional configs under findstring if defines to feature.

Change-Id: Iaabe8c13781db1ae3bf569fbf5dc9377bafaee23
CRs-Fixed: 3517367
2023-06-20 06:38:46 -07:00
Rahul Choudhary
abc191d368 Release 5.2.1.71F
Release 5.2.1.71F

Change-Id: I83935c380355cb7f2345f66d8787f26143fdeee6
CRs-Fixed: 774533
2023-06-20 00:40:43 -07:00
Will Huang
add0c193f1 qcacld-3.0: Check all STAs (MLO links) to find 6 GHz channel
Currently policy_mgr_modify_sap_pcl_for_6G_channels() only find the
first STA or P2P-CLI, then check its channel is 6 GHz or not,
It will lead to different behavior if there is MLO STA which has one
link connected on 6 GHz, sometime PCL modify for 6 GHz channels,
sometime not.

Change to find first 6 GHz STA or P2P-CLI, only if has, continue to
do 6 GHz channels modify.

Change-Id: I96d01ded297fb900f0ea715b75cbdadb9faade3d
CRs-Fixed: 3526650
2023-06-20 00:40:43 -07:00
Shailendra Singh
47f9e0f6c0 qcacld-3.0: Update time sync period based on tsf sync start/stop
Add pld_pcie_set_tsf_sync_period and pld_reset_tsf_sync_period to
update time sync period vote from wlan driver based on use-case
e.g. tsf sync start / stop. Extend gtsf_ptp_options ini config
to control this functionality.

Change-Id: Ie4a6c80beccd6d315c9f3b31263de7f3b8e0ac2a
CRs-Fixed: 3501976
2023-06-20 00:40:37 -07:00
Rahul Choudhary
1a65fafdf4 Release 5.2.1.71E
Release 5.2.1.71E

Change-Id: I8572fc9d80e438bf94eb93ac9e1ee6421852e56c
CRs-Fixed: 774533
2023-06-19 21:28:41 -07:00
Will Huang
2c8f0034ef qcacld-3.0: Remove certer frequency check when doing ACS at 320 MHz
320 MHz channel has overlap between adjacent bonding, so the certer
frequency is not unique, it will check fail if check certer frequency
differ and may not included as a valid bonding.

Remove certer frequency check when doing ACS at 320 MHz.
Fix static analyze error in this file.

Change-Id: Icf500e92ebe64071737161ac1e5a0d22f2a0e08d
CRs-Fixed: 3509363
2023-06-19 21:28:41 -07:00
Rahul Choudhary
db7e293940 Release 5.2.1.71D
Release 5.2.1.71D

Change-Id: I3206479ec194f5d2030e39ffb47d740b08be7e5b
CRs-Fixed: 774533
2023-06-19 11:01:13 -07:00
Kiran Kumar Lokere
f341f8f298 qcacld-3.0: Add support to send Tx SU PPDU config on each vdev
Add support to set Tx SU PPDU config on each vdev.

Change-Id: I9c25eeb5634766620cd2c2c612af9c141dfe1072
CRs-Fixed: 3491172
2023-06-19 11:01:13 -07:00
Rahul Choudhary
89f72c599d Release 5.2.1.71C
Release 5.2.1.71C

Change-Id: Ic9f1610c2fbeeaa23f413ce12cd21435dd310273
CRs-Fixed: 774533
2023-06-18 13:37:04 -07:00