[PATCH ath-next 3/5] wifi: ath11k: leave OBSS PD off when spatial reuse is not configured
From: Andrei-Alexandru Bleortu
Date: Sun Oct 04 2026 - 07:22:00 EST
mac80211 reports BSS_CHANGED_HE_OBSS_PD when an HE AP starts even if
user space configured no spatial reuse parameters, with he_obss_pd
.enable false. ath11k ignored the flag and, with an empty SR Control,
enabled non-SRG OBSS PD at its default maximum threshold of -62 dBm,
where IEEE Std 802.11-2024, 26.10.2.4 puts the non-SRG OBSS PD maximum
at -82 dBm plus an offset that the AP did not advertise.
Disable OBSS PD unless it is enabled, as ath12k does.
Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.9.0.1-02146-QCAHKSWPL_SILICONZ-1
Assisted-by: LLM
Signed-off-by: Andrei-Alexandru Bleortu <me@xxxxxxxxxxxx>
---
drivers/net/wireless/ath/ath11k/mac.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/ath/ath11k/mac.c b/drivers/net/wireless/ath/ath11k/mac.c
index c1fa42edd3..a10d191b1a 100644
--- a/drivers/net/wireless/ath/ath11k/mac.c
+++ b/drivers/net/wireless/ath/ath11k/mac.c
@@ -3373,7 +3373,8 @@ static int ath11k_mac_config_obss_pd(struct ath11k *ar,
/* Set and enable SRG/non-SRG OBSS PD Threshold */
param_id = WMI_PDEV_PARAM_SET_CMD_OBSS_PD_THRESHOLD;
- if (test_bit(ATH11K_FLAG_MONITOR_STARTED, &ar->monitor_flags)) {
+ if (test_bit(ATH11K_FLAG_MONITOR_STARTED, &ar->monitor_flags) ||
+ !he_obss_pd->enable) {
ret = ath11k_wmi_pdev_set_param(ar, param_id, 0, pdev_id);
if (ret)
ath11k_warn(ar->ab,
--
2.47.3