From c0ef213d0aae66143743055fccdee22440762fec Mon Sep 17 00:00:00 2001 From: Sriram R Date: Fri, 24 Mar 2023 22:43:43 +0530 Subject: [PATCH 1/2] ath11k: Fix missing duplicate beacons in PSC channels When an 6GHz AP is brought up in a non PSC channels, duplicate beacons and FD/Probe response are sent in remaining 20MHz channels (including PSC channels) to aid the clients in faster scanning of the AP. Currently, these duplicate beacons are not transmitted by FW due to misconfiguration of the Tx vdev flag in vdev start. FW expects VDEV_FLAGS_TRANSMIT_AP mbssid flag in vdev start by default for a 6GHz AP irrespective of single or multi bssid case since a 6GHz AP is expected to be MBSS capable. Hence set VDEV_FLAGS_TRANSMIT_AP in mbssid flags arg of Vdev start WMI command. Signed-off-by: Sriram R --- drivers/net/wireless/ath/ath11k/mac.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) --- a/drivers/net/wireless/ath/ath11k/mac.c +++ b/drivers/net/wireless/ath/ath11k/mac.c @@ -7828,7 +7828,15 @@ static int ath11k_mac_setup_vdev_params_ *tx_vdev_id = 0; tx_vif = arvif->vif->bss_conf.mbssid_tx_vif; if (!tx_vif) { - *flags = WMI_HOST_VDEV_FLAGS_NON_MBSSID_AP; + /* Since a 6GHz AP is MBSS capable by default, FW expects + * Tx vdev flag to be set even in case of single bss case + * WMI_HOST_VDEV_FLAGS_NON_MBSSID_AP is to be used for non 6GHz + * cases + */ + if (ar->supports_6ghz && arvif->vif->type == NL80211_IFTYPE_AP) + *flags = WMI_HOST_VDEV_FLAGS_TRANSMIT_AP; + else + *flags = WMI_HOST_VDEV_FLAGS_NON_MBSSID_AP; return 0; }