linux/drivers/net/wireless
Aditya Kumar Singh f8bef3f067 wifi: ath12k: fix handling of 6 GHz rules
commit 64a1ba4072 upstream.

In the US country code, to avoid including 6 GHz rules in the 5 GHz rules
list, the number of 5 GHz rules is set to a default constant value of 4
(REG_US_5G_NUM_REG_RULES). However, if there are more than 4 valid 5 GHz
rules, the current logic will bypass the legitimate 6 GHz rules.

For example, if there are 5 valid 5 GHz rules and 1 valid 6 GHz rule, the
current logic will only consider 4 of the 5 GHz rules, treating the last
valid rule as a 6 GHz rule. Consequently, the actual 6 GHz rule is never
processed, leading to the eventual disabling of 6 GHz channels.

To fix this issue, instead of hardcoding the value to 4, use a helper
function to determine the number of 6 GHz rules present in the 5 GHz rules
list and ignore only those rules.

Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1

Cc: stable@vger.kernel.org
Fixes: d889913205 ("wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices")
Signed-off-by: Aditya Kumar Singh <aditya.kumar.singh@oss.qualcomm.com>
Link: https://patch.msgid.link/20250123-fix_6ghz_rules_handling-v1-1-d734bfa58ff4@oss.qualcomm.com
Signed-off-by: Jeff Johnson <jeff.johnson@oss.qualcomm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-02-21 13:57:17 +01:00
..
admtek wifi: mac80211: add wake_tx_queue callback to drivers 2022-10-10 11:00:03 +02:00
ath wifi: ath12k: fix handling of 6 GHz rules 2025-02-21 13:57:17 +01:00
atmel Fix nomenclature for USB and PCI wireless devices 2023-08-25 12:56:49 +03:00
broadcom wifi: brcmfmac: fix NULL pointer dereference in brcmf_txfinalize() 2025-02-17 09:40:21 +01:00
cisco wifi: airo: avoid uninitialized warning in airo_get_rate() 2023-07-11 19:22:54 -07:00
intel wifi: iwlwifi: avoid memory leak 2025-02-17 09:40:08 +01:00
intersil wifi: p54: Use IRQF_NO_AUTOEN flag in request_irq() 2024-12-09 10:32:00 +01:00
legacy Fix nomenclature for USB and PCI wireless devices 2023-08-25 12:56:49 +03:00
marvell wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_config_scan() 2024-12-09 10:32:04 +01:00
mediatek wifi: mt76: mt7915: add module param to select 5 GHz or 6 GHz on MT7916 2025-02-17 09:40:22 +01:00
microchip wifi: radiotap: Avoid -Wflex-array-member-not-at-end warnings 2024-12-09 10:31:35 +01:00
purelifi wifi: plfxlc: check for allocation failure in plfxlc_usb_wreq_async() 2024-01-25 15:35:19 -08:00
quantenna wifi: qtnfmac: use struct_size and size_sub for payload length 2023-03-13 15:44:29 +02:00
ralink wifi: rt2x00: correct wrong BBP register in RxDCOC calibration 2024-02-05 20:14:18 +00:00
realtek wifi: rtw88: sdio: Fix disconnection after beacon loss 2025-02-17 09:40:22 +01:00
rsi wifi: rsi: rsi_91x_usb_ops: Remove unnecessary (void*) conversions 2023-08-23 14:07:16 +03:00
silabs wifi: wfx: Fix error handling in wfx_core_init() 2024-12-09 10:32:07 +01:00
st wifi: cw1200: Avoid processing an invalid TIM IE 2024-08-29 17:33:24 +02:00
ti wifi: wlcore: fix unbalanced pm_runtime calls 2025-02-08 09:51:57 +01:00
virtual wifi: radiotap: Avoid -Wflex-array-member-not-at-end warnings 2024-12-09 10:31:35 +01:00
zydas Fix nomenclature for USB and PCI wireless devices 2023-08-25 12:56:49 +03:00
Kconfig wifi: move raycs, wl3501 and rndis_wlan to legacy directory 2023-03-13 15:42:14 +02:00
Makefile wifi: move raycs, wl3501 and rndis_wlan to legacy directory 2023-03-13 15:42:14 +02:00