For MLO vdev currently the discovery attempts threshold is
multiplied by 2 to increase the discovery window thereby
increasing the discovery probability in noisy environmental
conditions. But 5 discovery attempts on each link is
sufficient threshold. Increased discovery attempts causes TP
issues with peer connected to different AP for MLO vdev since
frequent link active/inactive change happens.
So remove the discovery attempt multiplier for MLO TDLS vdev.
Enhance few debug logs.
CRs-Fixed: 3702198
Change-Id: If5513987447296140788c1ee021329dc721df65f
Currently vdev_id in mac_ctx->sap.sapCtxList[vdev_id] is check against
WLAN_UMAC_VDEV_ID_MAX(255), but sapCtxList[] array size is
SAP_MAX_NUM_SESSION(5), so change to check against max sap context
array size.
Change-Id: Id8370512194e6585c9e305b2c5a896e6d7bdbe0b
CRs-Fixed: 3671591
Any MLD peer setup call to cdp shall happen only after
clearing the existing MLD peer otherwise the MLD peer's
VDEV reference is lost on recreation. This leads to
VDEV reference leak.
Add history to track the peer setup and destroy sequence,
to understand the CP peer create/destroy sequence when
any such leak happens.
Change-Id: If338bc26e086490a3cc2bb4de32efa6a762ee0e6
CRs-Fixed: 3736548
Add new APIs to save number of links to which FW roamed
and add new API to retrieve this saved info.
Change-Id: Idfd8727855bd5da97a3808c78e89a505ef06c249
CRs-Fixed: 3755754
Currently, firmware-reported unsafe channels are ignored
and userspace configured channels are honored when
coex_unsafe_chan_nb_user_prefer ini is set. This is supported for
SAP mode only.
But some platforms may want driver to ignore the firmware-
reported coex channels for P2P-GO also.
Enhance the ini to allow user to configure mode specific
bit as mentioned below,
BIT 0: Don't honor fw coex/unsafe channel info for SAP mode
BIT 1: Don't honor fw coex/unsafe channel info for P2P-GO mode
Change-Id: I91a2c6b2da9aba411d081f6ae3b23d374fe53159
CRs-Fixed: 3766393
In lim_process_addba_req(), the aggregation size is filled based
on the pe_session capability. But in case of TDLS the negotiated
session capability can be higher than the AP capability. So
when we are connected to lower capable AP (ex: 11b/g)and TDLS
happens on higher capability(11ax), then the aggregation size
is also having lower capabiltiy based value. This causes reduced
throughput.
So if peer is a TDLS peer, then don't check the pe_session
capability which is filled based on the connected AP capability.
Change-Id: I4ab6075102cb9495f62d790cd48f1c3b0e51cdc3
CRs-Fixed: 3708986
Currently, Host driver is rejecting force scc on non DBS
solution when QDF_MCC_TO_SCC_WITH_PREFERRED_BAND is set.
This change is to allow STA + SAP concurrency on non DBS solution.
CRs-Fixed: 3716279
Change-Id: Ief73a57d23f627764eca00254acf4cf7e9acd963
Currently if AP is advertising PSD power in TPE IE
host is parsing and storing the PSD power info, but
during TPC calculation it doesn't use AP advertised
PSD power and configures local regulatory PSD power
to FW. This is incorrect if AP advertised PSD power
is lesser than local regulatory TX power.
To address this issue, take min of local regulatory
PSD power and AP advertised PSD power.
Change-Id: I6682f3e3f19ffa65a2bc4593b3d04722fa625999
CRs-Fixed: 3757711
If for any reason EHT capability of peer is not properly
parsed from (re)assoc request but MLO IE is proper, the
creation of peer is happening as MLO without EHT capability.
Also in the assoc response frame, the EHT CAP and EHT OP IEs
are filled based on SAP EHT capability but not considering
the peer's EHT capability. This can lead to memory overflow.
Always determine that peer is EHT capable before checking for
MLO capability.
Change-Id: I46fa97610ed6252d48b9d52721fa307ed01b388f
CRs-Fixed: 3752411
Expectation is on every commit/confirm request
from supplicant, host should start SAE retry
timer and, on every commit/confirm response
from AP, host should stop SAE retry timer.
But currently while processing SAE confirm
confirmation from AP, host fails to stop timer
for roamed VDEV. This results to SAE retry timer
timeout.
Fix is to stop SAE retry timer while processing
SAE confirm confirmation from AP for roamed VDEV.
Change-Id: Idfb8e8d5271b5c1c9f37b06ba3fa178ee69b4130
CRs-Fixed: 3752963
Host update “UL MU-MIMO” bit as HE cap in assoc request
based on below 2 things:
1. "enable_ul_mimo" INI
2. FW capability WMI_HECAP_PHY_ULMUMIMOOFDMA_GET
Fix is to overwrite he_cap->ul_mu feature in assoc request
configured via above FW capability with value of ini
"enable_ul_mimo".
Change-Id: I6ede13ec107a194f11a094ccd954155e859c02ec
CRs-Fixed: 3750038
Currently TDLS module acquires WIFI_POWER_EVENT_WAKELOCK_TDLS
wakelock and prevents run time suspend when TDLS is enabled for
a peer. While releasing the wakelock and allowing suspend, it
checks for the connected peer count in tdls_update_pmo_status().
But the peer count is not decremented here yet.
Below is the current call sequence:
tdls_disable_offchan_and_teardown_links()
-> 1. Call tdls_reset_peer() -> this calls
tdls_set_peer_link_status() ->
tdls_update_pmo_status()
-> 2. tdls_decrement_peer_count() - Sets the
connected peer count to 0
Update the sequence as below:
call tdls_decrement_peer_count() first and then call
tdls_reset_peer().
CRs-Fixed: 3735021
Change-Id: Idf91a0c96c9660df466143f8ac115f694b3070d2
Whenever the driver link state command is issued the system
could be in or entering the RTPM suspend/resume, The current timeout
of driver link state command is only 800msec which could not be enough
for the RTPM suspend/resume sequence to complete.
Increase the link state command timeout value to account for RTPM
suspend/resume sequence.
Change-Id: Ieced72ae330e9820c6ba1f4fb874d4b600c18656
CRs-Fixed: 3730449
HW is non-DBS. SAP is UP in 6 GHz. Now, when a STA connection is
attempted, the pcl for the second connection would have SAP SCC
channel with highest priority, all the 5 GHz channels with 2nd
highest priority and the 6 GHz channels with least priority.
Therefore, even if there is a strong 6 GHz candidate for STA, the
5 GHz candidate would be chosen and the SAP moves to SCC in 5 GHz.
To fix this, ignore the pcl scoring for the non-DBS concurrency
cases as the SAP can move to the channel of the best STA interface.
If the SAP is in legacy band, and if still a 6 GHz STA is chosen,
then the legacy SAP would be torn down. So, give STA the best
possible in non-DBS case.
Change-Id: If268b61c61e77db96b499437cdbc95188240fba8
CRs-Fixed: 3749399
Currently STA+Mon mode is not supported in LPC case
as both mode uses monitor interface to capture
packets. So to distinguish between two different
monitor modes export new API to store monitor interface flags
Change-Id: I463353a1a01f53d48e004f60c52c24f1d8084154
CRs-Fixed: 3739289
Currently STA+Mon mode is not supported in LPC case
as both mode uses monitor interface to capture
packets. So to distinguish between two different
monitor modes.
Add changes to distinguish between two different
monitor mode based upon monitor flags bit.
Change-Id: If916b777fb0c3247c3dd2b8561001d1e2a59a4e6
CRs-Fixed: 3739285
As per new requirement, If DUT associates with an AP does
not support BTM then when host receives BTM req frame
from FW. Instead of forwarding the BTM req frame to
supplicant, host should drop it.
Change-Id: Ie6b6c27c01b072fac19dc039327cb9a86370b535
CRs-Fixed: 3746758
Peer mac is filled from struct wlan_cm_vdev_discon_req, which
can be 0 or previous AP in case of roaming.
While handling disconnect the bssid and peer mac needs to be copied
from pe session for STA mode to avoid this mismatch and thus
disconnect failure.
Peer mac updating from pe session was missed, so to fix the issue
populate the peer mac from pe session.
Change-Id: If0598791887fb6fe46fe6ea238320876f6f57fa9
CRs-Fixed: 3708294
In wlan_mlo_parse_t2lm_info, there are no length checks on
the various optional TID-to-link mapping IE elements which
can lead to out-of-bound reads.
This change is to prevent out of bond reads by checking
the length of t2lm_ie->elem_len.
CRs-Fixed: 3704762
Change-Id: Ia31153882a670ea909fc3cac1f5a2e2252fa76ee
For Dual SAP(legacy SAP + 6 GHz SAP), WFA HE-4.1.1 cert
case requires the following:
a) If Dual SAP is enabled, the 6 GHz SSID should be
discovered via the RNR IE of the colocated legacy SAP.
b) If a co-located neighbor is present, the 6 GHz SAP
should not send FD or unsolicited probe responses.
Add support for the above the cert case by configuring the
FD support for the 6 GHz SAP based on the operation of the
co-located SAP.
Change-Id: I045911cd34bceccdb08248ae7b99beb8454a2c98
CRs-Fixed: 3732649