mac80211: rebase ontop of v4.18-rc7
[openwrt/staging/blogic.git] / package / kernel / mac80211 / patches / 411-ath5k_allow_adhoc_and_ap.patch
diff --git a/package/kernel/mac80211/patches/411-ath5k_allow_adhoc_and_ap.patch b/package/kernel/mac80211/patches/411-ath5k_allow_adhoc_and_ap.patch
deleted file mode 100644 (file)
index 2a5ab3d..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
---- a/drivers/net/wireless/ath/ath5k/mac80211-ops.c
-+++ b/drivers/net/wireless/ath/ath5k/mac80211-ops.c
-@@ -86,13 +86,8 @@ ath5k_add_interface(struct ieee80211_hw
-               goto end;
-       }
--      /* Don't allow other interfaces if one ad-hoc is configured.
--       * TODO: Fix the problems with ad-hoc and multiple other interfaces.
--       * We would need to operate the HW in ad-hoc mode to allow TSF updates
--       * for the IBSS, but this breaks with additional AP or STA interfaces
--       * at the moment. */
--      if (ah->num_adhoc_vifs ||
--          (ah->nvifs && vif->type == NL80211_IFTYPE_ADHOC)) {
-+      /* Don't allow more than one ad-hoc interface */
-+      if (ah->num_adhoc_vifs && vif->type == NL80211_IFTYPE_ADHOC) {
-               ATH5K_ERR(ah, "Only one single ad-hoc interface is allowed.\n");
-               ret = -ELNRNG;
-               goto end;
---- a/drivers/net/wireless/ath/ath5k/base.c
-+++ b/drivers/net/wireless/ath/ath5k/base.c
-@@ -1965,7 +1965,7 @@ ath5k_beacon_send(struct ath5k_hw *ah)
-       }
-       if ((ah->opmode == NL80211_IFTYPE_AP && ah->num_ap_vifs +
--                      ah->num_mesh_vifs > 1) ||
-+                      ah->num_adhoc_vifs + ah->num_mesh_vifs > 1) ||
-                       ah->opmode == NL80211_IFTYPE_MESH_POINT) {
-               u64 tsf = ath5k_hw_get_tsf64(ah);
-               u32 tsftu = TSF_TO_TU(tsf);
-@@ -2051,7 +2051,7 @@ ath5k_beacon_update_timers(struct ath5k_
-       intval = ah->bintval & AR5K_BEACON_PERIOD;
-       if (ah->opmode == NL80211_IFTYPE_AP && ah->num_ap_vifs
--              + ah->num_mesh_vifs > 1) {
-+              + ah->num_adhoc_vifs + ah->num_mesh_vifs > 1) {
-               intval /= ATH_BCBUF;    /* staggered multi-bss beacons */
-               if (intval < 15)
-                       ATH5K_WARN(ah, "intval %u is too low, min 15\n",
-@@ -2518,6 +2518,7 @@ static const struct ieee80211_iface_limi
-                                BIT(NL80211_IFTYPE_MESH_POINT) |
- #endif
-                                BIT(NL80211_IFTYPE_AP) },
-+      { .max = 1,     .types = BIT(NL80211_IFTYPE_ADHOC) },
- };
- static const struct ieee80211_iface_combination if_comb = {