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
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
Move Action OUI INI config to component.
Add ucfg API to load/parse the configuration.
Change-Id: Ibaab5428bc575394b9a5b464639d24f80f042e93
CRs-Fixed: 3310697
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
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
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
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
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
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
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
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
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
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
Update CFG_DISCONNECT_ROAM_TRIGGER_MIN_RSSI INI min, max
and default values under macro
Change-Id: I9973a032d16c5d8aedb4ad77833b9124de719e86
CRs-Fixed: 3314826
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
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
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
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
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
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
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
Disable "twt_responder" ini by default. TWT responder
configuration comes from hostapd.
Change-Id: Id094a72f70e71bac23295221dc6d12c2e7685803
CRs-Fixed: 3298565
Add new ini "enable_responder_11az_support" to enable/disable
R-STA 11az support.
Change-Id: If99f19eb88a6db31364f010db0f257ece45e6527
CRs-Fixed: 3295310
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
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
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
There are two different name with different range of value for
aliasing INI's. So, it should pick the valid range of value wrt INI
name.
Change-Id: I36b578749567998980b300e5a8daf1acb201cddd
CRs-Fixed: 3269376
There are two different name with different range of value for
aliasing INI's. So, it should pick the valid range of value wrt INI
name.
Change-Id: I89a275500f1e1ad42f2cae534e9f67e1b9e3a4eb
CRs-Fixed: 3268673
Prensently for initial scan and roam passive scan dwell time,
the same ini CFG_PASSIVE_MAX_CHANNEL_TIME is used. This will
cause initial scan to have the roam passive scan value.
Decouple passive scan and roam passive scan ini parameter by
adding new ini param for roaming
Change-Id: I4b37c8faa26c971f173e8c8179e505ea4c69c27e
CRs-Fixed: 3268789
Update the Min and Max value for gNeighborLookupThreshold
/RoamRSSI_Trigger INI as per customer requirement.
Change-Id: I5af4552cd805b57861121a32704f4fe1e98a7002
CRs-Fixed: 3245135
There are two different name with different range of value for
aliasing INI's. So, it should pick the valid range of value wrt INI
name.
Change-Id: Ia0ea4ebc6b1f96b38243c4e0693e47be99868953
CRs-Fixed: 3258760
Add support to populate MLO assoc request with EMLSR
subfields like EMLSR padding delay, transition delay that
are extracted from FW during ext service ready event.
Change-Id: Id5def8da6bef92ff6bf2101a7b3e0d8fb0cf3050
CRs-Fixed: 3262939
Based on the new requirement, add support to get requested
feature set info from different feature components.
Change-Id: I1bfc097c8ae8c4ab678d4dc07b7932cf3272d851
CRs-Fixed: 3262868
To avoid unmeaningful roaming, when low RSSI trigger,
only roam when rx linkspeed is also bad.
Steps:
1. F/W indicates feature supported by:
wmi_service_linkspeed_roam_trigger_support
2. App sets vdev rx link speed threshold by vendor cmd.
3. Bus_bw_work gets rx link speed from data path periodically.
4. If found rx link speed change from good to poor, or poor to good, send
to F/W.
5. F/W low rssi roaming is triggered only when both RSSI and link speed are
poor.
Change-Id: I56829e42b26e407dd8e989a870aee2b3ea406232
CRs-Fixed: 3261996
Firmware aborts the ongoing scan upon receiving new scan
channel list (through WMI_SCAN_CHAN_LIST_CMDID). Channel list
might get updated from userspace through commands like
country code change, power level change(SET_FCC_CHANNEL),...
It affects the features that are dependent on that scan,
e.g. ongoing connection, p2p find, etc.. Few frames might
be stuck in firmware as the scan is canceled.
It's recommended to defer the scan channel list update till
the current scan is done. This is already supported and
guarded through the ini param enable_pending_list_req
but disabled by default.
Enable the ini param to make sure above scenarios are not
affected due to channel list update.
Change-Id: I4176bb6a03657cf32f0c099b72254d61207ea6ca
CRs-Fixed: 3250137
Add assoc link bit in mlo_support_link_band to indicate supported band of
assoc link.
bit4: 2 GHz
bit5: 5 GHz
bit6: 6 GHz
Change-Id: I8fa156f43656ba91b8622ce12034ddad0bcf28a2
CRs-Fixed: 3250252
Correct description of ratemask_set ini for VHT mode
to avoid wrong configuration.
Change-Id: I91b887d8268f8faa0d0c32f90da032d00eaa14f2
CRs-Fixed: 3198950
When the STA connects to a peer, max supported ch_width is
calculated and configured to firmware. This is calculated from
self and peer capability in case of STA/SAP. Cache this in
peer object. Currently, data path module isn't aware of the final
ch_width configured.
Fetch the phymode and covert it to the DP expected ch_width
format. Update the ch_width to DP.
phymode of NDI peers is not maintained in host. So, get the NDI
self phymode and update to DP.
Change-Id: I25993053ae1f129c8fc9a352a05c788451060b2d
CRs-Fixed: 3227453
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_CMDID: Add support
for a new roam command to get vendor control parameters
from FW. Host needs to send proper param ID in command
(from enum WMI_ROAM_GET_VENDOR_CONTROL_PARAM_ID)
to get corresponding INI value from FW.
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_EVENTID:
Add support for a new roam event to get param value
from FW. FW sends this event upon receiving
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_CMDID command.
Change-Id: I03679bcf359a0f425aab7b9ea1c3cb6d84fbb0ca
CRs-Fixed: 3225160
Add support to parse a new INI named
"bss_load_trigger_6g_rssi_threshold/RoamCU_6GRSSIRange"
and send its value to FW via WMI_ROAM_BSS_LOAD_CONFIG_CMDID.
Min, Max and default value of this INI:
Min: -120
Max: 0
Default: -70
Change-Id: I9aa99d887553de4022fc0a31dc0644601cd340d6
CRs-Fixed: 3225548
In the current driver implementation, the default ini value of
gSoftApMaxPeers is set to 32, but for mobile devices, FW can
only support 10 SAP peers at max. Hence, change the default
value of gSoftApMaxPeers to 10.
Change-Id: I8c5a2a8422f02bb464a11d823f8528ebb88bb34c
CRs-Fixed: 3227078
When STA receives a connect req (C1) and it requires hw mode
change. Now the hw mode change resp will take the SME global
lock and call connection manager API, which will try to
acquire CM lock.
But if before that one more connect req (C2) is received in
another thread which has acquired CM lock before C1 can
acquire it, and this connect req C2 will also flush the C1
from CM queue. Now if C2 also require hw mode change, which
also require to acquire SME global lock.
So both connect will wait for each other to complete, leading
to deadlock.
To fix this, from hw mode change response, break the context
(by posting to scheduler thread) so that sme global lock is
released and C2 is processed.
As C1 is already flushed by C2, on scheduler thread execution
once it get CM lock it will be dropped silently, and C2 will
proceed with connect.
Change-Id: I14efb0f21442edcae90a4abea20cb0b9e06a0758
CRs-Fixed: 3223786
Currently host sends first, final bmiss count to fw
Add support for bmiss timeout(in seconds)
during wakeup as well as sleep state to fw.
Change-Id: Id748fabdff94f5fa3038bcea1b1cac733ac2dbe1
CRs-Fixed: 3224106
Add vendor handoff service bit capability support
WLAN_SOC_VENDOR_HANDOFF_CONTROL to check whether the FW
supports vendor handoff feature or not.
Change-Id: Ifdf541761716df9ca5b764c05714a8b501642354
CRs-Fixed: 3224573