[PATCH ath-next 1/6] wifi: ath10k: usb: fix group key installation

Tomas Paukrt tomaspaukrt at email.cz
Sat Nov 14 01:07:32 PST 2026


ath10k_install_key() waits for install_key_done, which is completed by
the HTT security indication. The firmware of QCA9377 USB devices sends
this indication for pairwise keys only, so the installation of a group
key times out after 3 seconds and a station cannot connect to a
protected network:

  usb 1-1.1: failed to install key for vdev 0 peer c4:93:00:3b:6c:f9: -110
  wlan0: failed to set key (2, ff:ff:ff:ff:ff:ff) to hardware (-110)

The firmware does send WMI_VDEV_INSTALL_KEY_COMPLETE_EVENTID for every
key, so complete the key installation on this event for USB devices.
The other buses are not changed.

Tested-on: QCA9377 hw1.1 USB 0.0.0.111
Signed-off-by: Tomas Paukrt <tomaspaukrt at email.cz>
---
 drivers/net/wireless/ath/ath10k/wmi.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/wireless/ath/ath10k/wmi.c b/drivers/net/wireless/ath/ath10k/wmi.c
index e57588c19c80..7d43a23017aa 100644
--- a/drivers/net/wireless/ath/ath10k/wmi.c
+++ b/drivers/net/wireless/ath/ath10k/wmi.c
@@ -5339,6 +5339,10 @@ void ath10k_wmi_event_vdev_install_key_complete(struct ath10k *ar,
 						struct sk_buff *skb)
 {
 	ath10k_dbg(ar, ATH10K_DBG_WMI, "WMI_VDEV_INSTALL_KEY_COMPLETE_EVENTID\n");
+
+	/* the USB firmware sends no HTT security indication for group keys */
+	if (ar->hif.bus == ATH10K_BUS_USB)
+		complete(&ar->install_key_done);
 }
 
 void ath10k_wmi_event_inst_rssi_stats(struct ath10k *ar, struct sk_buff *skb)
-- 
2.43.0




More information about the ath10k mailing list