From dd4893f453e1712d37b1540ce865fd8b94125ccb Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Wed, 17 Feb 2010 14:13:27 +0000
Subject: mac80211: update to wireless-testing 2010-02-16

SVN-Revision: 19688
---
 package/mac80211/Makefile                          |  6 ++--
 package/mac80211/patches/001-disable_b44.patch     |  6 +---
 package/mac80211/patches/002-disable_rfkill.patch  |  4 +--
 package/mac80211/patches/003-disable_bt.patch      |  2 +-
 .../mac80211/patches/007-remove_misc_drivers.patch |  4 +--
 .../009-remove_mac80211_module_dependence.patch    |  2 +-
 package/mac80211/patches/010-b43_config.patch      | 25 ----------------
 package/mac80211/patches/010-no_pcmcia.patch       | 11 +++++++
 .../mac80211/patches/404-ath_regd_optional.patch   |  2 +-
 .../408-ath9k_tweak_rx_intr_mitigation.patch       |  2 +-
 ...ath9k-add-wndr3700-antenna-initialization.patch |  6 ++--
 .../patches/520-ath9k_ack_timeout_workaround.patch | 20 -------------
 .../mac80211/patches/520-cfg80211_get_freq.patch   | 34 ++++++++++++++++++++++
 .../mac80211/patches/530-cfg80211_get_freq.patch   | 34 ----------------------
 .../patches/540-ath9k_fix_eap_handling.patch       | 20 -------------
 15 files changed, 60 insertions(+), 118 deletions(-)
 delete mode 100644 package/mac80211/patches/010-b43_config.patch
 create mode 100644 package/mac80211/patches/010-no_pcmcia.patch
 delete mode 100644 package/mac80211/patches/520-ath9k_ack_timeout_workaround.patch
 create mode 100644 package/mac80211/patches/520-cfg80211_get_freq.patch
 delete mode 100644 package/mac80211/patches/530-cfg80211_get_freq.patch
 delete mode 100644 package/mac80211/patches/540-ath9k_fix_eap_handling.patch

(limited to 'package/mac80211')

diff --git a/package/mac80211/Makefile b/package/mac80211/Makefile
index a9c8687..1bc4182 100644
--- a/package/mac80211/Makefile
+++ b/package/mac80211/Makefile
@@ -10,12 +10,12 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=mac80211
 
-PKG_VERSION:=2010-02-02
-PKG_RELEASE:=2
+PKG_VERSION:=2010-02-16
+PKG_RELEASE:=1
 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
 #	http://www.orbit-lab.org/kernel/compat-wireless-2.6/2010/11 \
 #	http://wireless.kernel.org/download/compat-wireless-2.6
-PKG_MD5SUM:=32602171b840132cbaa62d4b67f32d2c
+PKG_MD5SUM:=190060a705c2b78e9b0bc873a8803b37
 
 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
diff --git a/package/mac80211/patches/001-disable_b44.patch b/package/mac80211/patches/001-disable_b44.patch
index e15d94e..0682e74 100644
--- a/package/mac80211/patches/001-disable_b44.patch
+++ b/package/mac80211/patches/001-disable_b44.patch
@@ -1,16 +1,12 @@
 --- a/config.mk
 +++ b/config.mk
-@@ -283,10 +283,10 @@ endif
+@@ -271,8 +271,8 @@ endif
  
  CONFIG_P54_PCI=m
  
 -CONFIG_B44=m
--CONFIG_B44_PCI_AUTOSELECT=y
--CONFIG_B44_PCICORE_AUTOSELECT=y
 -CONFIG_B44_PCI=y
 +# CONFIG_B44=m
-+# CONFIG_B44_PCI_AUTOSELECT=y
-+# CONFIG_B44_PCICORE_AUTOSELECT=y
 +# CONFIG_B44_PCI=y
  
  CONFIG_RTL8180=m
diff --git a/package/mac80211/patches/002-disable_rfkill.patch b/package/mac80211/patches/002-disable_rfkill.patch
index fcee2fe..17fd787 100644
--- a/package/mac80211/patches/002-disable_rfkill.patch
+++ b/package/mac80211/patches/002-disable_rfkill.patch
@@ -1,6 +1,6 @@
 --- a/config.mk
 +++ b/config.mk
-@@ -73,7 +73,7 @@ endif # build check
+@@ -72,7 +72,7 @@ endif # build check
  endif # kernel Makefile check
  
  # These both are needed by compat-wireless || compat-bluetooth so enable them
@@ -9,7 +9,7 @@
  
  ifeq ($(CONFIG_MAC80211),y)
  $(error "ERROR: you have MAC80211 compiled into the kernel, CONFIG_MAC80211=y, as such you cannot replace its mac80211 driver. You need this set to CONFIG_MAC80211=m. If you are using Fedora upgrade your kernel as later version should this set as modular. For further information on Fedora see https://bugzilla.redhat.com/show_bug.cgi?id=470143. If you are using your own kernel recompile it and make mac80211 modular")
-@@ -476,8 +476,8 @@ endif
+@@ -461,8 +461,8 @@ endif
  # We need the backported rfkill module on kernel < 2.6.31.
  # In more recent kernel versions use the in kernel rfkill module.
  ifdef CONFIG_COMPAT_KERNEL_31
diff --git a/package/mac80211/patches/003-disable_bt.patch b/package/mac80211/patches/003-disable_bt.patch
index 147450d..e1e7443 100644
--- a/package/mac80211/patches/003-disable_bt.patch
+++ b/package/mac80211/patches/003-disable_bt.patch
@@ -1,6 +1,6 @@
 --- a/config.mk
 +++ b/config.mk
-@@ -95,8 +95,8 @@ ifndef CONFIG_COMPAT_KERNEL_27
+@@ -94,8 +94,8 @@ ifndef CONFIG_COMPAT_KERNEL_27
  ifeq ($(CONFIG_BT),y)
  # we'll ignore compiling bluetooth
  else
diff --git a/package/mac80211/patches/007-remove_misc_drivers.patch b/package/mac80211/patches/007-remove_misc_drivers.patch
index 413fdd0..c648b86 100644
--- a/package/mac80211/patches/007-remove_misc_drivers.patch
+++ b/package/mac80211/patches/007-remove_misc_drivers.patch
@@ -1,6 +1,6 @@
 --- a/config.mk
 +++ b/config.mk
-@@ -316,10 +316,10 @@ CONFIG_PCI_ATMEL=m
+@@ -296,10 +296,10 @@ endif
  CONFIG_MWL8K=m
  
  # Ethernet drivers go here
@@ -15,7 +15,7 @@
  
  endif
  ## end of PCI
-@@ -358,10 +358,10 @@ CONFIG_USB_NET_COMPAT_RNDIS_HOST=n
+@@ -338,10 +338,10 @@ CONFIG_USB_NET_COMPAT_RNDIS_HOST=n
  CONFIG_USB_NET_COMPAT_RNDIS_WLAN=n
  CONFIG_USB_NET_COMPAT_CDCETHER=n
  else
diff --git a/package/mac80211/patches/009-remove_mac80211_module_dependence.patch b/package/mac80211/patches/009-remove_mac80211_module_dependence.patch
index 68420d8..1043be9 100644
--- a/package/mac80211/patches/009-remove_mac80211_module_dependence.patch
+++ b/package/mac80211/patches/009-remove_mac80211_module_dependence.patch
@@ -1,6 +1,6 @@
 --- a/config.mk
 +++ b/config.mk
-@@ -44,21 +44,6 @@ $(error "ERROR: Your 2.6.27 kernel has C
+@@ -43,21 +43,6 @@ $(error "ERROR: Your 2.6.27 kernel has C
  endif
  endif
  
diff --git a/package/mac80211/patches/010-b43_config.patch b/package/mac80211/patches/010-b43_config.patch
deleted file mode 100644
index 6a9738e..0000000
--- a/package/mac80211/patches/010-b43_config.patch
+++ /dev/null
@@ -1,25 +0,0 @@
---- a/config.mk
-+++ b/config.mk
-@@ -201,9 +201,9 @@ CONFIG_B43_HWRNG=y
- CONFIG_B43_PCI_AUTOSELECT=y
- CONFIG_B43_PCICORE_AUTOSELECT=y
- ifneq ($(CONFIG_PCMCIA),)
--CONFIG_B43_PCMCIA=y
-+# CONFIG_B43_PCMCIA=y
- endif
--CONFIG_B43_PIO=y
-+# CONFIG_B43_PIO=y
- CONFIG_B43_LEDS=y
- CONFIG_B43_PHY_LP=y
- # CONFIG_B43_DEBUG=y
-@@ -258,8 +258,8 @@ CONFIG_SSB_PCIHOST_POSSIBLE=y
- CONFIG_SSB_PCIHOST=y
- CONFIG_SSB_B43_PCI_BRIDGE=y
- ifneq ($(CONFIG_PCMCIA),)
--CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
--CONFIG_SSB_PCMCIAHOST=y
-+# CONFIG_SSB_PCMCIAHOST_POSSIBLE=y
-+# CONFIG_SSB_PCMCIAHOST=y
- endif
- # CONFIG_SSB_DEBUG=y
- CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
diff --git a/package/mac80211/patches/010-no_pcmcia.patch b/package/mac80211/patches/010-no_pcmcia.patch
new file mode 100644
index 0000000..3ef315b
--- /dev/null
+++ b/package/mac80211/patches/010-no_pcmcia.patch
@@ -0,0 +1,11 @@
+--- a/config.mk
++++ b/config.mk
+@@ -8,7 +8,7 @@ ifeq ($(wildcard $(KLIB_BUILD)/.config),
+ # These will be ignored by compat autoconf
+  CONFIG_PCI=y
+  CONFIG_USB=y
+- CONFIG_PCMCIA=y
++ # CONFIG_PCMCIA=y
+  CONFIG_SSB=m
+ else
+ include $(KLIB_BUILD)/.config
diff --git a/package/mac80211/patches/404-ath_regd_optional.patch b/package/mac80211/patches/404-ath_regd_optional.patch
index a541369..58ed4bd 100644
--- a/package/mac80211/patches/404-ath_regd_optional.patch
+++ b/package/mac80211/patches/404-ath_regd_optional.patch
@@ -10,7 +10,7 @@
  #include "regd_common.h"
  
  /*
-@@ -587,3 +590,5 @@ u32 ath_regd_get_band_ctl(struct ath_reg
+@@ -588,3 +591,5 @@ u32 ath_regd_get_band_ctl(struct ath_reg
  	}
  }
  EXPORT_SYMBOL(ath_regd_get_band_ctl);
diff --git a/package/mac80211/patches/408-ath9k_tweak_rx_intr_mitigation.patch b/package/mac80211/patches/408-ath9k_tweak_rx_intr_mitigation.patch
index 949a9a7..1c85205 100644
--- a/package/mac80211/patches/408-ath9k_tweak_rx_intr_mitigation.patch
+++ b/package/mac80211/patches/408-ath9k_tweak_rx_intr_mitigation.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/ath/ath9k/hw.c
 +++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -2092,7 +2092,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st
+@@ -2103,7 +2103,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st
  
  	if (ah->config.rx_intr_mitigation) {
  		REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_LAST, 500);
diff --git a/package/mac80211/patches/409-ath9k-add-wndr3700-antenna-initialization.patch b/package/mac80211/patches/409-ath9k-add-wndr3700-antenna-initialization.patch
index 98c9891..83eabaf 100644
--- a/package/mac80211/patches/409-ath9k-add-wndr3700-antenna-initialization.patch
+++ b/package/mac80211/patches/409-ath9k-add-wndr3700-antenna-initialization.patch
@@ -17,7 +17,7 @@
  
  	common = ath9k_hw_common(ah);
  	common->ops = &ath9k_common_ops;
-@@ -670,6 +673,24 @@ void ath9k_set_hw_capab(struct ath_softc
+@@ -671,6 +674,24 @@ void ath9k_set_hw_capab(struct ath_softc
  	SET_IEEE80211_PERM_ADDR(hw, common->macaddr);
  }
  
@@ -42,7 +42,7 @@
  int ath9k_init_device(u16 devid, struct ath_softc *sc, u16 subsysid,
  		    const struct ath_bus_ops *bus_ops)
  {
-@@ -688,6 +709,9 @@ int ath9k_init_device(u16 devid, struct 
+@@ -689,6 +710,9 @@ int ath9k_init_device(u16 devid, struct 
  	common = ath9k_hw_common(ah);
  	ath9k_set_hw_capab(sc, hw);
  
@@ -54,7 +54,7 @@
  			      ath9k_reg_notifier);
 --- a/drivers/net/wireless/ath/ath9k/ath9k.h
 +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
-@@ -510,6 +510,8 @@ struct ath_softc {
+@@ -511,6 +511,8 @@ struct ath_softc {
  	struct ath_beacon_config cur_beacon_conf;
  	struct delayed_work tx_complete_work;
  	struct ath_btcoex btcoex;
diff --git a/package/mac80211/patches/520-ath9k_ack_timeout_workaround.patch b/package/mac80211/patches/520-ath9k_ack_timeout_workaround.patch
deleted file mode 100644
index f489f0f..0000000
--- a/package/mac80211/patches/520-ath9k_ack_timeout_workaround.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/drivers/net/wireless/ath/ath9k/hw.c
-+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -1233,6 +1233,17 @@ void ath9k_hw_init_global_settings(struc
- 	/* As defined by IEEE 802.11-2007 17.3.8.6 */
- 	slottime = ah->slottime + 3 * ah->coverage_class;
- 	acktimeout = slottime + sifstime;
-+
-+	/*
-+	 * Workaround for early ACK timeouts, add an offset to match the
-+	 * initval's 64us ack timeout value.
-+	 * This was initially only meant to work around an issue with delayed
-+	 * BA frames in some implementations, but it has been found to fix ACK
-+	 * timeout issues in other cases as well.
-+	 */
-+	if (conf->channel && conf->channel->band == IEEE80211_BAND_2GHZ)
-+		acktimeout += 64 - sifstime - ah->slottime;
-+
- 	ath9k_hw_setslottime(ah, slottime);
- 	ath9k_hw_set_ack_timeout(ah, acktimeout);
- 	ath9k_hw_set_cts_timeout(ah, acktimeout);
diff --git a/package/mac80211/patches/520-cfg80211_get_freq.patch b/package/mac80211/patches/520-cfg80211_get_freq.patch
new file mode 100644
index 0000000..928cf40
--- /dev/null
+++ b/package/mac80211/patches/520-cfg80211_get_freq.patch
@@ -0,0 +1,34 @@
+--- a/net/wireless/core.h
++++ b/net/wireless/core.h
+@@ -76,6 +76,7 @@ struct cfg80211_registered_device {
+ 
+ 	/* current channel */
+ 	struct ieee80211_channel *channel;
++	enum nl80211_channel_type channel_type;
+ 
+ 	/* must be last because of the way we do wiphy_priv(),
+ 	 * and it should at least be aligned to NETDEV_ALIGN */
+--- a/net/wireless/chan.c
++++ b/net/wireless/chan.c
+@@ -97,6 +97,7 @@ int rdev_set_freq(struct cfg80211_regist
+ 		return result;
+ 
+ 	rdev->channel = chan;
++	rdev->channel_type = channel_type;
+ 
+ 	return 0;
+ }
+--- a/net/wireless/nl80211.c
++++ b/net/wireless/nl80211.c
+@@ -885,6 +885,11 @@ static int nl80211_send_iface(struct sk_
+ 	NLA_PUT_U32(msg, NL80211_ATTR_WIPHY, rdev->wiphy_idx);
+ 	NLA_PUT_STRING(msg, NL80211_ATTR_IFNAME, dev->name);
+ 	NLA_PUT_U32(msg, NL80211_ATTR_IFTYPE, dev->ieee80211_ptr->iftype);
++	if (rdev->channel) {
++		NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_FREQ, rdev->channel->center_freq);
++		NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE, rdev->channel_type);
++	}
++
+ 
+ 	NLA_PUT_U32(msg, NL80211_ATTR_GENERATION,
+ 		    rdev->devlist_generation ^
diff --git a/package/mac80211/patches/530-cfg80211_get_freq.patch b/package/mac80211/patches/530-cfg80211_get_freq.patch
deleted file mode 100644
index a2fb29e..0000000
--- a/package/mac80211/patches/530-cfg80211_get_freq.patch
+++ /dev/null
@@ -1,34 +0,0 @@
---- a/net/wireless/core.h
-+++ b/net/wireless/core.h
-@@ -76,6 +76,7 @@ struct cfg80211_registered_device {
- 
- 	/* current channel */
- 	struct ieee80211_channel *channel;
-+	enum nl80211_channel_type channel_type;
- 
- 	/* must be last because of the way we do wiphy_priv(),
- 	 * and it should at least be aligned to NETDEV_ALIGN */
---- a/net/wireless/chan.c
-+++ b/net/wireless/chan.c
-@@ -97,6 +97,7 @@ int rdev_set_freq(struct cfg80211_regist
- 		return result;
- 
- 	rdev->channel = chan;
-+	rdev->channel_type = channel_type;
- 
- 	return 0;
- }
---- a/net/wireless/nl80211.c
-+++ b/net/wireless/nl80211.c
-@@ -881,6 +881,11 @@ static int nl80211_send_iface(struct sk_
- 	NLA_PUT_U32(msg, NL80211_ATTR_WIPHY, rdev->wiphy_idx);
- 	NLA_PUT_STRING(msg, NL80211_ATTR_IFNAME, dev->name);
- 	NLA_PUT_U32(msg, NL80211_ATTR_IFTYPE, dev->ieee80211_ptr->iftype);
-+	if (rdev->channel) {
-+		NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_FREQ, rdev->channel->center_freq);
-+		NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_CHANNEL_TYPE, rdev->channel_type);
-+	}
-+
- 
- 	NLA_PUT_U32(msg, NL80211_ATTR_GENERATION,
- 		    rdev->devlist_generation ^
diff --git a/package/mac80211/patches/540-ath9k_fix_eap_handling.patch b/package/mac80211/patches/540-ath9k_fix_eap_handling.patch
deleted file mode 100644
index 75e5e93..0000000
--- a/package/mac80211/patches/540-ath9k_fix_eap_handling.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/drivers/net/wireless/ath/ath9k/xmit.c
-+++ b/drivers/net/wireless/ath/ath9k/xmit.c
-@@ -1610,7 +1610,7 @@ static int ath_tx_setup_buffer(struct ie
- 		bf->bf_frmlen -= padsize;
- 	}
- 
--	if (conf_is_ht(&hw->conf) && !is_pae(skb))
-+	if (conf_is_ht(&hw->conf))
- 		bf->bf_state.bf_type |= BUF_HT;
- 
- 	bf->bf_flags = setup_tx_flags(sc, skb, txctl->txq);
-@@ -1696,7 +1696,7 @@ static void ath_tx_start_dma(struct ath_
- 			goto tx_done;
- 		}
- 
--		if (tx_info->flags & IEEE80211_TX_CTL_AMPDU) {
-+		if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && !is_pae(skb)) {
- 			/*
- 			 * Try aggregation if it's a unicast data frame
- 			 * and the destination is HT capable.
-- 
cgit v1.1