[PATCH ath-next 1/6] wifi: ath10k: usb: fix group key installation
David Heidelberg
david at ixit.cz
Sat Nov 14 14:41:32 PST 2026
On 14/11/2026 22:49, Felix Kaechele wrote:
> Hi there,
>
> looks like another take on David's patch here: https://lore.kernel.org/
> ath10k/20260918-ath10k-del-v1-1-53cd7a7d682b at ixit.cz/
>
> Given that this affects a few devices (not just the USB one mentioned here) a
> more generic fix would probably be in order. I'm also seeing this on QCA9379 SDIO.
>
> Regards,
> Felix
>
> On 2026-11-14 04:07, Tomas Paukrt wrote:
>> 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)
Hello.
I'm pretty sure it's not related to the USB bus, but related to the device firmware.
Check what firmware you use, add the `.no_pairwise_key_del_ind = true` and
report if that solves your issue, I'm happy to send v2 with your usecase covered.
David
P.S. Felix, thanks for Ccing me here :)
>> + complete(&ar->install_key_done);
>> }
>> void ath10k_wmi_event_inst_rssi_stats(struct ath10k *ar, struct sk_buff *skb)
>
More information about the ath10k
mailing list