Subnet change status field is obtained from bits 4 & 5 of the
roam_reason field in roam synch indication. But in
cm_fill_roam_info() the subnet_change_status is received from
the masked roam reason field and is always 0. So after
roaming to AP with different subnet wrong subnet change
indication is sent to userspace and ultimately NUD failure is
triggered.
Get the subnet_change_status directly from the roam synch
indication
Change-Id: I708276750c0aa3f1586cf9501f55f742d42ebf3f
CRs-Fixed: 3438725
Add support for new TDLS off-channel mode type:
DISABLE_ACTIVE_CHANSWITCH. With this
off channel mode, the TDLS off-channel will be disabled
completely without passive disable mode.
DISABLE_CHANSWITCH -> Passive channel switch can be done i.e if
peer requests channel switch then firmware can do channel switch
DISABLE_ACTIVE_CHANSWITCH -> Disable all off-channel switches.
Add support to send peer channel lists based on concurrency
combination. Override the ini configured frequency to the
supported frequency based on the current concurrency.
Change-Id: Ie3210178eb8b57d6ab126a730ed91895b70edaa1
CRs-Fixed: 3416213
When fast reassoc command is received with bssid
and channel frequency set to zero, if no candidate
found, STA DUT should disconnect.
Currently STA DUT stays on the same AP.
Fix is to add bssid zero check and disconnect from
current AP.
Change-Id: Id6a26703929f7783e852bb42eebd57f5d5ba8b13
CRs-Fixed: 3433308
Currently, policy_mgr_is_ll_sap_present api is used to check if
ll sap is present or not but different operations may be required
for HT and LT LL AP policy example for LT policy i.e gaming/loss
less audio MCC is acceptable but for HT MCC is strictly prohibited.
So, wrapper functions are added to check HT, LT and any AP policy.
Change-Id: I93dbcd65b1a102d0f879366db26f3d2cf01e030e
CRs-Fixed: 3435203
Currently the ini gStaKeepAliveMethod doesn't support
Unsolicited ARP response packets. So, add it.
Change-Id: I614e87e7f173ea5c25c34eaf56de0805d37b26a4
CRs-Fixed: 3433020
Function wlan_cm_is_sta_connected() was removed by the following patch:
qcacld-3.0: Code cleanup for connection manager CSR
Change-Id I156b7ee286f666ee5d660312bf5ba2fe364165c4
However, the prototype was not removed, so remove it now.
Change-Id: Id23f14f1390c72e5f39cef3fbab2eacd6752dc1d
CRs-Fixed: 3430410
The tgt_send_cp_big_data_stats_req() prototype was added by:
qcacld-3.0: Add support for big data stats
Change-Id I3642035d9f25237c80b529da78c51bb1ccf0035a
However a function with that name is not actually present. Instead,
the struct wlan_lmac_if_cp_stats_tx_ops::send_req_big_data_stats()
function pointer is used to send the request.
Since the prototype is unused, remove it.
Change-Id: I1a05c40d2ae639e4b6333362661e9012786a467c
CRs-Fixed: 3430267
Function mlme_vdev_create_send() was removed by the following patch:
qcacld-3.0: Send vdev create to fw from object create notification
Change-Id Ibba02f6b5885d7b3a62529ef51768f520395513e
However the prototype was not removed, so remove it now.
Change-Id: I45e20bc4cb8fb00486208711765625792312ce8b
CRs-Fixed: 3430397
Beacon interval set from the vendor command in packet capture mode
should be greater than connected AP's beacon interval otherwise it
nth beacon value will be calculated as 0. So add a condition to
validate the value of user configured beacon interval before sending
it to firmware. Reject the connected beacon interval configuration in
packet capture mode if its value is not 0 and less than AP's beacon
interval.
Change-Id: I4b90ed239d54c5d59142a7a7b70c65b7df80a469
CRs-Fixed: 3423534
Add variables and APIs in SAP and SME to change CSA count
for SAP / GO.
Currently the default CSA count is 10, this API allows
to reduce the CSA count if required as per the requirements
Change-Id: I17c101cd0c809f49d57d2aaf87fc37d90b92ea1f
CRs-Fixed: 3431384
Currently if 2 frequencies are in SCC then, SCC is added in
policy manager current concurrency dump but in case frequencies
are MCC then hardware mode is considered instead of MCC.
Fix is to add MCC instead of hw mode if frequencies are on same
Mac but not same.
Change-Id: If0fc20f5ed6efae881fbb96b9d5b42dfd95027a3
CRs-Fixed: 3421278
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