In case supplicant enable's roaming before link vdevs are up
drop the request as once all links are up host will enable RSO.
Change-Id: Iba10b6da7c0d24f6e7b1601eefab1dbee0e3af46
CRs-Fixed: 3429178
The mlme_sap_set_twt_command_in_progress() prototype was added as part
of the following patch:
qcacld-3.0: Add support for SAP TWT teardown
Change-Id I108ea425e69e07ee8a3657ca5afcb436420b2626
However, there isn't an actual implementation of this function, so
remove the unused prototype.
Change-Id: If30d4e53b69c7747d60974c06a91795caffd19c0
CRs-Fixed: 3430387
For mlo roaming, roam sync will be handled on
link vdev/s first and then assoc link vdev.
In case of mlo self roaming, an issue is observed
during peer creation as one already exists on other link.
To solve this all link peers will be deleted
while handling roam synch on first link.
Change-Id: I4d3ff71dd7c8b54f3f06b0147ce23ac8bfe5f49b
CRs-Fixed: 3421698
Notif_param of Roam event ID carries the trigger reason as part
of roam scan start notif. Currently host doesn't read this param.
This commit reads the trigger reason and sends it to user-space
via vendor attribute whenever the roam event vendor command is
enabled.
Change-Id: If9fdbc31df149f4f1c9ca196ee74e2fcb3709a1c
CRs-Fixed: 3161803
As part of commit I6d04f0946e6735613a4cf3d4361bf31052314fa0
a vendor command was added to enable roam stats event.
This change registers callback to send the added vendor
command event to userspace.
Change-Id: I3c504797b1b9619d3e4ecc1c37256dea75127e14
CRs-Fixed: 3403536
The following patch removed all usage of the rx_skip_qdisc_chk_conc
member of struct wlan_dp_psoc_context:
qcacld-3.0: Move TC based dynamic GRO logic to DP component
Change-Id I3c6658e8f19a71e548c77ff6fd637148925008d7
Since this is obsolete, remove it.
Change-Id: I13fbc9dd60466800070c968ec6d89ffa16734b5f
CRs-Fixed: 3427563
Rename enum pmo_wow_action_wakeup_opertion to correct the misspelling
of "operation" in the name. Note that no code actually references the
enum by name, so no other code is affected by this change.
Change-Id: I77a113bed3e74b151945ad228471e1a5d09b9d76
CRs-Fixed: 3427584
eMLSR allows links in MCC mode(e.g. 5 GHz high + 5 GHz high) as
it's listen only till some data is ready from AP. Actual data
transmission may happen only on one link. So, don't disable any
link though those are operating in MCC when eMLSR is enabled.
Change-Id: I12635027dff658a18bc365299769dc5158ad0a33
CRs-Fixed: 3421444
TDLS is not supported on ML STA but it gets enabled
currently when connected with ML AP and TDLS discovery request
is sent to peer devices.
So don't allow TDLS on MLO vdev.
Change-Id: I5bb9e03a0be3f3249aa7af664666a53a67ee812d
CRs-Fixed: 3416206
Currently if the pkt tlvs indicate flow_invalid=0,
there is no sanity done on the SW flow table entry
retrieved using the flow_idx from pkt tlvs.
In case of HW incorrectly sending a invalid flow_idx,
within the range of allowed flow_idx, and flow_invalid=0,
there will be an attempt to aggregate an invalid flow.
This can also trigger a RX ring id mismatch.
In order to mitigate the above issue, verify if the
SW flow table has been populated, before attempting
FISA aggregation.
Change-Id: Idb445c0c5b249d747dbce61f31513ba4a75c26b7
CRs-Fixed: 3412721
Skip the FISA aggregation and drop the frame if the reo destination
indication is zero in the packet TLVs.
Change-Id: I9bd02652bf321202f6b59e6da98fc6959ab93413
CRs-Fixed: 3426355
Currently, on obss color collision detection driver sends bss color
change IE in beacon and updates the color switch count in IE in
every beacon until color switch count reaches 0.
If the wlan driver enters suspend during this updation of bss color
change IE in beacon, the bss color change is not completed until wlan
resumes. This will lead to delay in bss color change after bss color
collision is detected.
To fix this issue, acquire wakelock once obss color collision is
detected and release it once obss color change is completed. This fix
is similar to how CSA is handled currently in driver.
Change-Id: I9c3e7cfe16da116905121b044054c0987afbca09
CRs-Fixed: 3405919
Host driver may abort the roam sync due to multiple reason.
The expectation is to revert the state of vdevs/links to original
state i.e. before receiving the roam sync indication.
Currently, there is a cleanup of vdev MLO bitmap assuming that
roam abort should reset whatever is set as part of roam sync
handling. But these flags might get set in previous connection
and are not supposed to reset upon roam sync abort.
Driver does the disconnection as part of HO_FAIL event handling
and corresponding vdev MLO flags gets cleared as part of that.
So, don't cleanup any vdev flags as part of roam sync abort.
Cleanup wlan_connect_req_links which is set only when roam sync
starts.
Change-Id: I5ca0d789a49fcf954dac332f494650866913f94b
CRs-Fixed: 3418430
Currently in the driver as part of ML unified_ll_get_sta stats,
the peer mac address for partner link is not being updated in
the callback function, causing driver to report incorrect
stats to upper layers.
To fix this issue, update peer mac address before invoking
vdev station stats callback function.
Change-Id: I39c460467a3572aad05e4c5fab136a844b753941
CRs-Fixed: 3421153
One of the parameters to the ucfg_dp_config_direct_link() stub
implementation does not match the associated parameter in the
prototype. The stub and the prototype should match, so modify the
stub to align with the prototype, which matches the non-stub
implementation.
Change-Id: If9dda7db2bfbbce94c0356a73b33ae7569337955
CRs-Fixed: 3424788
wlan_mlme_public_struct.h has some documentation that is not being
processed by kernel-doc since it isn't using the kernel-doc comment
indicator "/**". Fix those comments, and also fix the documentation
syntax errors now reported by kernel-doc.
Change-Id: I407b5abefe8313071e5e99d52d69f181880c431d
CRs-Fixed: 3424372
enum pkt_origin is unused, and is poorly defined so it should not be
used in the future, so remove it.
Change-Id: Ia51ffa4518b36ea50f9ed67007978e228b18c7fc
CRs-Fixed: 3424371
As part of new requirement of 'SAP PS with TWT enabled',
add ini 'g_sap_ps_with_twt_enable' support in host
to enabled/disabled SAP power save with TWT enable.
Change-Id: Iea76f9cdef6f0753a6dfcebedc2aeab17d121faf
CRs-Fixed: 3421610
Add bool flag to mlme_vdev_disconnect_peers legacy callback.
This flag will be used by WIN. MCC should ignore this flag.
Change-Id: I693d1aeda1109a987311c1b87346960bed52309f
CRs-Fixed: 3403218
Support mld self roam between DBS(2 GHz+5/6 GHz) and HBS(5 GHz+6 GHz).
Change high rssi config.
Change-Id: Icb65f26509848a09fe46bf01154a0f42efa073f2
CRs-Fixed: 3416549
3-link ML connection/roaming expects link id to generate link
specific (re)assoc response from received (re)assoc response.
This info is fetched from pe_session but it's not populated
properly in case of roaming. Roam sync indication carries all
links info whereas the assoc rsp generation API expects the
link info for which it has to be generated.
Copy partner link info only from roam sync indication to
pe_session to cater the same.
Change-Id: I75c9a42688f7613ca3f1afab8afe77622bb659aa
CRs-Fixed: 3412939
Firmware sends beacon/probe rsp received to host as part of roam
sync(frame) indication. Frame received frequency is same as
re-association frequency in case of non-ML or single link ML
roaming.
But the ML probe response might come from non-assoc link in case
of multi link roaming. Probe response received frequency and
reassociation frequency are different in such cases. Some
IEs(e.g. HT_INFO) expect frame received frequency to match with
the frequency mentioned in the IE.
So, fetch the probe response received frequency from source
address of the frame and the ml_info of roam sync indication.
Change-Id: Ife96aa46de10d4cd6882e6d04479dfdd481582d4
CRs-Fixed: 3412842
In MLO STA 2.4 GHz + 5 GHz High band and SAP concurrency case,
5 GHz Low band SAP will move to MLO 5 GHz link's home channel for
SCC after MLO STA is up.
But GO starts on 5 GHz high band when SAP CSA is in process and
pass the policy mgr concurrency check because the SAP channel
is still 5 GHz low band.
Fix by defer GO BSS start if any CSA is in progress and also
check any AP start is pending for STA, SAP force SCC concurrency
handling.
Change-Id: I0fcd799017d5048f3574687f913a396ab4d7ade1
CRs-Fixed: 3418351
Currently thermal level can be got from upper layer only
for FW thermal mgmt offload case. Per the requirement,
refine the code to support it for thermal non-offload
case as well.
Similar to offload thermal mitigation, add TX_OFF and
shutdown two states for non-offload case. Host will fully
stop TX traffic in TX_OFF state and target will trigger
shutdown when temperature come to the range of shutdown.
Per above requirement, add below four INI to configure
thermal temperature threshold value as need for TX off
and target shutdown.
gThermalTempMinLevel4
gThermalTempMaxLevel4
gThermalTempMinLevel5
gThermalTempMaxLevel5
Change-Id: I40d097ab8a5801052553ad7adedd38be475c7669
CRs-Fixed: 3413165
Do not pass mode as an argument in policy_mgr_is_vdev_ll_sap().
Use vde_id to get the mode for further condition check.
Change-Id: Ie12c31d4cf536ba6c80f0e28524b4c99c23600d1
CRs-Fixed: 3414277
If the Spatial Reuse parameters change in the beacon
post association, update the new parameters to the
firmware and userspace.
Add a new SR change reason for beacon update. Use this
to update the new SR params to userspace.
Change-Id: I929d8edf7425e6e9494027f6da07a5406d2db123
CRs-Fixed: 3316986
Add a new ini "p2p_go_in_indoor_chan" to enable support
for p2p go operation on indoor channels.
Do not allow standalone SAP on indoor channels if the
SAP indoor channel support is not enabled.
Change-Id: I2e6220ebcefe09b4ad5de496c36879ef048cb5b8
CRs-Fixed: 3405597
DP TXRX module is not cleaned when DP Rx thread init failed
To fix this, when DP Rx thread init fails, free DP TXRX module
as part of failure sequence.
Change-Id: I311b84a76036c8dd1e60b9f8c653fc126e031543
CRs-Fixed: 3413933
Limit num_channels to be less than NUM_CHANNELS to fix potential
out of memory access when calling add_sbs_chlist_to_pcl in the
policy_mgr_get_channel_list.
Change-Id: I58fdbc67b7692c7d1dff5aca6cbd6dc67115a65c
CRs-Fixed: 3416540
If roaming is triggered by source CM_ROAMING_NUD_FAILURE,
then per the INI gEnableNUDTracking to check whether
disconnect current connection or not.
gEnableNUDTracking=2, keeping the connection
gEnableNUDTracking=3, disconnect the connection
Change-Id: I0f321dcf5f3fc1bf7d0c93fa0d70bf4770ccaf35
CRs-Fixed: 3412213
Rename policy_mgr_is_ll_sap_present() into
policy_mgr_is_vdev_ll_sap(). As this api mainly checks
whether the given vdev is ll sap or not
Change-Id: I7f87aceeb0ed6ac5bb7014db1fd6213e62e6305e
CRs-Fixed: 3413644
Handle mlme_vdev_reconfig_notify callback to get notification
after receive the first ML reconfig link removal IE.
Override the delete timer tbtt to 0 to fire the timer early
if timer is less than 1s. This is to avoid host delay of sending
to link inactive command to FW and FW receive deauth before host
inactive link command.
Change-Id: I7865b7942813fd7facf4daa8624c976166814311
CRs-Fixed: 3380147
Handle link removal for ML STA vdev:
Send force link command to target if MLO STA link number > 1.
Select other inactive link to active if possible.
Change-Id: I40567364ad240399caf6be6683b96d17f6a4aab0
CRs-Fixed: 3352849
Currently, while fetching pcl for some vdev id, host driver retrieves
the number of ML connection and provide as max index value for vdev list
and info array. This max index can't be more than
MAX_NUMBER_OF_CONC_CONNECTIONS from functionality perspective.
But static analyzer tool complains that there are chances for out of
bound access of the given arrays while filling the indexes.
So, to fix this, add checks to avoid any such possible out bound access.
Change-Id: I09261e23620df5fc73887c9e5633b408afa66796
CRs-Fixed: 3412348
Extend WMI_ROAM_STATS_EVENTID event information for
requirement of:
1.Roam trigger related information, include timestamp,
trigger reason, trigger condition, abort reason,
scan type, roam status and fail reason.
2.Roam scan related information, include scan channel
number, dwell type, max dwell time of each channel
and total scan time.
3.all types of roam related frame information, include
timestamp and successful or failed status for Preauth,
Reassoc, EAPOL-M1/M2/M3/M4.
Cache roam information in wlan driver, when qca vendor
cmd of QCA_NL80211_VENDOR_SUBCMD_ROAM_STATS get roam
information, driver send all the cached information to
user space.
change-Id: Ic5e1120b51c20c103100833b4296002c5939b021
CRs-Fixed: 3389269
Currently, if Channel change is required via DCS then ACS
is triggered to select the best available channel . In case of
XR SAP optimization, SAP can not come on 2 GHz and frequencies
that can be shared by current SAP frequency on same MAC are
removed from scan list. As result of which frequencies
5/6 GHz in case of DBS and 5 GHz low/5 GHz high + 6 GHz based
on which 5 GHz range is shared with 2 GHz will be disacrded from scan
list. In short Scan can not be triggered on freqeuncies of same MAC
on which SAP is up and can not come in MCC. So, if any other device
mode is up on 2 GHz on other MAC turning on SAP on other MAC can
cause MCC in case of SBS and DBS HW which is not preferred.
Fix is to start SAP on random 6 GHz channel when case CSA is required
due to DCS in case SAP can't come up on 2 GHz and scan can not be
triggered for same MAC on which SAP is enabled i.e ACS optimization
is enabled for XR SAP.
Change-Id: I0cb46a409e3ee04044f7a0b12addec464e87ef7d
CRs-Fixed: 3404097
Add support to configure EMLSR padding delay subfield.
Host should advertise this value in assoc request if
it's greater than the value configured by FW during boot.
Change-Id: Ia9b1e748745278ed502980697f4851f8044db658
CRs-Fixed: 3364158
Currently, if there is a legacy connection and a new STA
connection comes up with EMLSR capability, Host does not
advertise EML caps in assoc request. But there is no support
to enable EMLSR mode if the legacy connection goes away.
Thus, add support to handle this concurrency scenario as
follows
1) Host should advertise EML support capability in assoc
request.
2) After association is complete, force disable one of the
EMLSR links.
3) Once the legacy connection goes down, re-enable the
disabled link.
Change-Id: I5d9f37827e2a9f0571fa9733b4779668bd987f92
CRs-Fixed: 3363115
During OWE roaming if north bound disconnect is received or
link vdev connection fails copied reassoc response is not freed.
Fix is to free the copied reassoc response in the disconnect path.
Change-Id: I19d839b63c774b29ee449635722fae744c7e461d
CRs-Fixed: 3404843
Currently, TDLS STA disconnect notification is not sent during
roam, so WMI_TDLS_SET_STATE_CMDID with disable command is not sent
to firmware. This leads to unexpected behavior in firmware when STA
have migrated to different mac based on new band (2 GHz to 5/6 GHz or
vice-versa) due to roaming, but TDLS STA remain on previous mac.
Firmware expects host to send WMI_TDLS_SET_STATE_CMDID on roam also
so that it can destroy and create new TDLS STA instance and map TDLS
STA to new mac.
To fix above issue, send WMI_TDLS_SET_STATE_CMDID with disable TDLS
state to firmware after driver receives roam sync indication which
leads to destruction of TDLS STA instance in firmware.
Host driver would later send WMI_TDLS_SET_STATE_CMDID with enable TDLS
state(not part of this commit) after successful STA roaming so that
firmware maps TDLS STA with new mac.
This change also removes unused ucfg_tdls_notify_sta_connect() and
ucfg_tdls_notify_sta_disconnect() APIs.
Change-Id: Id680d0f6193740b24e78115ac7dc7be26e28acff
CRs-Fixed: 3388507
For newer AKMs with key materials length greater than
16bytes, kek, kck lengths varies. Therefore, get the
lengths explicitly from firmware and use them for saving
kek and kek materials.
Change-Id: Ie7ae61744e101899f12addc1baf90aed542a367b
CRs-Fixed: 3371470
Refine target_if_ext_twt_evt.c to remove duplicate conditional
checks.
Also fix some code style errors by adding a blank line return to
last return in the API
Change-Id: I759becd864293b8bec35cb54763bdf4b047537c2
CRs-Fixed: 3402852
For low latency SAP, scan is not allowed on same MAC on which
SAP is up. So, consider HOST_CONCURRENT_AP_POLICY_XR when scan
list is required to be updated for low latency ap profile.
Change-Id: I6e25cd67298c16dee211edf6526be101054bd787
CRs-Fixed: 3404641
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
Add support to force enable/disable MLO links in MLSR mode
based on link mac address. The input will be an array of
active link mac addresses. Force enable the links associated
with all the mentioned link addresses and force disable the
links associated with mac addresses that are not given in
the input.
Change-Id: I14660f14ba6381da04460b641f971734c03aa9a7
CRs-Fixed: 3391992
In multilink ML STA, if one link is removed by AP, and no other
active link, trigger roam by roaming invoke command.
Change-Id: I61d9413e2102315b258f946af2193f7cfb7b91aa
CRs-Fixed: 3352870