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
When SAP is on 5 GHz or 6 GHz channel other than the user
configured frequency due to concurrency and concurrent STA has
disconnected, then SAP doesn't move back to the user configured
frequency when MCC to SCC Switch mode is 4
(QDF_MCC_TO_SCC_SWITCH_WITH_FAVORITE_CHANNEL). SAP has to move
to the user configured frequency irrespective of the current
operating band.
Move the SAP to user configured frequency when SAP is standalone
after STA disconnection.
Change-Id: I3fb78cbd949c0e2ec7c393208569956dbcdd067a
CRs-Fixed: 3509288
Chan width 1 in vht operation means >=80M, while chan width 1 in eht op or
he op means 40M, need be handled in different way.
Change-Id: Ib65dca6245c33f07df351b6ac7eed86f91b372c7
CRs-Fixed: 3506080
Currently the txrx_ops are not saved in the
non-converged datapath.
Store all the txrx_ops in DP component, when
they are registered with the vdev. This can be
used in the DP component to get and use these
ops.
Change-Id: I30bfc69a32e0a9f0ab16f902a94a8c28ef4af8a6
CRs-Fixed: 3505719
On reception of reassoc req from user space to the
connected AP, wlan driver proceeds with reassociation
without clearing the keys. This leads to encrypted EAPOL
frames in LFR2. To avoid this, trigger disconnect & delete
keys before proceeding with reassociation.
Change-Id: Ib287b5d43ae69a7696a28f0e59347c7376d581c3
CRs-Fixed: 3505422
Currently, eMLSR concurrency API considers both the links to
decide whether to allow or disallow the command while
force-enabling links. But one link might have got disabled to
handle some concurrency and might not be present in the
policy mgr table. Driver has to consider the links that are
present in policy mgr to allow/disallow link-enable command
when an eMLSR connection is present along with other concurrency.
Also, user might try to force-enable the disabled link. Allow
that only if eMLSR concurrency is not present.
Change-Id: I0a68059b7d16629016b3c40dbc0345523d46ef21
CRs-Fixed: 3500106
Add support to parse t2lm ie from association response frame
and store in mlo dev context. Once all links are up
the t2lm configuration will be applied.
CRs-Fixed: 3449605
Change-Id: Icd1f3c9bbdfbe1c2a8bfe119d92d6e686e21a7fd
Currently, to switch links from link A to link B, Host sends
two back-to-back WMI commands to FW, by setting link B force
active and link A force inactive respectively with force
mode MLO_LINK_FORCE_MODE_ACTIVE/MLO_LINK_FORCE_MODE_INACTIVE
but if association is in EMLSR mode, FW considers the first
WMI to set link B active (when link A is already set active)
to be a trigger to enter EMLSR mode and sends OMN frame as
part of it. To avoid this, Host has to send a single WMI
with force mode MLO_LINK_FORCE_MODE_ACTIVE_INACTIVE and
include both active and inactive vdev bitmaps within the
same command to clearly indicate the link switch.
Change-Id: Iae58fedc800c891625d737daf238fa476382f4a1
CRs-Fixed: 3487826
Currently, data rate for management tx packets is filled only as
1 or 6 Mbps which is wrong.
Sniffer expect data rate multiple of 2. Hence fill the data rate with
multiple of 2 for tx management packets which received from firmware
and converting into mbps.
Change-Id: I5dd6515804cd3751925af0992a30a7441ebf9bbb
CRs-Fixed: 3444177
Currently, mlo_roam_get_link_freq_from_mac_addr() returns 0 for
non-11BE platforms. Valid freq is present in roam_sync indication
and return the same.
Change-Id: I7156adadae9303257bf96e91e4cb8b5d11706104
CRs-Fixed: 3502610
Currently if hash-based routing fails, packets will be sent
with default routing which will result in packet being queued
to REO2SW1 with tlv reo_dest_indication = 1. Host will create fisa
flow with napi = 0 for REO2SW1.
When next packet received with correct tlv reo_dest_indication value
on different REO with flow_index_invalid = 1 and if tuple matches
with earlier created flow, it can result in REO mismatch issue.
To fix the issue if rx_hash is enabled add check for
tlv reo_dest_indication value.
Change-Id: Ib0895ce666cc788a6df8ae3483e0777e84937ef8
CRs-Fixed: 3500655
Currently OSIF calls the CDP API for DP suspend/resume
handler directly.
Move these calls to DP component so that DP component
can handle the suspend/resume related operations for
internal DP sub-modules (which are outside CDP).
Change-Id: I080809904f619260c707cacbcdbf158250320081
CRs-Fixed: 3502507
Current hw mode is SBS low share. STA 5180, SAP 1 2412,
SAP 2 5745, but SAP 1 is 2 GHz only, can't move to STA 5180,
SAP 2 is SBS with STA, policy_mgr_are_2_freq_on_same_mac
return false for 5745 and 5180 and finally function
policy_mgr_is_restart_sap_required return false, no force
SCC on SAP 2.
Add mcc connection count check for SAP2, if SAP 2 channel
is different from all of existing 2 or more connections, then
try to force SCC on SAP 2.
Change-Id: I7029fd3ec0b8e0ae4543edd9667daa1f87802a7a
CRs-Fixed: 3497431
In wlan_cm_get_associated_ch_width, if vdev is NULL, which means
reference is not gotten. do not call wlan_objmgr_vdev_release_ref.
Otherwise there is QDF ASSERT.
Change-Id: Id1cc2be3869ad555ebeb1c91a4b5f75d499e70ac
CRs-Fixed: 3503877
When roaming from OWE SLO to OWE MLO, host considers it as SLO roaming,
although FW sends both assoc link and partner link information to host.
Currently host adds partner link to sta_ctx->wlan_connected_links in
mlo_roam_update_connected_links, since it already receives partner
link information from FW. Then RSO fails to translate to stop state in
cm_fw_roam_complete because partner link is not up.
To make RSO state translation work, host need add partner link to
sta_ctx->wlan_connected_links when partner link connection is
triggered, which is mlo_roam_prepare_and_send_link_connect_req.
Do not add partner link to sta_ctx->wlan_connected_links in
mlo_roam_update_connected_links.
When roaming from OWE MLO to OWE MLO, host triggers disconnection in
partner link, which should not enable roaming in connected STA.
Change-Id: I99938a0805d60287eb2714e5d271579ac2fb4aeb
CRs-Fixed: 3498822
Current SAP does not support MCC and for low latency SAP,
host driver needs to support MCC.
To support MCC with SAP, add new concurrency mode for low
latency low throughput SAP as PM_LL_LT_SAP_MODE.
CRs-Fixed: 3469425
Change-Id: Ifb4b2db3bf3c2b433324580fde32d1673df5ae67
During the conversion to the Bazel DDK build system the qcacld-3.0
driver was built without the FEATURE_WLAN_RA_FILTERING flag being
set. This resulted in two separate build errors due to incorrectly
testing using #if instead of #ifdef, so fix those tests.
Change-Id: I9265475c1d33918e8fac7fc138e0bfdc301e5eef
CRs-Fixed: 3497220
Currently the CDS layer calls the cdp functions
directly to initialize common DP.
Move these calls to DP component, so that DP
component can handle other DP related initialization
inside the DP component itself.
Change-Id: Ib257ac4f41d468706078cd34a8cbec004a9a622e
CRs-Fixed: 3499726
The number of perf CPU clusters can vary across
different targets. Currently only the second CPU
cluster is considered as the perf cluster, whereas
there can be more than 1 perf clusters.
Fix this perf cluster derivation for interrupt affinity.
Change-Id: Idecc98701e38bd2315846d6500068dcdd8f1309e
CRs-Fixed: 3498023
Remove tdls set state cnt check before sending
fw tdls state update. Fw state updates could be for
multiple vdev's set state cnt check works for only
single vdev.
Change-Id: Id154e623a03e65a99f27360c33b261209ac2e754
CRs-Fixed: 3483291
Currently, if active offload is disabled and ARP offload,
NS offload is enabled from ini host doesn't configure
NS and ARP patterns to fw. This results in frame drop when
device is in RTPM and NS, ARP frame is received as fw
doesn't send WOW wakeup to host.
To address this issue, configure ARP, NS pattern to fw if
active offload is disabled.
Change-Id: Iad54263f7a8a52f0a9ca3c56f9a2e3ccb19ea6c0
CRs-Fixed: 3468310
As per the requirement, add a new Ini CFG_PCIE_CONFIG to
enable or disable externally. This Ini is used to control
pcie generation speed and lane width parameters to max value.
If enabled as of now this Ini makes generation as 3 and lanes
as 2 for pcie.
Change-Id: I96c1a133fa0b22d3b35a229b2fd9ba2904bb3d8f
CRs-Fixed: 3481707
Current code does not enable DRV in unit
test mode. Fix this by setting drv flag
when unit test mode is detected.
Change-Id: I0996860ca6549235aae59459a710f10279a181d5
CRs-Fixed: 3500370
FW drops the management frames received on the inactive link,
so timeout happens on SCS action frames from userspace that are
sent on inactive link.
Set link agnostic flag in all management frame of subtype action
so that FW can send the packet OTA on the active link.
Change-Id: I4677617b52eca3f933aae2c4a7584750a95b3302
CRs-Fixed: 3486974
Populate the user-defined listen interval in association
request frame for STA.
Change-Id: I1733ed1d528fa99fc5556639ddfbd68ca97a40e0
CRs-Fixed: 3438369
The policy manager API to update hardware mode list is
invoked before the host can extract EMLSR capabilities
from the target via service ready extended event. Thus,
invoke the policy manager API again through SBS
frequency update API to set the EMLSR capabilities in
the host.
Change-Id: I4d71b983ddb4b09e2010d24f0af0c26e2077cbd7
CRs-Fixed: 3417254
When ANI_LITTLE_BIT_ENDIAN is not defined, a compiler error is
flagged in the definition of struct mlme_ht_param_info due to a
misplaced #endif, so relocate it.
Change-Id: I72df79a1dfae84c2cd6797d1d112de6ef8ca7ef6
CRs-Fixed: 3498279
SAP 1 is started on 5 GHz 5180, SAP 2 is started on 5 GHz 5745.
ML STA 2 GHz 2437 + 6 GHz 6275 is up. SAP 1 is moved to 2 GHz 2437,
SAP 2 is not moved to 2 GHz 2437 because the SAP2 PCL is PM_SCC_ON_5_CH_5G
which have no 2.4 GHz scc channel. STA+SAP+SAP SCC is allowed
in same mac, but MCC is not supported.
Fix by:
1. Change PCL to include SCC channel in 4th pcl table for SAP/GO.
2. Add API policy_mgr_modify_sap_go_4th_conc_disallow to filter
out the channels which not supported in same mac based on
current concurrency combinations.
Change-Id: Ieb482076d961234d3987b2daebab4c407ee0b7f5
CRs-Fixed: 3479297
When FEATURE_WLAN_MCC_TO_SCC_SWITCH is not enabled, a compilation
error is observed due to the fact that the stub implementation of
policy_mgr_change_sap_channel_with_csa() does not return QDF_STATUS,
so add an appropriate return statement.
Change-Id: I568289cc825adffa3fbcbab2419e093dc5c44cfa
CRs-Fixed: 3498278
Currently center frequency pass to API to check unsafe channel is
not correct set for bandwidth greater than 80 MHz. It lead to
unexpected shrink bandwidth.
For channel bandwidth greater than 80 MHz, center frequency should
set to mhz_freq_seg1 instead of mhz_freq_seg0.
Change-Id: I278590cd128b4760e35f4ea5921a6ed687dc1308
CRs-Fixed: 3466845