Add a sanity check to validate the vdev_id returned by firmware
for vdev_summary_stats and vdev_chain_rssi_stats.
CRs-Fixed: 3614088
Change-Id: If2e798459f7069aa5495169dd39b98ad8864b2e4
Currently while extracting vdev extended summary stats, host
checks for number of vdev stats sent by firmware and fails if
the number is greater than WLAN_MAX_MLD. This sanity check will
be false positive, in case of MLO STA + STA/SAP concurrency.
So, to avoid such false positive failures, use WLAN_MAX_VDEVS
to validate number of vdev extended stats sent by firmware.
Change-Id: I067f847ca6c436ff23166e19ecc721e6d95f0294
CRs-Fixed: 3613398
If FW roams with 3-links, assoc beacon and link beacons
are sent by the firmware in roam sync frame event.
However, driver parses the per-sta link info of the
assoc beacon and caches the individual per-link probe
responses only if the link beacon is not present.
Therefore, in 3-link roaming cases, if both assoc link
ML probe response(assoc link + one partner link) and link
probe/beacon are received, then the per-sta profile present
in the ML assoc link probe is not saved to the scan cache
and this leads to bss retrieval failures.
To fix this, parse per-sta profile and generate individual
probe responses directly from the roam sync frame event for
both link and assoc beacon/ML probe responses. This caches
all the partner links individually.
Also, set the assoc state for the standby link bss after the
completion of roam sync processing on assoc vdev. This prevents
the age out of the standby link scan entry.
Change-Id: Ib349aedb826d5037c6015434557d909477e87e5a
CRs-Fixed: 3613058
Currently SET_DISABLE_CHANNEL_LIST command is used to disable
legacy channels only.
Update this command to accept frequency for all the bands along with
the channel numbers from legacy (2.4 GHz/5 GHz).
Change-Id: Id55493acfa115da059404af1cd3901e877e46632
CRs-Fixed: 3601196
Currently the user configured MFP state that comes from the
userspace in connect request is not handled or processed.
Instead the RSN caps from assoc IE of connect request is inter-
sected with AP RSN caps and sent to Firmware using RSO command.
This RSN caps is used in FW in selecting a roam candidate, which
was causing the cross AKM (eg:SAE -> PSK) roam fail.
Hence, use the user configured MFP value in sending the RSN caps
to Firmware.
CRs-Fixed: 3604149
Change-Id: Ibf2d7bfba6cd17a98b9e4b1c8c468046ab2e7e62
Currently, in some API such as
"wlan_cfg80211_tdls_add_peer_mlo", when driver gets vdev, it is
MLO vdev, so it uses WLAN_MLO_MGR_ID ID, but when it tries to put
the vdev, since disconnection happens and mlo flag is cleared,
so it uses WLAN_OSIF_TDLS_ID ID which is non-ML vdev.
This causes release of vdev reference from different id for which
it never takes reference and result in crash.
To fix this, use same debug id throughout function. For that,
generalize the get_ml_vdev API by passing the debug id as
argument to the function.
Change-Id: I903185ec9b64cc67cc2e0c595ba88b7b0ca8ded2
CRs-Fixed: 3603012
If ML STA vdev is in inactive connection table, do not get
the vdev's channel for force SCC check.
Change-Id: I206aa33461f299847b247e97ea0453186c362795
CRs-Fixed: 3609017
Revise the csa parameter for both assoc and partner
links within the context of mlo link information.
Change-Id: I6352ae3343f2f3c4641565a6c2b9c36981bcb821
CRs-Fixed: 3599452
Implement handling of mlo sta standby csa event
and initiate the transmission of a link bss request
command tlv to the firmware for standby link.
Change-Id: I68b8260e716fc4e0fd0f991892f54d0547b6c831
CRs-Fixed: 3605777
Incorporate a validation step for mlo parameter
within the context of the csa event.
Change-Id: I813847fd0c3b460881fe3ab074663c2070d93c75
CRs-Fixed: 3599446
Currently, Host driver is not accounting STA info length within each STA
profile, and the STA control fields lacks the expected sub-element ID
and length structure.
This commit addresses these issues by correcting the STA info length and
adding two additional bytes for the STA control field.
Change-Id: I7e7b464e4f60349246b6e3b1d8a13843bff44142
CRs-Fixed: 3607158
AP context in adapter will have existing beacon data of SAP
which will be created on SAP start BSS. If userspace requests
channel switch before start BSS then trying to access beacon data
in hdd_softap_set_channel_change() API might result in NULL pointer
dereference.
Check if SAP BSS is started on that link info before processing the
channel switch request.
CRs-Fixed: 3612796
Change-Id: I2d6aefb78914450551f59ee445d76da3dda69a16
Certain application, which send small packets with
critical info, are unable to process the FISA aggregated
UDP data.
Skip FISA aggregation for packets with UDP payload length
below 64 bytes.
Change-Id: I878f67688dd2b17cbd92322d8c51aedb4e7a5223
CRs-Fixed: 3613115
Currently measurement duraton is converted to seconds
internally in host which needs to be processed
as provided by AP in ms without any change in units.
Change-Id: I414324d5477f7aecb435c73c8b85a0a26da97e0e
CRs-Fixed: 3609485
is_2g_iface is retrieved from policy_mgr component based on
new and existing connections, where IPA pipe selections are
properly determined.
Change-Id: I90c58f03621a3407e1ab0cfd519562da5069a344
CRs-Fixed: 3599449
During XPAN turn-on, two ACS request will come to driver, first
BT initiate the ACS and then hostapd. This is to get the channel
by BT before actual ACS is triggered. But both req should return
same freq if both are coming within 500ms.
Due to country code setting in hostapd during initial SAP turn
on, it causes 1sec delay to turn on SAP which results two
different ACS results and in some scenario it may take 5secs
also.
To avoid delay in SAP turn on, modify STORED_ACS_FREQ_TIMEOUT
from 500ms to 5sec
Change-Id: I7cac7b557a78faa00c6e97444c7a918b012eadb5
CRs-Fixed: 3607574
Enable the wlan IPA events for P2P GO/CLI mode in default config
file so that qca6490 can support this feature.
Change-Id: I0f79991f5bf93a489e713d05db5d1e1d06e87763
CRs-Fixed: 3598553
This change is one part of patch series to address IPA TX pipe
selection on sdxpinn platform, which is attached with 11BE/WiFi-7
capable chipset. One of the typical user scenarios are the SBS/HBS
configuration supported by the WiFi chipset.
From WLAN point of view, a pipe stands for a pair of TX and TX
completion ring resources. Starting from DBS capable chipset on
SDX platforms, two pipes are allocated for IPA usage, which are the
primary pipe and the alternate pipe. By design, the primary pipe
is used for 5 GHz/6 GHz connection while the alternate pipe is
for 2 GHz connection. Due to different throughput requirements
between two bands and memory saving considerations, two pipes are
initialized with different ring sizes as well as number of buffers
available, where the primary pipe has larger ring sizes as well as
number of TX buffers.
Starting from 11be/WiFi-7 chipset, SBS/HBS features are supported.
Take SAP-SAP concurrencies for instance, SAP1 can be configured to
run with channel 36 on 5 GHz while SAP2 can be configured to run with
channel 149 on 5 GHz or even in the 6 GHz band. With legacy DBS solution,
both SAP1 and SAP2 will use the primary pipe, which in turns TX
starvations are observed on the SAP which has higher phyrate.
To resolve such TX starvation issue, this change is to properly
select TX pipes for interfaces that are possible to be run
on 2 GHz/5 GHz/6 GHz bands but with below considerations being
considered as of the implementation time.
a. 3 home channels are not possible.
b. at same time, only two bands are possible.
c. two 11be SAP concurrencies are not possible.
d. 11be 320 MHz is only possible for single STA or single SAP.
This means that at one time with a maximum of 4 interfaces,
there must be two interfaces with same frequency.
Hence this change properly selects the TX pipe between the
primary pipe and the alternate pipe for all concurrencies that are
supported.
Change-Id: I60453ce0dae5a67f1af9304beeebaab9189c6896
CRs-Fixed: 3599453
During rrm_initialize () set RRM cap for Channel Load
and statistics to enable by default. Same rrm capabilities
driver sends to AP in association request during connection.
Change-Id: I3a9d87b8bd8b28b84ccc3578fff2ad1c7ebd8a6e
CRs-Fixed: 3609838
Currently, driver reports rx rate according to the data
frames received. Driver reports max rx rate if there is
no rx data frame after association or roaming. However,
sometimes driver reports max rx rate for a long time
because of no rx data frame after association or roaming
in some cases. This change uses FW rate instead of max
rate if there is no data frame.
Change-Id: I48721d2ec2607f6bdb86ece0c15b3d51e0032650
CRs-Fixed: 3606163
Currently host driver filters out MCC channels for SAP
mode from the pcl, since LL_LT_SAP can operate in MCC,
so do not filter MCC channels for LL_LT_SAP.
Change-Id: If947a286a97203644b47f41bdb4881e00a25df34
CRs-Fixed: 3609868
The interface information as part of cumulative interface stats is
not updated properly before sending to userspace. So, update it
properly before sending to userspace.
CRs-Fixed: 3612067
Change-Id: Ic2e41d61191cc4ca187ebc94398025c56c5a341c
Active ini he_max_ampdu_len and change default value from 0 to 3.
Use min(ini, he_max_ampdu_len from F/W band/MAC cap) as final
he_config.
Mdm platform need set different value to pass throughput KPI.
Change-Id: Ib0580a0e68b72b6b7cd02d327ba643cfd1508080
CRs-Fixed: 3609154
User may set the ini param g_sta_sap_scc_on_lte_coex_chan=1 if SAP
is allowed to come up on unsafe channels. Currently, this doesn't
cover the below case,
1. SAP is enabled on a 5 GHz channel in a non-DBS platform
2. Concurrent STA enabled and connected it to an AP that's in
unsafe channel.
3. SAP doesn't move to the STA channel though the ini to enable
force SCC(gWlanMccToSccSwitchMode) is set and it's a non-DBS
platform as the target channel(STA channel) is unsafe channel.
Allow SAP to move to unsafe STA channel if the ini
g_sta_sap_scc_on_lte_coex_chan is set to true.
Change-Id: I3e2b8ae57e843a938e4799f473da87664dbabb85
CRs-Fixed: 3609503
The STAUT should have AMSDU support enabled by default and
only be reset if user space requests for it. On contrary,
the testbed STA needs to disable AMSDU support by default.
Currently, a unit test command is being issued to FW via
reset EHT defaults that disables the global AMSDU flag in
FW and without another unit test command, AMSDU is kept
disabled. Remove the unit test command logic as sigma_dut
itself disables AMSDU through cli set command in reset
defaults. For STAUT, a user config is set to true in reset
defaults and cli set command in pre vdev start uses this
flag to enable AMSDU support by default.
Change-Id: If49cb137ac4e0354b68d8d3a1aeceae49c4863aa
CRs-Fixed: 3601076
For BTM certification cases, FW is unable to roam to
testbed AP BSS due to scoring logic. Reset the BTM
abridge flag that is used to enable FW to select
candidates based on score.
Change-Id: I29b6e1b5dea969263eb263103c6d2c10d5047f20
CRs-Fixed: 3591574
Add support to disable MCS 15 tx and rx as part of reset
EHT capabilities. Also, add support to configure full state
BA for buffer size 512.
Change-Id: I314fc7c14330166e5e1daf8a6d423ba66ed21738
CRs-Fixed: 3526185
Currently the default value of gSetBtLowRssiThreshold is -80 for both
mobile and auto platforms. However, it should be -65 for mobile platforms.
This change modifies the default value of gSetBtLowRssiThreshold to -65.
Change-Id: Ib45e63984f8ce3bba0b4ae28c17e2e325e479a50
CRs-Fixed: 3599770
As per the spec, the expectation is that in a given country
if the channel load is requested on a channel not present
in that country, STA should respond with incapable set in
the report.
Fix is to validate channel and op class present in channel
load request before processing channel load rrm request.
Change-Id: I6e282478cd41c9aca8f6c95c2dfde1466b678889
CRs-Fixed: 3603919
Add support to add band info for Neighbor report request,
Neighbor request response, Beacon report request and
Beacon report response logging for MLO usecase.
Band info will indicate the band of the link involved
in MLO connection.
Change-Id: I758be63f085be46244f727a842806fb27660e8dd
CRs-Fixed: 3583958
For SAP mode MCC is not allowed, but some SAP PCL table including SAP
current channel frequency which is allowed in current HW mode, and will
be selected with priority by policy_mgr_get_pref_force_scc_freq(), but
it will lead to MCC with existing non-movable connection.
Fixed by checking whether MCC with exist non-SAP connections and filter
out it from PCL list for SAP mode.
Change-Id: Ifdd1ca347db258aaa183466ecb1b44bbf5f37d0d
CRs-Fixed: 3543336
As per customer requirement, to enable or disable t2lm support
configure CFG_T2LM_NEGOTIATION_SUPPORT as INI.
Change-Id: I8eb4c78a04bbaa5ce0c155d04ddb793d31b092ee
CRs-Fixed: 3608649
At present the RTSCTS profile is only configured for adapter->deflink
vdev in hdd_set_fw_params. Target expects the parameter set on
all vdev of MLO.
Move rtscts configure to hdd_vdev_configure_opmode_params for each
vdev created.
Change-Id: Ida5d5059b40d8ce6ebb01f6486181e86b177ae68
CRs-Fixed: 3608072
Currently if STA connected in 11BE mode, EHT Operation IE is not
getting updated in big data stats.
Add support to update EHT operation info while sending big data
stats to supplicant.
Change-Id: Ib61d69b3b5f2f902d16bdf0feaab450cecb2115b
CRs-Fixed: 3598646