Commit Graph

568 Commits

Author SHA1 Message Date
Gururaj Pandurangi
8bb46df0d8 qcacld-3.0: Set AMSDU/AMPDU caps per vdev from cli
In the case of EHT, if the mode is MLO then set AMSDU/AMPDU
caps per vdev instead of setting it only on assoc vdev.

Change-Id: Iaf480ee6a42cea83e30f412f663f688c0330d246
CRs-Fixed: 3392015
2023-02-14 21:22:07 -08:00
Sheenam Monga
a3a9b59ba8 qcacld-3.0: Add Support for QCA_WLAN_CONCURRENT_AP_POLICY_XR
Add support to handle new AP policy AP_POLICY_XR to handle
XR AP requirement

Change-Id: I55299bd186b5c97c2571d100cfcc7b6736b8de98
CRs-Fixed: 3403458
2023-02-14 17:18:14 -08:00
Liangwei Dong
15691e1d7c qcacld-3.0: Assign combined ACS weight to 6 GHz PSC channel
For bw higher than 20 MHz ACS request, such as 160 MHz,
weight calculation will combine the neighbor channel's
weight which maybe Non PSC channel, the previous setting of
combined weight to channel of lowest weight of neighbor channel.
That maybe Non PSC channel, that causes the final ACS result
is Non PSC channel, which is unexpected for standalone SAP.

Fix by set combined weight to PSC channel, so that PSC
channel will have a valid weight in final sorting with 5 GHz
or 2 GHz list.

Change-Id: Ic37d005af524f5ff2c8cb2c86647f02ced7c32d7
CRs-Fixed: 3394384
2023-02-11 02:23:20 -08:00
chunquan
d0f7de28a0 qcacld-3.0: Add new ini for roam statistics cache number
Add ini groam_info_stats_num used to control wlan driver
cache roam statistics information number.

Change-Id: I203257af37dcac76c6822ddfcc2e9dc723078a25
CRs-Fixed: 3393712
2023-02-07 06:59:46 -08:00
Will Huang
e5e71efe2c qcacld-3.0: Change AFC enable static configure to INI configure
Currently if host enable AFC in WMI INIT CMD, target will trigger AFC
request if current country has AP SP reg rules. We have changed regdb
on specific SP to enable AFC test, to not affect other SP which shares
regdb and FW, introduce INI to control AFC enable/disable for
flexibility.

And because currently no country support AP SP reg rule per spec,
so disable AFC by default.

Change-Id: I0e5eb2dac0a8df01635437fe8353ca5431ae5d2a
CRs-Fixed: 3393896
2023-02-05 04:32:32 -08:00
Mohammed Ahmed
b083b726aa qcacld-3.0: Fix keepalive enum
Currently gStaKeepAliveMethod and station_keepalive_method are not
mapped properly due to an offset of one. Fix this by updating enum
definition.

Change-Id: I572ee472b0b45816bf26830060d2b0707c90f387
CRs-Fixed: 3385907
2023-01-25 19:35:12 -08:00
Surya Prakash Sivaraj
d6df82c2b6 qcacld-3.0: Add ini to disable beacon protection
Some legacy STA doesn't recognize the EXT CAP IE with
length greater than 8bytes. Therefore, these STA cannot
associate with hotspot broadcasting newer capabilities
in the extended IE.

To fix this, add an ini which would override the beacon
protection config in host driver.

Based on this ini, the beacon protection would be disabled
only for non-6 GHz and non-11be SAP profiles, as beacon
protection is mandatory in 6 GHz and 11be cases.

Change-Id: I672b707f6955fa31938aebba5e25461dd40cee4e
CRs-Fixed: 3378974
2023-01-24 19:12:33 -08:00
Rahul Gusain
4d22da60ff qcacld-3.0: Add print log for new roam scan type
Firmware sends the roam scan info tlv to driver during roaming.
Currently, in this tlv, firmware fills scan type as (0-3) and
driver log this as "PARTIAL", "FULL", "NO SCAN" and "Higher Band"
But with new requirement, idle roaming shall only roam to higher band
(2.4 GHz < 5 GHz < 6 GHz) than current band.
1. If current band is 2.4 GHz, it cannot roam to 2.4 GHz.
It can roam to 5 GHz and 6 GHz.
2. If current band is 5 GHz, it cannot roam to 2.4 GHz and 5 GHz.
It can roam to 6 GHz.
So, to add this requirement, firmware introduces new scan type 4 for
which driver need to log.

Change-Id: I80d1c47a434da5009aed4cab08c6eae91bda5b0e
CRs-Fixed: 3379468
2023-01-19 12:27:01 -08:00
Asutosh Mohapatra
dee1c76bd6 qcacld-3.0: Add new INI to separate scan policy for rest of world users
Currently host drops an AP from scan list if host country is set to
US and AP country is non-US. This implementation violates our
standard regulatory scan policy.

To address this issue, introduce a new INI to differentiate
between our standard regulatory policy with others.

Change-Id: Ie6bd2d1925048aef427136b34d00d361955f40b2
CRs-Fixed: 3377242
2023-01-18 06:00:09 -08:00
Liangwei Dong
4a18155583 qcacld-3.0: Add phy regulatory frequency range check
If phy regulatory capability doesn't support high or low
frequency indicated by MACRO such as HIGH_5GHZ_FREQ,
LOW_5GHZ_FREQ, we should not hard code to the MACRO.
The change adds new mlme API wlan_mlme_get_phy_max_freq_range
to get phy regulatory ranges from target info.

Change-Id: I95f48296ca093c20b1391d7657204eecfb418908
CRs-Fixed: 3376402
2023-01-15 10:13:33 -08:00
Asutosh Mohapatra
ff0430caee qcacld-3.0: Update few INI values
Update RoamIdle_MinRSSI, RoamIdle_RSSIVariation,
RoamIdle_InactiveTime ini default values.

Change-Id: I0c70d4ca3eaf299492d4715485e6a55982399426
CRs-Fixed: 3375824
2023-01-09 23:35:03 -08:00
Yeshwanth Sriram Guntuka
9972a80234 qcacld-3.0: Set to_fw bit in DP vdev for Direct link use case
Set to_fw bit in DP vdev for direct link use case
and also set it when the use case is unspecified as
well.

Change-Id: I7306e22e81303720830cfce4ce19b15d2080d93c
CRs-Fixed: 3369891
2023-01-07 17:58:59 -08:00
Jeff Johnson
cb647fd309 qcacld-3.0: Fix MLME documentation
The kernel-doc script identified multiple documentation issues in
components/mlme, so fix them.

Change-Id: I1fdcdcc7e43c8945044d22aeeca7b2f1b8bec6f7
CRs-Fixed: 3358666
2022-12-27 19:09:28 -08:00
Jingxiang Ge
bf0462e93e qcacld-3.0: clear rate info in mlme priv for non-support rates
When update rate info to vdev mlme_priv, if in current assocrsp
there is no extend rate or mcs rate, need to clear such info.
otherwise such info is still last connection information.
the link rate will display wrongly, test step as:
1 connect with 11g AP
2 config AP to 11b, then connect manually
3 link speed will be wrong on sta side

if extend rate or mcs rate is not present, clear ext_opr_rate_set
and mcs_rate_set.

Change-Id: I8ff1b5804dbbe463d6949d0431079174446c64ad
CRs-Fixed: 3356077
2022-12-26 03:23:34 -08:00
Jyoti Kumari
7ae11c336b qcacld-3.0: Populate edca_pifs_param ie for 6 GHz channel
For LL SAP, populate edca_pifs_param ie in beacon for 6 GHz
channel.

Change-Id: Ic0e85d2dd5864bc4aa6d6a169eae06213f573f0a
CRs-Fixed: 3359474
2022-12-26 03:23:01 -08:00
Zhiwei Yang
977a545222 qcacld-3.0: Fix compile error when WLAN_FEATURE_11BE_MLO disable
Fix implicit declaration compile error when enable WLAN_FEATURE_11BE
and disable WLAN_FEATURE_11BE_MLO.

Change-Id: I688589bef74eaed0baf2a865268cc3ba5cd88873
CRs-Fixed: 3352992
2022-12-22 07:03:59 -08:00
Divyajyothi Goparaju
017f34dd8d qcacld-3.0: configure valid range of value for aliasing INI
There are two different names with different range of
value for aliasing INI's.
So, it should pick the valid range of value wrt INI
name.

Change-Id: I58d4797a0fa598a1e44349c8954dac3378f1a751
CRs-Fixed: 3352412
2022-12-14 02:02:52 -08:00
Roopavathi Lingampalli
fcb513f88f qcacld-3.0: Add Component APIs for required ucfg APIs in DP component
When component dependent functions calling from higher
modules or any other components, it uses ucfg APIs pattern.
Calling ucfg dependent APIs is acceptable for higher modules
like HDD, OSIF but for another components like DP to avoid
using ucfg APIs here, implementing component APIs for existing
ucfg APIs to other components like MLME, TDLS, Pkt capture in
DP component module.

Change-Id: Ib8857eeca6a88810d7875312ff6dc14ffb60bc70
CRs-Fixed: 3351486
2022-12-13 14:06:07 -08:00
Srikanth Marepalli
b73718cf7d qcacld-3.0: Introduce ini to configure roam RSSI diff for 6 GHz AP
This is applicable only when the roaming happens from 2.4 GHz/5 GHz
to 6 GHz AP.
The value is used to check if the 6 GHz AP to which we are roaming
(from 2.4 GHz/ 5 GHz) is better than current AP in terms of RSSI.
This checking is disabled if the value is set to zero.

Change-Id: I77f1183e1fd704dfa153841e669a20c9e75d0fe7
CRs-Fixed: 3353346
2022-12-12 15:38:42 -08:00
Jyoti Kumari
af62331dd8 qcacld-3.0: Add WMI interface to configure EDCA/PIFS param
Add WMI interface(WMI_VDEV_SET_TWT_EDCA_PARAMS_CMDID) to
configure EDCA/PIFS param for LL SAP.

This configuration depends on edca_param_type.
If edca_param_type is 0 then host will configure EDCA param and
send it to firmware via WMI interface.
If edca_param_type is 1 then host will configure PIFS param and
send it to firmware via WMI interface.

Change-Id: I09f49474c0a698257d06aa4f1a17b56aae735fa5
CRs-Fixed: 3349447
2022-12-12 11:49:17 -08:00
Vijay Raj
f101354847 qcacld-3.0: Add FW support for AKM 24
Add FW support for AKM 24

Change-Id: I067c7f2a4eabe680fdd38e78cb5ffbd8ad306ad3
CRs-Fixed: 3301709
2022-12-09 07:31:59 -08:00
Srikanth Marepalli
f6ae09b410 qcacld-3.0: Add vendor attribute to include 6 GHz in roam full scan
During the roam scan, if there are no desired APs found in the partial
frequency list, an immediate full scan on all the supported frequencies
is initiated as a fallback. This would include the 6 GHz PSC
frequencies by default.
This attribute allow that behavior to be modified to include PSCs only
if 6 GHz use has been detected in the environment.

Change-Id: I6dc380419f14b920737fd87cd9a487c28364563b
CRs-Fixed: 3351697
2022-12-08 02:48:30 -08:00
Srikanth Marepalli
15bbff508e qcacld-3.0: Add vendor attribute to optimize roam full scan
User can include/exclude the frequencies in roam full scan that
were already scanned by the previous partial scan, using the new
vendor attribute introduced as part of roam vendor command.
Host sends the configured value to firmware.
As per current implementation of roam scan, if there are no APs
found during partial scan, immediately a full scan will be
initiated as a fallback. This includes all channels that were
already scanned as part of partial scan.
This attribute controls the optimization, to exclude all channels
which are already scanned as part of partial scan.

Change-Id: Icd6381b4daadcfe32dabda131ae92e2e32f07f1d
CRs-Fixed: 3343657
2022-12-05 11:11:58 -08:00
Liangwei Dong
0047371885 qcacld-3.0: Move Action OUI INI config to component
Move Action OUI INI config to component.
Add ucfg API to load/parse the configuration.

Change-Id: Ibaab5428bc575394b9a5b464639d24f80f042e93
CRs-Fixed: 3310697
2022-12-04 15:25:52 -08:00
Krupali Dhanvijay
a3a9866f7d qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_valid_channels() and
sme_get_roam_intra_band() apis and
replace it with ucfg api.

Change-Id: Ic2f07e2193186d1e1ac81f6e5909417c10ab9c89
CRs-Fixed: 3335898
2022-12-02 01:24:32 -08:00
Jyoti Kumari
4c0dab6980 qcacld-3.0: Add edca_param_type ini for LL SAP
Add edca_param_type ini to configure edca or pifs param for
LL SAP.
If edca_param_type is 0 then set edca param or
if edca_param_type is 1 then set pifs param.

Based on this ini, host configures either edca or pifs param
and send it to firmware and earbud via OTA frames.

Change-Id: I46a5efea4f516b145d04d8b8ad79c5d47ceb7f89
CRs-Fixed: 3344875
2022-11-28 15:51:48 -08:00
Srikanth Marepalli
8ef0316626 qcacld-3.0: Add vendor command attribute for roam hand-off delay
User can configure roam hand-off delay value using the new vendor
attribute introduced as part roam vendor command.
This change gets the configured value and sends it to firmware.
And firmware delays the roam Hand-off (in msec) by the specified
duration to receive pending RX frames from the current BSS.

Change-Id: Ic328c077cba06532ee8ffed12cde072c816b92e0
CRs-Fixed: 3329964
2022-11-26 10:34:44 -08:00
Abhishek Singh
eee0c37e9d qcacld-3.0: Limit unicast probe req during join timeout in MCC
Currently probe request is sent every 200ms during join timeout
this can lead to 16+ probe req, send during join time.

Change logic to send max 5 probe req during join time,
if candidate freq can lead to MCC concurrency scenario.

Change-Id: I7956771e2cf6724754f59c6db5b07fb45426ae41
CRs-Fixed: 3338329
2022-11-22 15:50:35 -08:00
Will Huang
58ce19c7e0 qcacld-3.0: Add static cfg items and APIs for AFC feature
Add 4 static cfg items for AFC feature:
CFG_AFC_REG_NO_ACTION, CFG_6GHZ_SP_POWER_MODE_SUPP,
CFG_AFC_TIMER_CHECK_DIS, CFG_AFC_REQ_ID_CHECK_DIS.

Add APIs to pass these settings to psoc private of regulatory
component.

Change-Id: I61114fb7bf7d84f939265629bde78813b6295e39
CRs-Fixed: 3153987
2022-11-19 07:43:48 -08:00
Amruta Kulkarni
ad7dfc2ab6 qcacld-3.0: Add cfg for t2lm negotiation supported
Changes to add cfg item for t2lm negotiation support

Change-Id: I94992f5bc8142325434223c59ebbcedd86aa0ff9
CRs-Fixed: 3236628
2022-11-19 05:47:45 -08:00
Vinod Kumar Pirla
c682062e13 qcacld-3.0: Associate in 11ax mode on non MLO vdev
In 11be capable configuration, for connection attempt
to MLO AP from non-MLO type vdev, downgrade to 11ax
mode association for that vdev.

User can still connect in ML mode from MLO type vdev.

Change-Id: I1e7cf940a778a20f2f4d5d24283ffb6aae52781b
CRs-Fixed: 3312163
2022-11-18 00:31:10 -08:00
Ashish Kumar Dhanotiya
3297080714 qcacld-3.0: Update NSS for SAP dynamically
Currently host driver does not support dynamic NSS update for
SAP. Based on new requirement update NSS for SAP.
To achieve this requirement, add a logic to update the NSS and
restart the SAP with the updated NSS based on the ini.

Change-Id: Ie770b1103ba4050c48cd4ba3674a5e0d89c86fdf
CRs-Fixed: 3307308
2022-11-17 22:25:55 -08:00
Vinod Kumar Pirla
10ddbd5a8c qcacld-3.0: Send peer ML info on BSS join/leave to cfg80211
On client connection, send the client's MLD address, assoc response IEs
and the link_id of SAP on which the new client is added.
For non-MLO capable clients the MLD is sent as NULL address

On ML client disconnection, use MLD address of the client as argument
to cfg80211_del_sta().
For non-MLO client disconnection, use the legacy address of the client
as argument to cfg80211_del_sta().

Change-Id: I43cb8e688251b6118932e1ae88f7abdf53dd54a0
CRs-Fixed: 3324216
2022-11-17 02:28:35 -08:00
Bing Sun
09b25d7556 qcacld-3.0: Define new_ch_width in csa_offload_params as phy_ch_width
Currently sme_switch_channel set new_ch_width as phy_ch_width, while
wma_csa_offload_handler set new_ch_width as raw bit in wide bandwidth
channel switch IE.
Clean up the code. Define new_ch_width in csa_offload_params as
phy_ch_width.

Change-Id: Iadecc7693bf4ffd9f9562405ef18ea9d25d45c9e
CRs-Fixed: 3324762
2022-11-08 16:49:10 -08:00
Sheenam Monga
d7ce2c63fe qcacld-3.0: Add sr_enable_mode ini
Add sr_enable_mode ini to check SR(Spatial Reuse)
can be enabled for non-STA mode or not. If SR
can't be enabled for non-STA mode and concurrency
is not allowed then don't allow any SR operation.

Change-Id: I876882c48c54f216bc1d0efa4dccce63f2a2e63c
CRs-Fixed: 3311374
2022-11-04 16:27:05 -07:00
Vinod Kumar Myadam
eb9de6b459 qcacld-3.0: Update INI parameter default value
Update CFG_DISCONNECT_ROAM_TRIGGER_MIN_RSSI INI min, max
and default values under macro

Change-Id: I9973a032d16c5d8aedb4ad77833b9124de719e86
CRs-Fixed: 3314826
2022-11-02 01:47:30 -07:00
Liangwei Dong
be5cc24258 qcacld-3.0: Fix unsafe check failure for SAP
With MACRO FEATURE_WLAN_CH_AVOID_EXT enabled,
"restriction_mask" can only be checked if
coex_unsafe_chan_nb_user_prefer = 1. If the INI
coex_unsafe_chan_nb_user_prefer = 0, do not need to check
"restriction_mask". It will remain uninitialized 0.

Change-Id: If7bd1223ee3779b72fadb40e622f682db03f4ea5
CRs-Fixed: 3287634
2022-10-25 10:11:13 +08:00
Liangwei Dong
77d14af550 qcacld-3.0: Handle disable EHT flag in connect request
If user sets flag ASSOC_REQ_DISABLE_EHT in connect request, driver
will send action oui "ffffff 00 01" to host mlme and also firmware
for action id ACTION_OUI_11BE_OUI_ALLOW, so that all the AP will
be not matched with this OUI and 802.11be mode will not be allowed,
possibly downgrade to 11ax will happen.
If user doesn't set ASSOC_REQ_DISABLE_EHT, driver/firmware will
recover to default oui setting.

Change-Id: I9eab732f1bd29018d44b215c1d6c9bfac9dafe95
CRs-Fixed: 3314489
2022-10-21 15:23:38 -07:00
Jyoti Kumari
f0ddb3ec45 qcacld-3.0: Convert ap policy config vendor cmd to host enum
Userspace provide below vendor attribute for low latency sap
concurrency
a. QCA_WLAN_VENDOR_ATTR_CONCURRENT_POLICY_AP_CONFIG

This userspace uses the below value defined in enum
qca_wlan_concurrent_ap_policy_config to specify concurrency
policy
a. QCA_WLAN_CONCURRENT_AP_POLICY_UNSPECIFIED = 0,
b. QCA_WLAN_CONCURRENT_AP_POLICY_GAMING_AUDIO = 1,
c. QCA_WLAN_CONCURRENT_AP_POLICY_LOSSLESS_AUDIO_STREAMING = 2,

Convert this above enum value in host to use in concurrency
scenario.

Change-Id: Ibab06f528fd99d8c421376bd02e4c748e9556b70
CRs-Fixed: 3302418
2022-10-19 22:30:04 -07:00
abhinav kumar
59426b95be qcacld-3.0: Control Pre Punc and UL MU-MIMO feature via INI
Control Preamble Puncturing feature via INI "he_rx_pream_punc"
and UL MU-MIMO feature via INI "enable_ul_mimo".

Change-Id: Ib4d6fd10c9e4f46c1baa5070f94d8dddd4978757
CRs-Fixed: 3305742
2022-10-17 18:16:32 -07:00
Liangwei Dong
74aa28da73 qcacld-3.0: Add 802.11be allowed AP OUI INI support
Add INI g11be_oui_allow_list to config 802.11be AP oui which
is allowed to get connected in 802.11be mode.
If the INI is empty, all the ap are allowed to get connected
in 802.11be mode. If INI is set to "ffffff 00 01", then STA
is not allowed to connect to any AP in 802.11be mode.

Change-Id: I98e545ba909c1746237a20c365f8297f16fe666f
CRs-Fixed: 3304021
2022-10-17 12:57:45 -07:00
Jeff Johnson
767fcd7bf2 qcacld-3.0: components: mlme: Fix misspellings
Fix misspellings in components/mlme/...

Change-Id: I98641d9bc2d61b8c5196e5c2803e95e2b2c33ebf
CRs-Fixed: 3303641
2022-10-08 12:15:52 -07:00
Aravind Kishore Sukla
3510a69ea6 qcacld-3.0: Adjust beacon miss timeout in awake and sleep modes
In beacon loss, roaming condition is triggered when client doesn't
receives beacon packets from connected AP for 3 to 5 Secs.
There is no significance of 6Secs and 10Secs timeout in wakeup
and sleep modes respectively, as STA will disconnect after
partial+full roam scan.

Trigger beacon loss roaming that is half of link loss timeout
in wakeup and sleep modes.

Change-Id: I12ef4201a0457ca716ad857caad6c1be334e17f0
CRs-Fixed: 3306658
2022-10-07 21:01:42 -07:00
David Oladunjoye
5f21308490 qcacld-3.0: Update min/max bounds for RoamRSSI_Trigger
We need to update RoamRSSI_Trigger min/max to support new INI values.
Fix is to revert min/max and default back to original values.

Change-Id: I75f0b76ae920c885a1150d95ea011e5612ef62fd
CRs-Fixed: 3304654
2022-10-05 16:07:06 -07:00
Pragaspathi Thilagaraj
134dc39a2c qcacld-3.0: Change the default value of "twt_responder" ini
Disable "twt_responder" ini by default. TWT responder
configuration comes from hostapd.

Change-Id: Id094a72f70e71bac23295221dc6d12c2e7685803
CRs-Fixed: 3298565
2022-09-29 07:41:30 -07:00
Pragaspathi Thilagaraj
b70d93c705 qcacld-3.0: Add new ini to enable/disable R-STA 11az support
Add new ini "enable_responder_11az_support" to enable/disable
R-STA 11az support.

Change-Id: If99f19eb88a6db31364f010db0f257ece45e6527
CRs-Fixed: 3295310
2022-09-29 04:22:13 -07:00
Pragaspathi Thilagaraj
95cd4fde59 qcacld-3.0: Add new ini for R-STA secure LTF support
Add new ini "enable_responder_secure_ltf_support" for R-STA
secure LTF support. Enable this ini for R-STA to advertise
secure LTF support in extended capabilities & RSNXE.

Change-Id: I474b06c52c47b5a54dc827031bf9ff7c0d2f7d05
CRs-Fixed: 3283083
2022-09-14 09:36:01 -07:00
abhinav kumar
298dabfecf qcacld-3.0: Update bound range for RoamRSSI_Trigger
Correct Min, Max and Default value for INI
RoamRSSI_Trigger to avoid Out of range error while
cfg ini item parsing in host.

RoamRSSI_Trigger_min 50
RoamRSSI_Trigger_max 100
RoamRSSI_Trigger_default 75

Change-Id: Ifd4f049987c797ca43a865cefbc2d2517560f105
CRs-Fixed: 3283130
2022-09-09 22:25:59 -07:00
Aravind Kishore Sukla
5d328ac791 qcacld-3.0: Disable legacy rates in 6 GHz frequency band
Disable 11a support on 6 GHz band and change default rate of 6 GHz
frequency band by using WMI_PDEV_PARAM_DEFAULT_6GHZ_RATE.

Change-Id: I2db2dd54c03cf71e1b697796fa3dc58d2646a8b5
CRs-Fixed: 3251997
2022-09-08 02:56:40 -07:00
Jeff Johnson
afc7383127 qcacld-3.0: Rename wlan_mlme_set_sta_mlo_simulataneous_links()
Rename wlan_mlme_set_sta_mlo_simulataneous_links() to correct
misspelling: simulataneous ==> simultaneous.

Change-Id: I5f483446a63221be7c689fb35bd5b5c0548f0473
CRs-Fixed: 3280095
2022-08-31 19:22:20 -07:00