Граф коммитов

29379 Коммитов

Автор SHA1 Сообщение Дата
Vinod Kumar Pirla
bb5fbd546f qcacld-3.0: Refactor config_getter_fn APIs
Change get configuration handlers function prototype
to use link info pointer as function argument.
Existing callers moved to deflink pointer.

Change-Id: Ie3bfac53e588bbd685435251481682cd4781b5bf
CRs-Fixed: 3521517
2023-06-23 08:29:06 -07:00
Vinod Kumar Pirla
dbe7e5b2a8 qcacld-3.0: Refactor setint_getnone_fn callback functions
Modify the function prototype to accept link info pointer as
function argument to get/set the per link info. The existing
callers moved to deflink pointer.

Change-Id: I8088e1c4b232523b4421be2a005af1a45d28837c
CRs-Fixed: 3521477
2023-06-23 08:29:00 -07:00
Vinod Kumar Pirla
df588dfdbe qcacld-3.0: Refactor independent and interdependent callback APIs
Modify the APIs to accept link info pointer as function argument.
Existing callers moved to deflink pointer in adapter.

Change-Id: Ieb519156539344aaa473886b682fad69ae9f5e18
CRs-Fixed: 3521357
2023-06-23 08:28:55 -07:00
Vinod Kumar Pirla
bd7e4a3111 qcacld-3.0: Refactor IOCTL get/set APIs
Modify the APIs which handle the IOCTL get/set commands in the driver.
Use link info pointer as function argument. Existing callers moved
to deflink pointer in adapter.

Change-Id: I39aed211a49fde4f21a859e11595af0e8ba399c5
CRs-Fixed: 3521228
2023-06-23 08:28:50 -07:00
Rahul Choudhary
2720026f9d Release 5.2.1.71R
Release 5.2.1.71R

Change-Id: I87de087d00f1fa42b323337218bb5e61753f609d
CRs-Fixed: 774533
2023-06-23 04:36:33 -07:00
Vinod Kumar Pirla
e1becbe77c qcacld-3.0: Refactor wlan_hdd_get_linkspeed_for_peermac() API
To request linkspeed on per link from the BSSID saved in the station
context of each link, change the function prototype to accept link info
pointer as argument. The station context will later is accessed from
this link info pointer to send request to FW on that particular VDEV.
Existing callers moved to deflink pointer in adapter.

Change-Id: I87207455d71967c69dcdfa7680c716b4da5d5e8a
CRs-Fixed: 3520911
2023-06-23 04:36:33 -07:00
Rahul Choudhary
e35d3aa03f Release 5.2.1.71Q
Release 5.2.1.71Q

Change-Id: I8d602a6d9cbeb2ab3d8a0cc39d0079383af6ec49
CRs-Fixed: 774533
2023-06-22 22:01:48 -07:00
Vinod Kumar Myadam
2b5d708b98 qcacld-3.0: Fix for pre-cac crash in cleanup
Vendor command pre_doit holds wiphy lock inside kernel and calls
into driver vendor command handler and from driver vendor command handler
if unregister_netdevice() is called it will try to acquire same wiphy lock
inside kernel cfg80211_netdev_notifier_call() and deadlock.

To fix this issue from driver vendor command handler for pre CAC adapter
stop call cfg80211_unregister_netdevice to avoid recursive wiphy locking.

Change-Id: I24d790f86bf8fb5482fbf56c56d0ce4be50a3aec
CRs-Fixed: 3535131
2023-06-22 22:01:47 -07:00
Amit Mehta
9eb4baa9eb qcacld-3.0: Enable per link stats for kiwi v2
Enable per link stats support for kiwi v2 target

Change-Id: Ic97c562154e812d939394e3fe5173a63beecc191
CRs-Fixed: 3446807
2023-06-22 22:01:42 -07:00
Jyoti Kumari
adf22d9ae4 qcacld-3.0: Fix policy_mgr_is_6G_chan_valid_for_ll_sap() api
Remove only 6 GHz using policy_mgr_is_6G_chan_valid_for_ll_sap()
if WLAN_FEATURE_LL_LT_SAP_6G_SUPPORT is not defined.

Change-Id: I828c61adf3c88c2a5100fff603a007d8a6c85a88
CRs-Fixed: 3532992
2023-06-22 22:01:36 -07:00
Rahul Choudhary
fca6594d76 Release 5.2.1.71P
Release 5.2.1.71P

Change-Id: I58f52753640e87fe14cf9c2d669f24658c5820b3
CRs-Fixed: 774533
2023-06-22 16:03:10 -07:00
Vijay Raj
03827cfd24 qcacld-3.0: Remove dereferencing freed pointer in channel stat request
In api mlme_connected_chan_stats_request(), dereferencing
of freed pointer is observed by static analysis tool.

Remove dereferencing of the freed pointer in the api
mlme_connected_chan_stats_request().

Change-Id: Ic09b68395a9c3c67aab4a704a915b0d92a00e16d
CRs-Fixed: 3530020
2023-06-22 16:03:09 -07:00
Jianmin Zhu
44d20ce3a6 qcacld-3.0: Fix dual sta roaming failure
MLO sta + 2nd sta case, 2nd sta got pcl type: PM_NONE, total pcl
freq num 0, but dual sta follow pcl strictly, so PCL 0 is sent to F/W,
failed to roam to any freq.

To fix it, for PM_NONE and PCL freq num 0 case, don't follow pcl strictly,
send all valid freq as PCL to F/W.

Change-Id: Ie3529fd85dcfcfd3cc44ed6c25fc8fefe7a6c769
CRs-Fixed: 3534201
2023-06-22 16:03:04 -07:00
Ashish Kumar Dhanotiya
a57d5016d7 qcacld-3.0: Allow NAN+SAP SCC on unsafe channel
Currently host driver does not allow NAN+SAP SCC on unsafe channel.
With this change add support to allow NAN+SAP SCC on unsafe channel
if g_nan_sap_scc_on_lte_coex_chan ini is enabled.

Change-Id: Iccc37f28d8523cd335cce5fcfb0293f3f8cc8959
CRs-Fixed: 3531489
2023-06-22 16:02:58 -07:00
Rahul Choudhary
d9b6d94645 Release 5.2.1.71O
Release 5.2.1.71O

Change-Id: I26583ed26107211355508f5b14438fd1eab9063d
CRs-Fixed: 774533
2023-06-22 12:49:06 -07:00
Karthik Kantamneni
e5110fabef qcacld-3.0: Avoid dp_ops access during FTM mode on failure
During FTM mode start modules there is possibility  from recovery path
bus bw timer stop is being called before dp_ops gets initialized.
This will lead to accessing uninitialized dp_ops access, to avoid this
check for conn mode before accessing the dp_ops and skip timer stop.

Change-Id: I3aef52f70bc0ea6294c87e7cd889ec63a4a6e3a4
CRs-Fixed: 3531437
2023-06-22 12:49:06 -07:00
Surya Prakash Sivaraj
8169b54f12 qcacld-3.0: Parse SSID IE properly during roam
The roam candidate frame event gives the beacon of
the roam candidate. The SSID IE check expects minimum
size of the SSID to be 2 bytes. Because of this, the
candidate with ssid size 2 or less is not cached to
the scan table.

Fix this by not considering the size of the SSID IE.

Change-Id: Ifbe36ac8cf0f9c75a3830a2826f5330fa300df5b
CRs-Fixed: 3512310
2023-06-22 12:49:01 -07:00
Rahul Choudhary
1b64d5fdf0 Release 5.2.1.71N
Release 5.2.1.71N

Change-Id: I2cd14f82e4227e70a4033a51d8f514aea5fbb061
CRs-Fixed: 774533
2023-06-22 09:10:10 -07:00
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