ath10k-ct supports the combination to select ADHOC (IBSS) mode and
different beacon intervals together. mac80211 does not like this
combination, but Ben says this is ok, so remove this check.

Signed-off-by: Hauke Mehrtens <ha...@hauke-m.de>
---
 .../patches/subsys/400-allow-ibss-mixed.patch | 29 +++++++++++++++++++
 1 file changed, 29 insertions(+)
 create mode 100644 
package/kernel/mac80211/patches/subsys/400-allow-ibss-mixed.patch

diff --git a/package/kernel/mac80211/patches/subsys/400-allow-ibss-mixed.patch 
b/package/kernel/mac80211/patches/subsys/400-allow-ibss-mixed.patch
new file mode 100644
index 0000000000..52200b6ecc
--- /dev/null
+++ b/package/kernel/mac80211/patches/subsys/400-allow-ibss-mixed.patch
@@ -0,0 +1,29 @@
+ath10k-ct starting with version 5.2 allows the combination of 
+NL80211_IFTYPE_ADHOC and beacon_int_min_gcd in ath10k_10x_ct_if_comb 
+which triggers this warning. Ben told me that this is not a big problem 
+and we should ignore this.
+
+--- a/net/wireless/core.c
++++ b/net/wireless/core.c
+@@ -613,21 +613,6 @@ static int wiphy_verify_combinations(str
+                                   c->limits[j].max > 1))
+                               return -EINVAL;
+ 
+-                      /*
+-                       * This isn't well-defined right now. If you have an
+-                       * IBSS interface, then its beacon interval may change
+-                       * by joining other networks, and nothing prevents it
+-                       * from doing that.
+-                       * So technically we probably shouldn't even allow AP
+-                       * and IBSS in the same interface, but it seems that
+-                       * some drivers support that, possibly only with fixed
+-                       * beacon intervals for IBSS.
+-                       */
+-                      if (WARN_ON(types & BIT(NL80211_IFTYPE_ADHOC) &&
+-                                  c->beacon_int_min_gcd)) {
+-                              return -EINVAL;
+-                      }
+-
+                       cnt += c->limits[j].max;
+                       /*
+                        * Don't advertise an unsupported type
-- 
2.20.1


_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to