Add callback mlme_vdev_reconfig_notify_standby to cld code to
handle standby link removal.
For standby link, it is going to be removed by AP, so don't
start link removal timer for it. Force inactive it to avoid
link switch to it.
Change-Id: Iae8eebeb2263b0057026c0e80223ef5c6b68a41f
CRs-Fixed: 3640204
Currently in cm_get_cm_ctx_fl, if caller passes NULL vdev as an
argument, then it leads to crash in driver.
To avoid NULL access, add vdev null check.
Change-Id: I37e1d095829b84ee75cc89d8dcf5fbe312c25035
CRs-Fixed: 3632944
Support to send notification from host to user-space to notify
the completion of ML reconfiguration event to bring down a vap.
Change-Id: I35a8895f6de2970af339dd8b82177ce28ca56d95
CRs-Fixed: 3615539
Currently in dp_tx_desc_free for default case
error logs are printed. these logs are not rate limited
which can result in excessive logging.
To fix the issue rate limit the error logs and print
additional information.
CRs-Fixed: 3633307
Change-Id: Ia7beaaac970a098c8c76620077e1f21fedf321ef
During the target recovery avoid mld peer peer deletion
before all the link peers gets deleted.
if peers are deleted during the recovery DP will not receive
peer unmap event as FW is asserted, resulting peers will be
deleted form the mld link peer list where as available in
peer id to obj map. if primary soc goes for the recovery
then mld peer is getting deleted forcefully, where as other
link peer in non primary soc is having reference to mld peer
which is already freed
Change-Id: If4dcd822f4c9bc98757952725592eb6a3f64a5db
CRs-Fixed: 3625483
Add change to initialize all members of the struct, as one of the member
is not updated in the callee function.
Coverity issue fix.
Change-Id: Ic0c2d70fa540fd81ae9094e49c2240ebd9b691b5
CRs-Fixed: 3632788
Add QCA vendor attributes to indicate various MLO capabilities supported
by the WLAN driver to userspace. These capabilities are usually reported
by the firmware during the initial bootup handshake with the driver.
Change-Id: If4b18e0a02623a7983b025e69094a1b8736fb429
CRs-Fixed: 3635733
A warning seen in cfg80211_ch_switch_notify() for the kernel version
5.4.213. The reason is cfg80211_update_current_bss() is called for
kernel version 5.4.0.
To fix this issue, call cfg80211_update_current_bss() for the kernel
version greater than 5.4.0 and less than 6.0.0 kernel.
Change-Id: Ic131bfe3661556b836df6ba7566e8e9abc4deba5
CRs-Fixed: 3637354
Firmware doesn't fill any roam fail reason in roam success case,
which would result in having fail reason value as '0'.
But driver ends up converting the reason '0' to 'unknown'.
So, convert the roam fail reason only in roam fail case.
Change-Id: I0fea2788673e049fd078bcc6200b9612e538ee37
CRs-Fixed: 3632850
Fix compilation error due to missing break statement in
dp_rx_err_handler_rh().
Change-Id: I774c46996f01b6d961488e22791c4935c49db743
CRs-Fixed: 3635098
If LL_LT_SAP is already present and if STA tries to
come up on same mac, then it may result in data loss
on LL_LT_SAP as STA will need ROC on the connection
channel for some time, to avoid these data loss during
STA connection, add logic to switch the bearer for LL_LT_SAP
data to non-wlan and once connection completes, switch back
the bearer to wlan.
Change-Id: Ic44cd77b9b5e569350d697c33260cf5cec3652e0
CRs-Fixed: 3627643
Currently before calling the stats_cbk we do not
check if the vdev has been deleted or not. There is
a case where vdev might be deleted (but not freed due
to pending ref-count) and the osif_vdev will be freed
as a part of the delete sequence. In this case, calling
stats_cbk with dangling pointer to osif_vdev will lead
to an access to memory which has been freed.
To mitigate this issue, check if the vdev has been marked
for deletion, before calling the stats_cbk in tx completion
path.
Change-Id: I32ef68f45f172fc903ab597a62bb4b3e3cb0f574
CRs-Fixed: 3635454
In dp_tx_fast_send_be() fix issue while updating
hlos_tid_override bit in TX descriptor
Change-Id: I470d5140585ad3abefcb1345b52dc0caa3cf6fe4
CRs-Fixed: 3631006
Currently the return status of qdf_nbuf_map_single()
is not checked in dp_tx_ipa_uc_attach(). This change adds
the check to ensure that each nbuf in the TX buff pool,
is successfully mapped before providing the nbuf
to be IPA SMMU mapped.
Change-Id: Ic40479af8f2eaa2ced87b20a25250844e5e146bf
CRs-Fixed: 3629564
Add a cfg set API to configure scan mode for 6 GHz. This is
invoked in reset HE capability API.
Change-Id: If4891036dec3777d85f3584eef965ed65ececadd
CRs-Fixed: 3629445
Free nbuf_clone before returning from dp_tx_mlo_mcast_multipass_send.
Since this API is allocating nbuf_clone, it has the responsibility
of freeing it.
Change-Id: I7a1334a1d941ec352533e788a65596a1b12ae08a
CRs-Fixed: 3628989
In case of UMAC reset if in_use buffers are sufficient
to fill complete RX refill ring we are replenishing
only 1/3rd ring at pre-reset.
In case of low threshold interrupts disabled ring might
be never refilled. At post reset refill complete ring.
Change-Id: I0e4ed942120619ef357bc91f8cbbab8c1fd1b06e
CRs-Fixed: 3628996
Move lithium specific monitor code into monitor 1.0 files.
Donot include 1.0 specific files when CONFIG_LITHIUM is not defined.
Change-Id: I3504052e7d717bb6e26af1b3980c2bb926df9a9b
CRs-Fixed: 3615746
AP sends chan center freq index via Bandwidth Indication OPIE
in channel load request.
Call reg_compute_6g_center_freq_from_cfi API to get corresponding
center freq for 6 GHz and 320 MHz case.
Change-Id: I14bbfe75016e40189388f32fd207d21197bc989b
CRs-Fixed: 3629129
Currently, driver asserts whenever there is a request to
start timer with an expiration limit of less than 10ms. This
assert is unnecessary and driver should gracefully reject the
request. So, remove the assert in qdf_mc_timer_start.
CRs-Fixed: 3631848
Change-Id: Ib7c6297528d5ced3c61e6183ea8e62c12ea9cb0d
Current SAP is unable to support multi-link MLO connection.
To unblock validation we simulate 2-link connection on SAP.
Changes are as follows:
- Add support for multi-link during assoc
- disable security check during assoc
Change-Id: I21b3de2298085d7e6676854a7be68608546ccc6c
CRs-Fixed: 3591638
wdev->current_bss is not updated for a non-assoc link STA vdevs.
As a result, a WARN_ON error is seen in cfg80211_ch_switch_notify()
when it’s called for non-assoc link.
To resolve this, update the wdev->current_bss for non-assoc links
as part of connection and clean up this as part of disconnection.
Change-Id: I5020200fb927dd72d2e1bf0ed73e7a5750897619
CRs-Fixed: 3618438
- correct uint32_t* casting to uint16_t* given that it can overwrite values
after is dereferenced
- correct check for "for loop" max iteration as it could pass and
overwrite max array size.
Change-Id: Id2b02d1eea8c4ce4d962160bea99358fe3ab5cf7
CRs-Fixed: 3622399
In existing host WAR, we set pre_desc to NULL. Due to this
duplicacy across PPDUs is not caught. remove setting prev_desc to
NULL.
Change-Id: Ib2c903eb768fa399c37e9b1d17b661b9ae1c1d2a
CRs-Fixed: 3629867
Update HAL generic APIs for Rhine architecture to set the link
desc address and to get the rbm and cookie info from the rx desc.
Change-Id: I0e9f0553c19508a8404106ada780b37db2e78857
CRs-Fixed: 3631599
This reverts Change-Id: I521b0990fe9e5746a8c8cfb29de7064cf51d0687
(qcacmn: Add fix for encryption fragment ping)
Original change has removed logic to Account for encryption
header size during 802.11 header decapsulation. Which is resulting
in DHCP failure in fragmented DHCP frames, as N/W stack is dropping DHCP
offer due to invalid payload.
Revert back to account for encryption header size during
802.11 header decapsulation
Change-Id: I246e19bf7637d3b66b5d0b3648c76d8765502ac6
CRs-Fixed: 3627678
Handle mlo_grp_id value for rx_reo_release_frames so it cant be
more than WLAN_MAX_MLO_GROUPS
Change-Id: Id6761f125d1ce04d8b10753f86e1d2c1cb30c65e
CRs-Fixed: 3620074
Add check for dereferencing pointer shmem_arena_ctx to avoid
array out of bound error
Change-Id: I4ebc6b9455b8ec2d33790199fd2deec267796dd0
CRs-Fixed: 3620074
Add check for dereferencing pointer shmem_arena_ctx to avoid
array out of bound error
Change-Id: I6d7caddb3ed83fb5e7397de827cd57e8d238a640
CRs-Fixed: 3620074
Adding check for dereferencing pointer shmem_arena_ctx to avoid
array out of bound error
Change-Id: I0aa6682b63e2d2d564b285f7fac745df4b44f1d4
CRs-Fixed: 3620074
During mon_pdev_init RX monitor status buffers will be attached
to status ring. In case of buffer allocation failure HP will be
pointing to null buffer address entry and during ring process
this index slot will be skipped. This will lead to RXDMA accessing
null buffer address descriptor.
Fix this by adjusting the HP of monitor status ring during RX
buffer allocation failures.
Change-Id: I290a724fefc6f65be058a84c97b9e6d51a08ef39
CRs-Fixed: 3268663
This change is to fix modpost issue due to mlo_mgr_get_ap_link_by_link_id
in 6.x compilation.
Change-Id: I2da64fd550f6dbafe87100ca80a280834f1f3f12
CRs-Fixed: 3603454