2 SAP start ACS but different channel range at almost
same time. First SAP selected and started on DFS channel
5260, second SAP select and start on MCC channel of 5180,
policy_mgr_allow_concurrency in
__wlan_hdd_cfg80211_start_ap check fail and abort the second
SAP start because of MCC not allowed for DFS channel SAP.
Refine the logic in API policy_mgr_is_ap_ap_mcc_allow
to cover this case, try to override 2nd SAP channel
to avoid start failure.
Change-Id: Ie483e1fc68f73ce87d14f647ee6fe27b015b5a79
CRs-Fixed: 3512135
Whitelist SSIDs are configured per netdev.
Therefore, move the ssid white list configurations
from psoc level to per vdev level.
Change-Id: Ia555f0c15362099afaae562a2779f7c26c1f4fe5
CRs-Fixed: 3510816
Add vendor command support to configure MLO and EMLSR mode
capability configuration for EHT testbed and DUT STA. It
includes EHT OM control support, EMLSR padding delay
configuration, enabling STR MLMR mode, forcing power save
on active MLO links for a defined number of beacon periods,
forcing active MLO links, and invoking EMLSR mode entry or
exit.
Change-Id: If4fb2c576b789aa2e28d6742a02ebdc01eb6e994
CRs-Fixed: 3507770
Populate assoc link id in join request from scan entry self
link id
Also check if vdev is MLO vdev before copying partner info
to join req from connect request
Change-Id: I0ddff6e4b0b312e94e42977ea472ee94ac6e919e
CRs-Fixed: 3523640
Add support to force power save on all the active MLO links
for a defined number of beacon periods. Force power save
allows the firmware to suspend STA links for X beacon
periods and remain asleep even if the AP advertises TIM as
opposed to regular power save mode where STA links wake up
if the AP indicates that it has buffered data to send.
Change-Id: I98251f84edeebc462703cb2ad7d9ef3f73b460a4
CRs-Fixed: 3507781
During roaming sync, disconnect happens from osif for some reason,
RSO_STOP is dropped for reason
RREASON_DRIVER_DISABLED/REASON_ROAM_STOP_ALL, RSO_DISABLE is sent to
F/W for different reason REASON_DISCONNECTED. RSO_DISABLE happened
without RSO_STOP before, so F/W assert.
To fix it, for disconnect from osif, set RSO_STOP reason as
REASON_DISCONNECTED, same as RSO_DISABLE REASON_DISCONNECTED, then it can
be sent to F/W during roam sync.
Change-Id: Ie0c63bd735a231e61cca1eb7bbc6d785f2860f53
CRs-Fixed: 3520269
Disable BSS color collision detection for the following-
- Testbed STA for all modes
- STAUT if EHT mode is EMLSR.
As part of BSS color collision detection, scan is invoked in
FW after the defined detection period and as part of this,
EMLSR exit happens in the middle of tx/rx. Thus, disable the
capability for EMLSR mode.
Change-Id: I6417f7c081c1408372924b20d8985a597a536e27
CRs-Fixed: 3507796
Currently, driver post NDP end all command on the scheduler but
never release it. This casues timeout in the scheduler and driver
releases the vdev which is never referenced. This causes crash in
driver.
To resolve this issue, release the NDP end all command when NDP
Host Update event received from the firmware.
Change-Id: Iffe4f79b7c131c48cbf2b085d8bbc6e1fb0b5f0a
CRs-Fixed: 3521989
During wlan0 vdev0 roaming, before roam sync received, 2nd sta wlan1
vdev2 connect req came, disabled RSO of vdev0, so vdev0 roam aborted, and
disconnected.
To fix it, serialize roaming disable during connect too, don’t disable
roaming of other connected sta until serialization allowed in
wlan_serialization_activate_cmd ->cm_connect_active
Change-Id: I64eca8bc4de27e0b0afd0af2af3e83f3874fcecd
CRs-Fixed: 3515381
Add check to determine whether FW support multipass
SAP before enabling multipass support
Change-Id: I7db5a7bad6b9ac89c8c4e7c4c177695671402657
CRs-Fixed: 3515310
Currently driver fills join request from cm_vdev_connect request
and cm_vdev_connect request is filled from connect request.
Fill join request directly from cm vdev connect
request and update the vdev connect request from scan entry for
assoc vdev and for link vdev copy populate the connect request
directly from cm_connect request.
Change-Id: I408eb8044e96437558666a1948233a0df30bfd22
CRs-Fixed: 3516716
Update Preamble Puncturing INI parameter "he_rx_pream_punc" to
default which gets from FW.
Also update the cfg HE 2 GHz and 5 GHz capabilities parameters
instead of memcpy.
Change-Id: If424ce4a4fe771a2817677a50a472a2c77529d90
CRs-Fixed: 3515585
For MDM platform, user space don't call ll_stats_get every 3
seconds for station mode, and txpower value will not update.
If we use iw dev to get max tx power value, the value is 0,
and sync with firmware logic, host driver need set valid value
in cmd WMI_VDEV_START_REQUEST_CMDID.
Change-Id: I4a200b3dc517cfc73e90850becd223f7b4a940fb
CRs-Fixed: 3497587
Currently connectivity logging is done for all opmode
but logging should be done only for STA mode.
So to fix the issue add check for opmode and skip
connectivity logging if opmode is not STA
Change-Id: Iae225faa0fb7f141a46979c90ac4c2374f8a8832
CRs-Fixed: 3515363
Set MAX supported BW for STA so that the device can connect
to APs which are advertizing 20 MHz in beacons but increases
in association response and next beacon.
Change-Id: I8ed418382f696c7461235996c4e90201cafafcb3
CRs-Fixed: 3415718
In p2p mode, the connectivity logs were logged.
Modify diag connectivity logging in order to not log in
p2p mode
Change-Id: I540b29cb117e77aea4283e4fec51517827b15378
CRs-Fixed: 3515702
The policy manager API to fetch hardware mode capabilities
from hardware mode index is not using the get EMLSR mode API
and thus throws an error message whenever the device is in
EMLSR mode. This is resulting in excessive logging. Thus,
add the get EMLSR hardware mode check to avoid the flooding
of logs.
Change-Id: I1a84b5038eafde5aa08d2c19c923c61ee6558b45
CRs-Fixed: 3498843
Introduce DP memory profile selection based on H.W
capabilities supported. Based on H.W capabilities
decide kind of memory profile required for DP operations
and select that profile for resource allocation, so that
resource/memory allocation will be done effectively.
Change-Id: Iffbea0cfd9e6b79f0c1ad9526217ba6922f6cdb6
CRs-Fixed: 3504128
Process GET_CU_FOR_EACH_SUB_BW request from the upper
layer in case DUT is connected with a channel width
of 40 MHz and the connected frequency is in the 2 GHz
band.
Change-Id: Idc748f83af72baed946340c61d5c6a0bba1baf00
CRs-Fixed: 3506871
When link removal TBTT expires, indicate the link removal
info to upper layer by vendor event.
Change-Id: Iccc13898f76648bfa2167669c966538d95df5fe3
CRs-Fixed: 3482159
Send configured value of MLO TP preference percentage
via ini mlo_tp_preference_percentage to FW, so that FW
can consider provided value during score calculation
while roaming.
Change-Id: Iac8c82b525f9b37ff6d7eb86df369bd1efb375e3
CRs-Fixed: 3514938
Add support to boost or reduce MLO scoring with
mlo_tp_preference_percentage ini.
Change-Id: I0a1280fe259d9e65e5f0f991d456f650b9d1be69
CRs-Fixed: 3456412
Firmware sends NDP_HOST_UPDATE event as an immediate response to this
request and starts cleaning peers one by one. Once an NDP session is
ended (indicating NDP_END to peer + internal cleanup), firmware sends
NDP_END_IND to host.
Currently, host driver stops the wait timer and change state from NDP
end to disconnected upon receiving the NDP_HOST_UPDATE. But firmware
might still be in the process of NDP cleanup. As the NDP_END_ALL
context is unblocked, driver may send NAN disable request to firmware.
This may cause inconsistency in firmware state machine and firmware may
drop the ongoing NDP_END request. So, peer doesn't get the NDP_END frame
in such cases.
Unblock the NDP_END_ALL-wait call only upon last NDP_END indication to
avoid such issues. This change moves the major functionality of
NDP_HOST_UPDATE processing to last NDP_END indication. Cleanup/remove
the processing of NDP_HOST_UPDATE as it's not needed anymore.
Change-Id: I19d3e40700c1c0501b9c809820262472bf9bdba4
CRs-Fixed: 3512847
Currently, in cm_vdev_join_req, driver does not update the assoc_link_id
when connection is SLO.
Fix is, driver should update the assoc_link_id in case of SLO.
Change-Id: I50e4834b77e87df34327f6825778fc460641afa9
CRs-Fixed: 3509965
In ML-STA + STA concurrency currently, when legacy STA is being
brought up the RSO of existing ML-STA is stopped and not re-enabled
later. Therefore, ML-STA cannot roam after concurrent STA bringup.
Modify the RSO enable logic for ML-STA as follows:
1. All the links should be up.
2. The vdev should be an assoc vdev
3. The if_mgr_enable_roaming should happen on an interface other
than ML-STA links.
The condition-3 prevents enabling RSO for the assoc vdevs when the
link vdev connect complete event is processed.
Change-Id: If86a81b99d18eaa99a25e419c85197d9d0d826ac
CRs-Fixed: 3493333
Add function wlan_mlme_convert_he_op_bw_to_phy_ch_width, check 80+80 or
160 with ccfs0 and ccfs1.
Add 20M/40M check for vht bw with prim chan id and ccfs0.
Change-Id: I01a407358d7c310f92c8a69004ebb002b615438a
CRs-Fixed: 3511291
Previously 4 SAP PCL table only check 3 SAP in DBS mode,
it is not applicable if SBS mode available, for example if SAP1/SAP2
on channel 5805 and SAP3 on channel 5220 in SBS mode, if SAP4 start
on channel 2.4 GHz, it will be rejected.
Move policy_mgr_get_index_for_3_given_freq_dbs() and
policy_mgr_get_index_for_3_given_freq_sbs() out of macro
WLAN_FEATURE_11BE_MLO, so it can be reused by 4 SAP case.
Use above APIs to get common four connection PCL table index
and remove exist four SAP connection PCL index.
Change-Id: I7a8a3e6736feaae139e2c81050f00b2078df371e
CRs-Fixed: 3500354
Crrently there is no logging infra for LL_SAP component.
With this change add logging infra for LL_SAP component.
Change-Id: I66c43493523856efaf23c4f4e79c1e96d0536fba
CRs-Fixed: 3499749
When handle FW roam sync event, reset link id of every vdev in the MLO,
then set correct link id for the vdev according to roam offload sync
indication event. Otherwise link id may be invalid in vdev.
Change-Id: I91b36d154ab3115815211698b6c5237a3bfa1f5f
CRs-Fixed: 3512507
This change creates a new component for low latency SAP
and also does the init and de-init of this new component.
Change-Id: I4a8192feb6edb30b1898ef30675cbc01235a8e42
CRs-Fixed: 3482510
The IOVA for the buffers that are attached to the direct
link receive copy engine need to be contiguous for optimal
memory mapping on ADSP.
Fix is to add multi pages prealloc support for HIF layer
and add a pool entry to multi pages prealloc for direct
link receive copy engine.
Change-Id: Ieb253bd3c1b6550e4c1c63cd587993891ac817f2
CRs-Fixed: 3497689
Log the AP link_id as part of the connect information log which helps
in debugging.
Change-Id: I5244e6c1d2cec905005515078839c0feda721a29
CRs-Fixed: 3508511
Upon the completion of roam sync indication event, the
roam sync complete cmd is first sent to the firmware.
This is followed by the netdev queues enable. This
approach adds latency in the first downstream tx frame,
and the FT roaming KPI is not met due to this latency.
To fix this, if roam sync handling is successful, enable
the queues and then send roam sync complete to the firmware.
It's observed that the current change improves roaming
latency by 6 msec.
Change-Id: Ib05ca01892b6d8b62badcafb64bb8c16270ee9f8
CRs-Fixed: 3483751
After ML STA link state changes, the connection table will
be updated. So defer the force SCC a few second to use
updated table to do force SCC.
Change-Id: I453b1a8d2707bb635f7c1d8d5b397811bf3b4f7b
CRs-Fixed: 3502411
Currently if AP+AP SCC on 5 GHz, next AP prefer on 2.4 GHz,
If SBS mode support, next AP can prefer also on SBS channels
and other MCC/SCC channels.
Change-Id: I3e44fd381527cae24aeff14f9158621f14a278b3
CRs-Fixed: 3499268
Currently roam pcl is updated after roam, connection and CSA.
Pdev current channel list is updated for many other scenarios,
but roam pcl is not modified accordingly.
To address this issue, update roam pcl every time after computing
pdev current channel list.
Change-Id: Ie86d5592255419de8f4040a3206d275ef926cf03
CRs-Fixed: 3481026
Currently host disables 6 GHz band when set_fcc_channel cmd
is received hence existing STA/P2P client 6 GHz connections
get disabled.
Add changes to keep existing STA/P2P client 6 GHz connections
intact and also keep SAP up on 6 GHz if STA+SAP SCC on 6 GHz
channel was present before receiving this command. Disable all
other 6 GHz operations.
Change-Id: I95c094e1b344d430a288b6f613842efe6e576e25
CRs-Fixed: 3495006
Currently the CDP handles like soc/hif/hal_soc are not
available in any of the the DP component contexts.
Modules like FISA etc need these handles.
Store the CDP handles like soc/hif_handle/hal_soc in
the DP component context.
Change-Id: Iaee4d0e15cbaa7d871dc9e246d177ad310b4c6ba
CRs-Fixed: 3505720