git: 266cae806264 - stable/13 - LinuxKPI: 802.11 advertise full offload scanning based on hw_scan only
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 20 Feb 2022 18:15:52 UTC
The branch stable/13 has been updated by bz:
URL: https://cgit.FreeBSD.org/src/commit/?id=266cae8062643bd8e54f3dd34904fe4ff38d017a
commit 266cae8062643bd8e54f3dd34904fe4ff38d017a
Author: Bjoern A. Zeeb <bz@FreeBSD.org>
AuthorDate: 2022-02-17 00:15:56 +0000
Commit: Bjoern A. Zeeb <bz@FreeBSD.org>
CommitDate: 2022-02-20 16:25:49 +0000
LinuxKPI: 802.11 advertise full offload scanning based on hw_scan only
We disabled hw_scan for drivers not advertising SINGLE_SCAN_ON_ALL_BANDS.
Do not depend on this hw flag to set IEEE80211_FEXT_SCAN_OFFLOAD for
net80211 as otherwise scanning will never work.
Long-term we probably want to re-think how we do/integrate hw_scan
better in net80211.
Sponsored by: The FreeBSD Foundation
(cherry picked from commit cc4e78d51351d6362b0536e326280c1e230648d5)
---
sys/compat/linuxkpi/common/src/linux_80211.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 6e5bf19d0aa1..520ecaf4f4f0 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -2874,9 +2874,14 @@ linuxkpi_ieee80211_ifattach(struct ieee80211_hw *hw)
/* Scanning is a different kind of beast to re-work. */
ic->ic_caps |= IEEE80211_C_BGSCAN;
#endif
- if (lhw->ops->hw_scan &&
- ieee80211_hw_check(hw, SINGLE_SCAN_ON_ALL_BANDS)) {
- /* Advertise full-offload scanning */
+ if (lhw->ops->hw_scan) {
+ /*
+ * Advertise full-offload scanning.
+ *
+ * Not limiting to SINGLE_SCAN_ON_ALL_BANDS here as otherwise
+ * we essentially disable hw_scan for all drivers not setting
+ * the flag.
+ */
ic->ic_flags_ext |= IEEE80211_FEXT_SCAN_OFFLOAD;
}