OSDN Git Service

qtnfmac: request userspace to do OBSS scanning if FW can not
authorIgor Mitsyanko <igor.mitsyanko.os@quantenna.com>
Fri, 5 Oct 2018 10:11:30 +0000 (10:11 +0000)
committerKalle Valo <kvalo@codeaurora.org>
Fri, 5 Oct 2018 11:01:16 +0000 (14:01 +0300)
In case firmware reports that it can not do OBSS scanning for 40MHz
2.4GHz channels itself, tell userpsace to do that instead by setting
NL80211_FEATURE_NEED_OBSS_SCAN flag.

Signed-off-by: Igor mitsyanko <igor.mitsyanko.os@quantenna.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/quantenna/qtnfmac/cfg80211.c
drivers/net/wireless/quantenna/qtnfmac/qlink.h

index 87f48b7..c4961e1 100644 (file)
@@ -1099,6 +1099,9 @@ int qtnf_wiphy_register(struct qtnf_hw_info *hw_info, struct qtnf_wmac *mac)
        if (hw_info->hw_capab & QLINK_HW_CAPAB_SCAN_RANDOM_MAC_ADDR)
                wiphy->features |= NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR;
 
+       if (!(hw_info->hw_capab & QLINK_HW_CAPAB_OBSS_SCAN))
+               wiphy->features |= NL80211_FEATURE_NEED_OBSS_SCAN;
+
 #ifdef CONFIG_PM
        if (macinfo->wowlan)
                wiphy->wowlan = macinfo->wowlan;
index 99d37e3..c5ae4ea 100644 (file)
@@ -71,6 +71,7 @@ struct qlink_msg_header {
  * @QLINK_HW_CAPAB_DFS_OFFLOAD: device implements DFS offload functionality
  * @QLINK_HW_CAPAB_SCAN_RANDOM_MAC_ADDR: device supports MAC Address
  *     Randomization in probe requests.
+ * @QLINK_HW_CAPAB_OBSS_SCAN: device can perform OBSS scanning.
  */
 enum qlink_hw_capab {
        QLINK_HW_CAPAB_REG_UPDATE               = BIT(0),
@@ -78,6 +79,7 @@ enum qlink_hw_capab {
        QLINK_HW_CAPAB_DFS_OFFLOAD              = BIT(2),
        QLINK_HW_CAPAB_SCAN_RANDOM_MAC_ADDR     = BIT(3),
        QLINK_HW_CAPAB_PWR_MGMT                 = BIT(4),
+       QLINK_HW_CAPAB_OBSS_SCAN                = BIT(5),
 };
 
 enum qlink_iface_type {