Skip to content

Commit dd2aee0

Browse files
Realzhqmiaoqing-quic
authored andcommitted
FROMLIST: wifi: ath11k: Fix failure to connect to a 6 GHz AP
STA fails to connect to a 6 GHz AP with the following errors: ath11k_pci 0000:01:00.0: failed to handle chan list with power type 1 wlp1s0: deauthenticating from c8:a3:e8:dd:41:e3 by local choice (Reason: 3=DEAUTH_LEAVING) ath11k_reg_handle_chan_list() treats the update as redundant and returns -EINVAL. That causes the connection attempt to fail. Avoid unnecessary validation during association. Apply the regulatory redundant check only when the power type is IEEE80211_REG_UNSET_AP, which only occurs during core initialization. Tested-on: WCN6855 hw2.1 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.41 Signed-off-by: Qian Zhang <[email protected]> Reviewed-by: Baochen Qiang <[email protected]> Link: https://lore.kernel.org/all/[email protected]/
1 parent 2b189c5 commit dd2aee0

File tree

1 file changed

+6
-3
lines changed
  • drivers/net/wireless/ath/ath11k

1 file changed

+6
-3
lines changed

drivers/net/wireless/ath/ath11k/reg.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// SPDX-License-Identifier: BSD-3-Clause-Clear
22
/*
33
* Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
4-
* Copyright (c) 2021-2025 Qualcomm Innovation Center, Inc. All rights reserved.
4+
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
55
*/
66
#include <linux/rtnetlink.h>
77

@@ -926,8 +926,11 @@ int ath11k_reg_handle_chan_list(struct ath11k_base *ab,
926926
*/
927927
if (ab->default_regd[pdev_idx] && !ab->new_regd[pdev_idx] &&
928928
!memcmp((char *)ab->default_regd[pdev_idx]->alpha2,
929-
(char *)reg_info->alpha2, 2))
930-
goto retfail;
929+
(char *)reg_info->alpha2, 2) &&
930+
power_type == IEEE80211_REG_UNSET_AP) {
931+
ath11k_reg_reset_info(reg_info);
932+
return 0;
933+
}
931934

932935
/* Intersect new rules with default regd if a new country setting was
933936
* requested, i.e a default regd was already set during initialization

0 commit comments

Comments
 (0)