Enable 4address frame format for the packets to the AP.
Enable MEC check for the sta dp vdev.
A new ini is added to enable WDS feature specifying the
desired WDS mode.
CRs-Fixed: 2889438
Change-Id: I99ccb91adf283a1ed863902ec4b31f1c3e821d32
Remove all of the conditional compilation for pmf since this
feature is mandatory for future scope from protocol point
of view.
Change-Id: Id3a2127e9ecb343ad2a0354dcbc331c22167d7fb
CRs-Fixed: 2852630
Currently multiple ini is available for setting the broadcast
TWT requestor and responder configuration.
Deprecate "bcast_twt" legacy ini and also don't consider
legacy service capability WMI_SERVICE_BROADCAST_TWT.
So below is the service capability values combination
advertised by firmware:
new fw:
bcast_req bcast_resp legacy
0 0 0 -> disable bcast
0 1 0
1 0 0
1 1 1
old fw:
0 0 1 -> enable TWT
Also change the default value of "twt_bcast_req_resp_config" ini
to 1.
Change-Id: Ic9af296b0efffc8f76f647b5830183867e0adf57
CRs-Fixed: 2873360
Update default values of INI items to most commonly used values
in WCNSS_qcom_cfg.ini file on commercial devices.
Change-Id: Ibf1e22406951855a4e726fb8105913a53d3c33ee
CRs-Fixed: 2874758
Fill operational and extended rates in LIM
instead of CSR as part of connection manager.
Change-Id: I9197e835703059d61bc67897a9670ff166460318
CRs-Fixed: 2892415
Don't allow twt statistics or clear statistics command
if twt statistics or clear statistics is in_progress.
As a Fix, reject the new twt statistic or clear statistic
command till existing twt statistic or clear statistic
command completion.
Change-Id: I710a81ae3409f181689b2e4c9e9d4e583d4aadab
CRs-Fixed: 2870592
Host checks if firmware advertises Operating channel validation(OCV)
support bit in service ready then updates OCV flag in wiphy ext feature.
Change-Id: I92f872a07e6f7142e602e6a9e5f5edcecc0aab0b
CRs-Fixed: 2880821
Currently driver fills unicast, multicast & auth mode values from
csr session which is not updated after roaming to AP with different
security profile. This causes incorrect values in AP profile command.
Send correct authmode/unicast and multicast ciphers in AP profile
command to firmware.
Also modify the below 2 ini default values as:
candidate_min_rssi_for_beacon_miss=-75
candidate_min_rssi_for_disconnect=-75
Change-Id: I33cc9f516447071e977768f01738eea7a2ecd99c
CRs-Fixed: 2879943
Currently, TWT setup is allowed after roaming even if
TWT notify from firmware is not received.
Block the TWT setup till notify event is received
from firmware.
Change-Id: Ia6ff8fe9e05f32ddf6dbdd608d9090b612237f26
CRs-Fixed: 2870610
Fill extra params such as join timeout etc. in LIM
for connection manager path.
Change-Id: I3c12e49023ce04c6b8d2f6c41d128ed9fc93a441
CRs-Fixed: 2879094
Move the beacon interval validation logic from the CSR module to the
interface manager module.
Add a path to send events to the SAP event handler from the MLME
module.
Change-Id: Ia86f219b3f209b53e7818a80f95b2c0555550736
CRs-fixed: 2796676
Currently when SAE single pmk lifetime expires, the userspace
issues disconnect. To avoid this, on reaching a threshold value
of the total pmk lifetime, the firmware will clear the single
PMK and initiate a roam scan to perform full SAE and derive
new pmk.
Add changes to:
1. Send the remaining single pmk timeout value in seconds to
firmware.
this is calculated as the diffence in pmk timeout configured by
userspace and the time passed after set_pmksa was done (which is
system timestamp between the set_pmksa timestamp and timestamp at
which RSO command is filled).
2. Add internal roam trigger for SPMK timeout trigger.
3. Set the roam score delta value as 0 for SPMK timeout roam
trigger.
Change-Id: I62c2ddbbfeb2811a4342d41f2bdaa8d988568bcc
CRs-Fixed: 2869665
To make it generic, rename the flag QCA_WIFI_NAPIER_EMULATION
as QCA_WIFI_EMULATION.
Change-Id: I8e654262a38a7a701a5a34e2bbd5394c8985c65a
CRs-Fixed: 2871313
When the TPE IE comes to driver, there could be information for both
local and regulatory. Add an INI for preference in the case that both
sets are present.
Change-Id: I4b37123569f422863fc805063974c65878a9baea
CRs-fixed: 2854774
Add user controlled rx addba request reject for peer AP based
on ini configuration.
Change-Id: I80a4b78c1af77f5bfa68be3163f9e9a78cc64245
CRs-fixed: 2835511
Currently user configured tx aggr size "0-64" is not honored in
firmware, By default firmware expects as 256 and its hardcoded.
In order to make user controllable, host has to send default max
tx aggr size as 256 for lithium and 64 for other targets.
Change-Id: I7a69f09d048f79da4c770e71b4d1c8726fa02faa
CRs-Fixed: 2846803
Add ini 'cfg_tx_iot_aggr', it gives an option to
configure Tx aggregation size in no. of MPDUs/MSDUs
for specified OUI. This can be useful for IOT issues.
Format of the configuration:
cfg_tx_iot_aggr=<OUI-1>,<MSDU-1>,<MPDU-1>,<OUI-2>,<MSDU-2>,<MPDU-2>...
MSDU/MPDU means the max tx aggregation size in no. of MSDUs/MPDUs,
0 means not specified.
For example:
cfg_tx_iot_aggr=112233,2,0,445566,3,32,778899,0,64
If vendor OUI-1("\x11\x22\x33") is found in assoc resp,
set tx amsdu size to 2;
If vendor OUI-2("\x44\x55\x66") is found in assoc resp,
set tx amsdu size to 3, set tx ampdu size to 32;
If vendor OUI-3("\x77\x88\x99") is found in assoc resp,
set tx ampdu size to 64.
Change-Id: Idcf370a4bf93ca299ce1126eaba4394be1ab5b9d
CRs-Fixed: 2849203
Add support to include the session state in TWT status query
response. Session state is set to active once setup is
complete and when resume response event is received from
firmware. Session state is suspend when suspend response
event is received from firmware.
Change-Id: I1f47947c05f80bd85199fd81b951dc54deacdc09
CRs-Fixed: 2854500
Add support to get the following TWT target capabilities
1) Nudge 2) all twt and 3) statistics
Change-Id: If74e99b0ff920481bcabb0300129b9067082d113
CRs-Fixed: 2854927
Don't allow TWT commands back to back till response for
existing command is not received.
Reject the new command till the existing command completion
event is received from firmware. Allow TWT teardown when
any other command is in progress after TWT setup is complete.
Change-Id: I9282230c7cb24691b44ddfd273972272fd80f44b
CRs-Fixed: 2853515
Create TWT context in peer object to store the TWT session
related parameters. Introduce mlme api to get/set various
twt session parameters for the peer.
Block the below commands till TWT setup is complete.
TWT GET
TWT Pause
TWT resume
TWT terminate
Add new files for TWT specific functionality in MLME component:
components/mlme/core/inc/wlan_mlme_twt_api.h
components/mlme/dispatcher/inc/wlan_mlme_twt_public_struct.h
components/mlme/dispatcher/inc/wlan_mlme_twt_ucfg_api.h
components/mlme/core/src/wlan_mlme_twt_api.c
components/mlme/dispatcher/src/wlan_mlme_twt_ucfg_api.c
Also return error to userspace if back to back TWT setup
command is received before TWT setup response is received from
firmware or already TWT setup is complete for given dialog id
Change-Id: I61e24dd41dc9dcb78fdfe33ef8fa0ecb374a4a72
CRs-Fixed: 2847213
Currently in SAP and STA mode the driver advertises TWT
capabilities in the HE capabilities IE based on the below ini
values irrespective of the master ini "enable_twt" to enable
the twt feature:
"he_twt_requestor","he_twt_responder", "he_bcast_twt",
"he_flex_twt_sched".
So even with the ini is disabled, twt capabilities are advertised
Advertise TWT capability only if "enable_twt" ini is true.
Change-Id: Iae3a98ee339f3859391e0deb64ddd354634b0cbf
CRs-Fixed: 2844516
In AP side power off/on case, AP security has been cleanup.
The STA side might still cache PMK ID in driver and it will always
use PMK cache to connect to AP and get continuously connect failure
in SAE security. This function is to detect AP off based on FW
reported BMISS event. Meanwhile judge FW reported last RSSI > roaming
Low rssi and not less than 20db of host cached RSSI to avoid
some false alarm such as normal DUT roll in/out roaming.
Change-Id: I5d8ec9e9d4f8a44178b113d370799fe2bc0373fb
CRs-Fixed: 2841481
wpa_supplicant/framework sends different vendor specific IEs in
connect request. Currently driver is parsing the IEs and appending
specific IEs to the assoc request frame. But all vendor specific
IEs are supposed to be sent in the assoc request. Extract all vendor
specific IEs and append at the end of the frame.
MBO IEs are expected to be present at the end of the frame.
So append rest of the vendor IEs just before MBO IE.
This is a followup change for the change
Ia6423bb43b2ac294541c2485f5ed45d14af6553d to ensure the
"appending vendor IEs to assoc request feature is still intact".
Change-Id: Id788153ceb30c67f7ca9de9f3feea2d610cb21cb
CRs-Fixed: 2851362
The change I3d49c72a31d142ef3b14b439af2ae4cd8be059ea adds support
to append the vendor IEs received from userspace to assoc request.
But this also fixes a memleak in mbo IE handling. It's better split
these two as the feature(appending vendor IEs to assoc request)
may not be needed on all branches but the memleak fix is needed on
all the builds which support MBO.
So, revert this change and raise these as two separate changes.
Change-Id: Ia6423bb43b2ac294541c2485f5ed45d14af6553d
CRs-Fixed: 2851356
Cleanup the struct sCsrNeighborRoamControlInfo and move params in
vdev ext object.
Change-Id: If5a490c68137622838afc831a4da0e1da7fa49c4
CRs-Fixed: 2850991
Add legacy pointer in connection manager context to use for RSO
and other connection manager legacy operations.
Change-Id: Ibc665f53d77aebb3f248fedbdffd1cfe86492b25
CRs-Fixed: 2845980
Enable periodic time sync between host and fw by setting
gRemoveTimeStampSyncCmd to 0.
Change-Id: I52168ad6d065262c433c801716eec0d7782bf6e8
CRs-Fixed: 2845017
Enable 10th bit of CFG_BTM_ENABLE ini to forward BTM request
frame to upper layers when frame contains MBO assoc retry
attribute. when supplicant receives this MBO frame it will
use the frame info for blacklisting the AP so for the next
connection framework will avoid this AP.
Change-Id: I9a675cc01769c38ad5be26ea5fd28ada8dc03546
CRs-Fixed: 2843323
FW considers 9th bit of CFG_BTM_ENABLE for btm query
with candidate list which is not mentioned in ini
documentation.
Change-Id: I4fefdaa464e14c350d885107a28051fa0ad309f0
CRs-Fixed: 2839587
There are cases where only a few TWT roles may be required
to be enabled. For example TWT Requestor role alone or
TWT Respondor role alone. Also, it could be unicast TWT only
and disable broadcast TWT.
Support broadcast TWT configuration in requestor and responder
role by adding new INI.
Extend the use of existing requestor and responder INIs to further
enable requestor and responder roles itself.
Change-Id: I3dfa196edfda9cafd01fa56c0bb6ce73e27b4144
CRs-Fixed: 2828718
The event WMI_ROAM_STATS_EVENTID is received after
every roam, once the roam synch complete is sent by the host.
This event contains details regarding the roam RSSI TH reset.
This helps in debugging/understanding the scenario when roam
failure happens.
Print the info received related to roam RSSI TH reset into kmsg.
Change-Id: Ibee9fc6e9220511d6679efb24080c79bcd807ab8
CRs-Fixed: 2826321
Currently when Adaptive 11R feature is disable via ini
then user space parse Vendor Specific IE and trigger
connection in FT-PSK/EAP based on STA configured key
mgmt, but due to feature disabled via ini it failed
to connect AP and trigger Assoc reject to user space.
To overcome this advertise Adaptive 11R supported feature
bit to user space and based on this feature bit user space
parse, trigger connection in FT-PSK/EAP other wise fallback to
PSK/EAP.
Change-Id: I5d67a0cb77c3f39328467a6313a7a795e6a7a4d8
CRs-Fixed: 2785878
Firmware sends peer create confirmation to detect duplicate peer
on other vdev. If the status field in the
wmi_peer_create_conf_event_fixed_param is 0, peer creation is
successful.
Add support to handle the peer create confirmation command for
sta mode. For roaming scenario, the peer will be internally
created by the firmware, so bail out after creating object
manager peer/datapath peer without sending the peer create
command similar as the current implementation.
For SAP/P2P Go mode the legacy peer create path will be used.
Proceed to do post linkstate change if status is success, else
do vdev stop and indicate failure to upper layers
Change-Id: I0abbd70dd509f2b9afa8d4d7db1774e289d1e021
CRs-Fixed: 2747870
Add new ini "monitor_mode_concurrency" to support this feature
and introduce policy manager api's for concurrency checks.
Change-Id: I35ee1fece0a6f9ae8fe340b0598c4a3e20b17e82
CRs-Fixed: 2814523
Add logic to
- Check if connect req freq is 6Ghz and security
is not allowed for 6Ghz, reject connect.
- Ignore 6Ghz APs if connect req security is invalid
for 6Ghz
Also added user config key_mgmt_mask_6ghz mask
to allow specific AKMs, by default all are allowed.
Add added user config check_6Ghz_security to enable
security checks as per spec.
Change-Id: Iada7bb685b272e26cff7e89cf64d181ed6eb48a4
CRs-Fixed: 2820358
The event WMI_ROAM_STATS_EVENTID is received after
every roam, once the roam synch complete is sent by the host.
This event contains details regarding the btm response.
This helps to debug the scenario when roam failure happen.
Print the info received related to roam scan type & roam status
info into kmsg.
Change-Id: Idd688eb4d1e699573fa1e243873c30ffdc5bf96f
CRs-Fixed: 2794555
Move ini CFG_VENDOR_ROAM_SCORE_ALGORITHM from qcacld-3.0 to qcacmn part.
from qcacld-3.0: mac_ctx->mlme_cfg->roam_scoring
to qcacmn: mlme_psoc_obj->psoc_cfg.score_config.
Change-Id: I318f0d516ce699c061f268116e1cbf79fcc9e23a
CRs-Fixed: 2806090
Move the logic to get HT and VHT caps in LIM from CSR also store
VHT and HT caps in vdev mlme instead of csr session.
Change-Id: I29b8e836a79a4a9eda5088c0eb2e0bf48d616de2
CRs-Fixed: 2807209
INI he_twt_requestor and he_twt_responder should be able to disable/enable
twt requestor and twt responder.
Make them work.
Change-Id: I5e091a2f04cca1817f1a2db6358f141c2eaf103d
CRs-Fixed: 2798800
Host is not enabling WTC_BTM roam trigger via
roam_enable trigger command
(WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID). Because
of this roam scan is not triggered and BTM response is
not sent to AP.
Fix is to enable WTC BTM by default
Change-Id: Ie33f8a298818955c886094d6f703b9603ab5b00e
CRs-Fixed: 2795665
To discard 5G candidates based on RSSI threshold, Introduce
a new INI "min_rssi_for_2g_to_5g_roam" to configure the RSSI
for High RSSI Trigger.
Min: -120
Max: 0
Default: -70
Change-Id: If4545296ef1b53d18b8ae4abf12d450f5e690240
CRs-Fixed: 2789017
Currently, QCA_SETBAND_AUTO is backwards compatible, so it is set
to include only 2G and 5G bands. Update this to include 6G bands
as well. Also update the band capability INI to have the default
value 0 include 6G bands.
Change-Id: I98067c18e939ff4c1e7b1e778b020b44409b5b34
CRs-fixed: 2799883