On 4/25/2024 1:38 AM, Lingbo Kong wrote: > Currently, when using WCN7850 or QCN9274 as AP, ath12k always performs down > grade phy mode operation regardless of whether the firmware supports EHT > capability or not and then vdev will start in HE mode. When stations that > support EHT capability try to connect to the AP, the AP will set phy mode > to EHT after receiving the association request packet, and then send > WMI_PEER_ASSOC_CMDID command to firmware, AP’s firmware will crash. > > This is because when the ath12k_mac_copy_sband_iftype_data() function > handles EHT capability, it does not copy the EHT capability into the > iftype[band][type] array according to the interface type. So, interface > type should not be used as an index to get eht_cap in > ath12k_mac_check_down_grade_phy_mode() function. > > To address this issue, use types_mask to select the eht_cap in > ath12k_mac_check_down_grade_phy_mode() function. > > This patch affects QCN9274 and WCN7850 because they have the same issue. > > Hostapd log: > wlo1: STA 02:03:7f:37:12:34 IEEE 802.11: Could not set STA to kernel driver > > Kernel log: > [270894.816076] ath12k_pci 0000:03:00.0: failed to send WMI_PEER_SET_PARAM cmd > [270894.816111] ath12k_pci 0000:03:00.0: failed to setup peer SMPS for vdev 0: -108 > [270894.816122] ath12k_pci 0000:03:00.0: Failed to associate station: 02:03:7f:37:12:34 > [270894.843389] ieee80211 phy5: Hardware restart was requested > [270894.843517] ath12k_pci 0000:03:00.0: failed to lookup peer 02:03:7f:37:12:34 on vdev 0 > [270894.843616] ath12k_pci 0000:03:00.0: failed to send WMI_PEER_DELETE cmd > [270894.843650] ath12k_pci 0000:03:00.0: failed to delete peer vdev_id 0 addr 02:03:7f:37:12:34 ret -108 > [270894.843663] ath12k_pci 0000:03:00.0: Failed to delete peer: 02:03:7f:37:12:34 for VDEV: 0 > > Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Lingbo Kong <quic_lingbok@xxxxxxxxxxx> Acked-by: Jeff Johnson <quic_jjohnson@xxxxxxxxxxx>