0011-mac80211-revert-upstream-change-breaking-AP-11s-VIF-combinations.patch 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. From: Matthias Schiffer <mschiffer@universe-factory.net>
  2. Date: Sat, 11 Mar 2017 06:15:18 +0100
  3. Subject: mac80211: revert upstream change breaking AP+11s VIF combinations
  4. Fixes FS#619.
  5. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
  6. diff --git a/package/kernel/mac80211/patches/323-Revert-mac80211-validate-new-interface-s-beacon-inte.patch b/package/kernel/mac80211/patches/323-Revert-mac80211-validate-new-interface-s-beacon-inte.patch
  7. new file mode 100644
  8. index 0000000000000000000000000000000000000000..60d0e9181ef34560613b6cdb88c87441fd16143f
  9. --- /dev/null
  10. +++ b/package/kernel/mac80211/patches/323-Revert-mac80211-validate-new-interface-s-beacon-inte.patch
  11. @@ -0,0 +1,48 @@
  12. +From: Matthias Schiffer <mschiffer@universe-factory.net>
  13. +Date: Sat, 11 Mar 2017 06:07:03 +0100
  14. +Subject: [PATCH] Revert "mac80211: validate new interface's beacon intervals"
  15. +
  16. +This reverts commit ac668afe414b1d41366f92a33b4d32428335db54, as it
  17. +prevents simultaneous operation of AP and mesh point VIFs.
  18. +
  19. +Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
  20. +---
  21. +
  22. +--- a/net/mac80211/cfg.c
  23. ++++ b/net/mac80211/cfg.c
  24. +@@ -864,8 +864,6 @@ static int ieee80211_start_ap(struct wip
  25. + }
  26. + sdata->needed_rx_chains = sdata->local->rx_chains;
  27. +
  28. +- sdata->vif.bss_conf.beacon_int = params->beacon_interval;
  29. +-
  30. + mutex_lock(&local->mtx);
  31. + err = ieee80211_vif_use_channel(sdata, &params->chandef,
  32. + IEEE80211_CHANCTX_SHARED);
  33. +@@ -896,6 +894,7 @@ static int ieee80211_start_ap(struct wip
  34. + vlan->vif.type);
  35. + }
  36. +
  37. ++ sdata->vif.bss_conf.beacon_int = params->beacon_interval;
  38. + sdata->vif.bss_conf.dtim_period = params->dtim_period;
  39. + sdata->vif.bss_conf.enable_beacon = true;
  40. + sdata->vif.bss_conf.allow_p2p_go_ps = sdata->vif.p2p;
  41. +--- a/net/mac80211/util.c
  42. ++++ b/net/mac80211/util.c
  43. +@@ -3330,16 +3330,6 @@ int ieee80211_check_combinations(struct
  44. + if (WARN_ON(iftype >= NUM_NL80211_IFTYPES))
  45. + return -EINVAL;
  46. +
  47. +- if (sdata->vif.type == NL80211_IFTYPE_AP ||
  48. +- sdata->vif.type == NL80211_IFTYPE_MESH_POINT) {
  49. +- /*
  50. +- * always passing this is harmless, since it'll be the
  51. +- * same value that cfg80211 finds if it finds the same
  52. +- * interface ... and that's always allowed
  53. +- */
  54. +- params.new_beacon_int = sdata->vif.bss_conf.beacon_int;
  55. +- }
  56. +-
  57. + /* Always allow software iftypes */
  58. + if (local->hw.wiphy->software_iftypes & BIT(iftype)) {
  59. + if (radar_detect)
  60. diff --git a/package/kernel/mac80211/patches/522-mac80211_configure_antenna_gain.patch b/package/kernel/mac80211/patches/522-mac80211_configure_antenna_gain.patch
  61. index 9a0f6f5dbd9f669174d65133c427ecfba533f950..6856d6919d474e817596f972a8bb6cf4c898d795 100644
  62. --- a/package/kernel/mac80211/patches/522-mac80211_configure_antenna_gain.patch
  63. +++ b/package/kernel/mac80211/patches/522-mac80211_configure_antenna_gain.patch
  64. @@ -57,7 +57,7 @@
  65. __NL80211_ATTR_AFTER_LAST,
  66. --- a/net/mac80211/cfg.c
  67. +++ b/net/mac80211/cfg.c
  68. -@@ -2396,6 +2396,19 @@ static int ieee80211_get_tx_power(struct
  69. +@@ -2395,6 +2395,19 @@ static int ieee80211_get_tx_power(struct
  70. return 0;
  71. }
  72. @@ -77,7 +77,7 @@
  73. static int ieee80211_set_wds_peer(struct wiphy *wiphy, struct net_device *dev,
  74. const u8 *addr)
  75. {
  76. -@@ -3627,6 +3640,7 @@ const struct cfg80211_ops mac80211_confi
  77. +@@ -3626,6 +3639,7 @@ const struct cfg80211_ops mac80211_confi
  78. .set_wiphy_params = ieee80211_set_wiphy_params,
  79. .set_tx_power = ieee80211_set_tx_power,
  80. .get_tx_power = ieee80211_get_tx_power,