mac80211: ath11k: sync with ath-next
[openwrt/staging/wigyori.git] / package / kernel / mac80211 / patches / ath11k / 0027-wifi-ath11k-call-ath11k_mac_fils_discovery-without-c.patch
diff --git a/package/kernel/mac80211/patches/ath11k/0027-wifi-ath11k-call-ath11k_mac_fils_discovery-without-c.patch b/package/kernel/mac80211/patches/ath11k/0027-wifi-ath11k-call-ath11k_mac_fils_discovery-without-c.patch
new file mode 100644 (file)
index 0000000..d233492
--- /dev/null
@@ -0,0 +1,37 @@
+From e149353e6562f3e3246f75dfc4cca6a0cc5b4efc Mon Sep 17 00:00:00 2001
+From: Aloka Dixit <quic_alokad@quicinc.com>
+Date: Mon, 9 Oct 2023 10:13:54 +0300
+Subject: [PATCH] wifi: ath11k: call ath11k_mac_fils_discovery() without
+ condition
+
+Mac80211 does not set flags BSS_CHANGED_FILS_DISCOVERY and
+BSS_CHANGED_UNSOL_BCAST_PROBE_RESP if there are no updates to
+FILS discovery and unsolicited broadcast probe response transmission
+configurations respectively. This results in the transmissions getting
+stopped during BSS change operations which do not include these
+attributes. Remove the checks for the flags and always send the existing
+configuration to firmware.
+
+Tested-on: IPQ8074 hw2.0 AHB WLAN.HK.2.7.0.1-01744-QCAHKSWPL_SILICONZ-1
+
+Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com>
+Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
+Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
+Link: https://lore.kernel.org/r/20231004044915.6817-1-quic_alokad@quicinc.com
+---
+ drivers/net/wireless/ath/ath11k/mac.c | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+--- a/drivers/net/wireless/ath/ath11k/mac.c
++++ b/drivers/net/wireless/ath/ath11k/mac.c
+@@ -3732,9 +3732,7 @@ static void ath11k_mac_op_bss_info_chang
+                                   arvif->vdev_id, ret);
+       }
+-      if (changed & BSS_CHANGED_FILS_DISCOVERY ||
+-          changed & BSS_CHANGED_UNSOL_BCAST_PROBE_RESP)
+-              ath11k_mac_fils_discovery(arvif, info);
++      ath11k_mac_fils_discovery(arvif, info);
+       if (changed & BSS_CHANGED_ARP_FILTER) {
+               ipv4_cnt = min(vif->cfg.arp_addr_cnt, ATH11K_IPV4_MAX_COUNT);