diff mbox series

ath11k: fix registration of 6Ghz-only phy without the full channel range

Message ID 20230421145445.2612280-1-mbizon@freebox.fr (mailing list archive)
State Accepted
Commit e2ceb1de2f83aafd8003f0b72dfd4b7441e97d14
Delegated to: Kalle Valo
Headers show
Series ath11k: fix registration of 6Ghz-only phy without the full channel range | expand

Commit Message

Maxime Bizon April 21, 2023, 2:54 p.m. UTC
Because of what seems to be a typo, a 6Ghz-only phy for which the BDF
does not allow the 7115Mhz channel will fail to register:

  WARNING: CPU: 2 PID: 106 at net/wireless/core.c:907 wiphy_register+0x914/0x954
  Modules linked in: ath11k_pci sbsa_gwdt
  CPU: 2 PID: 106 Comm: kworker/u8:5 Not tainted 6.3.0-rc7-next-20230418-00549-g1e096a17625a-dirty #9
  Hardware name: Freebox V7R Board (DT)
  Workqueue: ath11k_qmi_driver_event ath11k_qmi_driver_event_work
  pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
  pc : wiphy_register+0x914/0x954
  lr : ieee80211_register_hw+0x67c/0xc10
  sp : ffffff800b123aa0
  x29: ffffff800b123aa0 x28: 0000000000000000 x27: 0000000000000000
  x26: 0000000000000000 x25: 0000000000000006 x24: ffffffc008d51418
  x23: ffffffc008cb0838 x22: ffffff80176c2460 x21: 0000000000000168
  x20: ffffff80176c0000 x19: ffffff80176c03e0 x18: 0000000000000014
  x17: 00000000cbef338c x16: 00000000d2a26f21 x15: 00000000ad6bb85f
  x14: 0000000000000020 x13: 0000000000000020 x12: 00000000ffffffbd
  x11: 0000000000000208 x10: 00000000fffffdf7 x9 : ffffffc009394718
  x8 : ffffff80176c0528 x7 : 000000007fffffff x6 : 0000000000000006
  x5 : 0000000000000005 x4 : ffffff800b304284 x3 : ffffff800b304284
  x2 : ffffff800b304d98 x1 : 0000000000000000 x0 : 0000000000000000
  Call trace:
   wiphy_register+0x914/0x954
   ieee80211_register_hw+0x67c/0xc10
   ath11k_mac_register+0x7c4/0xe10
   ath11k_core_qmi_firmware_ready+0x1f4/0x570
   ath11k_qmi_driver_event_work+0x198/0x590
   process_one_work+0x1b8/0x328
   worker_thread+0x6c/0x414
   kthread+0x100/0x104
   ret_from_fork+0x10/0x20
  ---[ end trace 0000000000000000 ]---
  ath11k_pci 0002:01:00.0: ieee80211 registration failed: -22
  ath11k_pci 0002:01:00.0: failed register the radio with mac80211: -22
  ath11k_pci 0002:01:00.0: failed to create pdev core: -22

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
---
 drivers/net/wireless/ath/ath11k/mac.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Kalle Valo April 28, 2023, 4:59 p.m. UTC | #1
Maxime Bizon <mbizon@freebox.fr> wrote:

> Because of what seems to be a typo, a 6Ghz-only phy for which the BDF
> does not allow the 7115Mhz channel will fail to register:
> 
>   WARNING: CPU: 2 PID: 106 at net/wireless/core.c:907 wiphy_register+0x914/0x954
>   Modules linked in: ath11k_pci sbsa_gwdt
>   CPU: 2 PID: 106 Comm: kworker/u8:5 Not tainted 6.3.0-rc7-next-20230418-00549-g1e096a17625a-dirty #9
>   Hardware name: Freebox V7R Board (DT)
>   Workqueue: ath11k_qmi_driver_event ath11k_qmi_driver_event_work
>   pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
>   pc : wiphy_register+0x914/0x954
>   lr : ieee80211_register_hw+0x67c/0xc10
>   sp : ffffff800b123aa0
>   x29: ffffff800b123aa0 x28: 0000000000000000 x27: 0000000000000000
>   x26: 0000000000000000 x25: 0000000000000006 x24: ffffffc008d51418
>   x23: ffffffc008cb0838 x22: ffffff80176c2460 x21: 0000000000000168
>   x20: ffffff80176c0000 x19: ffffff80176c03e0 x18: 0000000000000014
>   x17: 00000000cbef338c x16: 00000000d2a26f21 x15: 00000000ad6bb85f
>   x14: 0000000000000020 x13: 0000000000000020 x12: 00000000ffffffbd
>   x11: 0000000000000208 x10: 00000000fffffdf7 x9 : ffffffc009394718
>   x8 : ffffff80176c0528 x7 : 000000007fffffff x6 : 0000000000000006
>   x5 : 0000000000000005 x4 : ffffff800b304284 x3 : ffffff800b304284
>   x2 : ffffff800b304d98 x1 : 0000000000000000 x0 : 0000000000000000
>   Call trace:
>    wiphy_register+0x914/0x954
>    ieee80211_register_hw+0x67c/0xc10
>    ath11k_mac_register+0x7c4/0xe10
>    ath11k_core_qmi_firmware_ready+0x1f4/0x570
>    ath11k_qmi_driver_event_work+0x198/0x590
>    process_one_work+0x1b8/0x328
>    worker_thread+0x6c/0x414
>    kthread+0x100/0x104
>    ret_from_fork+0x10/0x20
>   ---[ end trace 0000000000000000 ]---
>   ath11k_pci 0002:01:00.0: ieee80211 registration failed: -22
>   ath11k_pci 0002:01:00.0: failed register the radio with mac80211: -22
>   ath11k_pci 0002:01:00.0: failed to create pdev core: -22
> 
> Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
> Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>

Patch applied to ath-next branch of ath.git, thanks.

e2ceb1de2f83 wifi: ath11k: fix registration of 6Ghz-only phy without the full channel range
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath11k/mac.c b/drivers/net/wireless/ath/ath11k/mac.c
index 110a38cce0a7..850ef35c1f75 100644
--- a/drivers/net/wireless/ath/ath11k/mac.c
+++ b/drivers/net/wireless/ath/ath11k/mac.c
@@ -8778,7 +8778,7 @@  static int ath11k_mac_setup_channels_rates(struct ath11k *ar,
 	}
 
 	if (supported_bands & WMI_HOST_WLAN_5G_CAP) {
-		if (reg_cap->high_5ghz_chan >= ATH11K_MAX_6G_FREQ) {
+		if (reg_cap->high_5ghz_chan >= ATH11K_MIN_6G_FREQ) {
 			channels = kmemdup(ath11k_6ghz_channels,
 					   sizeof(ath11k_6ghz_channels), GFP_KERNEL);
 			if (!channels) {