I've hit this in the past but need to go and look up what this was. I am seeing it again on the 8822C but not on my others currently after updating the driver. [979.253737] rtw881: [TXGAPK] unknown channel 234!! [979.260576] rtw881: failed to send h2c command [979.684546] rtw881: failed to poll iqk status bit [979.876891] rtw881: failed to do dpk calibration [980.068887] rtw881: failed to do dpk calibration (private note: hope there's no global involved given I attach <n> rtw88 devices to the same system)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=b568711f8ef1afd7c86ea2d8bd2f94f399f54dc1 commit b568711f8ef1afd7c86ea2d8bd2f94f399f54dc1 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2025-11-10 19:41:08 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2025-11-10 19:41:08 +0000 LinuxKPI: 802.11: clear CONF_IDLE earlier When starting to scan and ending a scan we clear/set the hardware to idle. Similarly we set the hw to idle when we remove the channel context but when starting we only set it to non-idle when we went from assoc to run. This apparently was not a problem most of the time as the switch from a failed hardware scan to a software scan was racing against net80211. ad4ddc83ebf8 fixed that specifically for rtw88 and while we were more consistently scanning, this broke authentication as the setting of idle at the end of the scan was now happening reliably. Move the unsetting of idle from assoc_to_run to scan_to_auth for when we create the chanctx to keep it symmetrical. This makes authentication work again for rtw88. This likely also fixes the problems in the listed PRs. iwlwifi(4) mvm and mld driver parts do not use this information at all and were never affected. Sponsored by: The FreeBSD Foundation MFC after: 3 days Reported by: Oleg Nauman (oleg.nauman gmail.com) PR: 290850, 288186, 281979 PR: 272145 (the non skb-mem-limit parts) sys/compat/linuxkpi/common/src/linux_80211.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
I'll close this one as it's my own. The problem should be fixed now. I am tracking MFC status in 288186.
A commit in branch stable/15 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=a77abd53e83c4357ad8a8006a6e89759e65e3a5b commit a77abd53e83c4357ad8a8006a6e89759e65e3a5b Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2025-11-10 19:41:08 +0000 Commit: Bjoern A. Zeeb <bz@FreeBSD.org> CommitDate: 2025-11-12 15:41:24 +0000 LinuxKPI: 802.11: clear CONF_IDLE earlier When starting to scan and ending a scan we clear/set the hardware to idle. Similarly we set the hw to idle when we remove the channel context but when starting we only set it to non-idle when we went from assoc to run. This apparently was not a problem most of the time as the switch from a failed hardware scan to a software scan was racing against net80211. ad4ddc83ebf8 fixed that specifically for rtw88 and while we were more consistently scanning, this broke authentication as the setting of idle at the end of the scan was now happening reliably. Move the unsetting of idle from assoc_to_run to scan_to_auth for when we create the chanctx to keep it symmetrical. This makes authentication work again for rtw88 (though not for everyone due to other possible problems with net80211). This likely also fixes the problems in the listed PRs. iwlwifi(4) mvm and mld driver parts do not use this information at all and were never affected. Sponsored by: The FreeBSD Foundation PR: 290850, 288186, 281979 PR: 272145 (the non skb-mem-limit parts) (cherry picked from commit b568711f8ef1afd7c86ea2d8bd2f94f399f54dc1) sys/compat/linuxkpi/common/src/linux_80211.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
A commit in branch releng/15.0 references this bug: URL: https://cgit.FreeBSD.org/src/commit/?id=f490eae83f7f90de8be5d1dea593227dbfb98f36 commit f490eae83f7f90de8be5d1dea593227dbfb98f36 Author: Bjoern A. Zeeb <bz@FreeBSD.org> AuthorDate: 2025-11-10 19:41:08 +0000 Commit: Colin Percival <cperciva@FreeBSD.org> CommitDate: 2025-11-12 18:46:14 +0000 LinuxKPI: 802.11: clear CONF_IDLE earlier When starting to scan and ending a scan we clear/set the hardware to idle. Similarly we set the hw to idle when we remove the channel context but when starting we only set it to non-idle when we went from assoc to run. This apparently was not a problem most of the time as the switch from a failed hardware scan to a software scan was racing against net80211. ad4ddc83ebf8 fixed that specifically for rtw88 and while we were more consistently scanning, this broke authentication as the setting of idle at the end of the scan was now happening reliably. Move the unsetting of idle from assoc_to_run to scan_to_auth for when we create the chanctx to keep it symmetrical. This makes authentication work again for rtw88 (though not for everyone due to other possible problems with net80211). This likely also fixes the problems in the listed PRs. iwlwifi(4) mvm and mld driver parts do not use this information at all and were never affected. Approved by: re (cperciva) Sponsored by: The FreeBSD Foundation PR: 290850, 288186, 281979 PR: 272145 (the non skb-mem-limit parts) (cherry picked from commit b568711f8ef1afd7c86ea2d8bd2f94f399f54dc1) (cherry picked from commit a77abd53e83c4357ad8a8006a6e89759e65e3a5b) sys/compat/linuxkpi/common/src/linux_80211.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)