ath12k & ath11k beacon miss detection

Jeff Johnson quic_jjohnson at quicinc.com
Tue Feb 20 16:46:42 PST 2024


On 2/20/2024 9:11 AM, Nicolas Escande wrote:
> Hi there,
> 
> I found that when using QCN9274 iun station mode, we never get disconnected from
> the AP even if it stops beaconning. Using iw I can see the "inactive time"
> increasing without supplicant ever getting a beacon miss event.
> 
> From what I gathered, given we set the flag CONNECTION_MONITOR using
> ieee80211_hw_set in __ath12k_mac_register (mac.c) we should detect the
> connection loss and call ieee80211_connection_loss() at some point. Right now,
> there is no such mecanism in ath12k.
> 
> So looking at ath11k code I found out that in that driver we have a specific
> WMI event "WMI_ROAM_EVENTID" that can report a WMI_ROAM_REASON_BEACON_MISS that
> in turn ends up calling ieee80211_beacon_loss after some time.
> 
> But trying ath11k & qcn9074 in station mode yielded the same result, we never
> get the roam event and never get disconnected either.
> 
> So going back to ath10k this time, the code isn't exactly the same but even then
> we had the same wmi event, with the same WMI_ROAM_REASON_BEACON_MISS and we'd
> call ath10k_mac_handle_beacon_miss which in turn ends up calling
> ieee80211_beacon_loss via a work item.
> 
> And using ath10k on qca9888 works well for me.
> 
> So I have a few questions:
>   - is this supposed to work on ath11k ? Does it not work for me specifically
>     because of my chipset ? Or are we missing some wmi config ?
>   - as the code to handle the roam event is missing/commented out in ath12k will
>     it be a different mecanism to detect connection loss ? Or it'll be the same
>     and you guys just did not have time yet to tackle this ?
> 
> I'm happy to add the missing code to fix that use case in both drivers but I'll
> need some insight from you ath folks on this.

The ath12k driver is still work-in-progress and there is quite a bit of
functionality missing there due to the refactoring to handle 802.11be
Multi-Link Operation. However I'm surprised that ath11k has this issue.
I've asked the development team to look at this. It would be helpful for
you to open a bug to track the issue. Please see
<https://wireless.wiki.kernel.org/en/users/drivers/ath11k/bugreport>.

Thanks!
/jeff





More information about the ath12k mailing list