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
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
Whenever driver add new feature, it increments the feature version
and send it to firmware.
Due to new 11KV feature update, increments the feature version.
Change-Id: Ia840faf85c06a4f33f68f59dadda400c8e91804c
CRs-Fixed: 3381243
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
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
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
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
The wpa_supplicant disables the BTM cap in extcap IE whenever
the MBO AP is not PMF capable, or if the btm_disable conf is set.
In current host driver design, the BTM offload is disabled only for
the MBO+non-PMF case. Therefore, add change to disable the btm offload
config if the BTM CAP is not present in the (re)assoc request as this
is determined based on intersection of peer and self cap.
Change-Id: I2fdc1010bccf5ce23f4ab2177aed6c374f7a510f
CRs-Fixed: 3369096
Currently host sends many pdev/vdev set param
commands separately to firmware from hdd.
Combine multiple pdev/vdev set params and
send to WMI to reduce number of transactions.
Also replace target wmi pdev/vdev params with host wmi
pdev/vdev params to fix existing broken layering
violation.
Change-Id: Ib76f5bd5f582a2c67486f6773ff6fd486b3d84cf
CRs-Fixed: 3333732
Currently wlan_mlme_configure_chain_mask API sends many
pdev set param commands separately to firmware.
Combine all pdev set params of wlan_mlme_configure_chain_mask
send to WMI to reduce number of transactions.
Also replace target wmi pdev params with host wmi
pdev params to fix existing broken layering
violation.
Change-Id: If0b7bce9a7c87d0f07e7a9f1d2cd80139f027308
CRs-Fixed: 3151438
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
If some 20M sub channels are disabled for puncture, bonded freq state will
become CHANNEL_STATE_DISABLE, while CHANNEL_STATE_DFS is expected if
DFS freq is included to pass CHAN_DFS_CFREQ2 to F/W by vdev start wmi cmd.
the check also happens in several other places.
To fix it, use API wlan_reg_get_5g_bonded_channel_state_for_pwrmode to
replace wlan_reg_get_5g_bonded_channel_state_for_freq and
wlan_reg_get_bonded_channel_state_for_freq.
set is_create_punc_bitmap of ch param as true, then bonded freq
state will become CHANNEL_STATE_DFS after
reg_update_5g_bonded_channel_state_punc_for_pwrmode called.
Change-Id: I3e5214e9e09ac2a959f6fa7d641173a80a3980a7
CRs-Fixed: 3360820
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
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
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
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
In WoW mode, roam auth event may comes before roam start event, so CM
isn't in ROAMING state at that time, can't assume ROAMING state.
Change-Id: Ibf868db1ca0f9863d4beae4c83227cf04fe55adb
CRs-Fixed: 3357115
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
Roam sync may get aborted on link vdev due to multiple reasons.
Link scan entry being not available at host is one such case.
del_sta response of BSS gets dropped due to stale link-RSO state
and results in disconnect timeout.
Reset the RSO state machine of link vdev when roaming is aborted
to allow cleanup the vdev in next disconnect.
Change-Id: Ie584c5b7ccae989cf2ce64e85da26d1b3526f1e0
CRs-Fixed: 3352543
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 callers are calling the wlan_mlme_get_sap_max_peers() API
to get the max number of peers without initializing the output
parameter.
In case of failure in wlan_mlme_get_sap_max_peers() API,
sap_max_num_peers can have uninitialized value which can lead to
undefined behavior.
To fix this issue, initialize the output parameter before calling
wlan_mlme_get_sap_max_peers()
CRs-Fixed: 3337315
Change-Id: I83ecaf80ccee7d92a66fe561c0a1a7bd409fd64c
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
Remove WMI_PDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD which is sent to
initialize the hardware registers. The initialization of hardware
registers is done as part of WMI_VDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD
Change-Id: I272fbd6723836efb9864cb78bdaf3e0eacf45554
CRs-Fixed: 3329913
In case of ML SAP, userspace needs assoc resp IE to get all
the ML link info.
So, Add support to save assoc_resp ie pointer in peer common object
which will send to userspace.
Change-Id: If19857ecce62092b1aa4e7fef17c09e819822f5f
CRs-Fixed: 3325938
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
This fixes a scheduler_msg CFI failure for function
mlme_wma_vdev_detach_post_cb().
Change-Id: I6271bf9de8d800aac8a804d1daf646063347a71c
CRs-Fixed: 3316558
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
Send WMI_PDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD during PDEV
init with disabled PD-Threshold value to initialize SR related
registers in HW.
Change-Id: I49e73c76974e098b6dfbf647a898b53abf8ea2ba
CRs-Fixed: 3306179
To avoid wma_vdev_detach_callback() is run under interrupt
context, post wma_vdev_detach_callback() to driver scheduler
when vdev delete is failed to send to FW.
Change-Id: I87a603de326789ac43dac34de31eb564f13d11f5
CRs-Fixed: 3308547