diff options
9 files changed, 26 insertions, 136 deletions
diff --git a/package/mac80211/Makefile b/package/mac80211/Makefile index 03a1a4b0d..8db6eb6ad 100644 --- a/package/mac80211/Makefile +++ b/package/mac80211/Makefile @@ -10,12 +10,12 @@ include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=mac80211 -PKG_VERSION:=2010-07-16 +PKG_VERSION:=2010-07-26 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:=f0eb07a207d1f3675787a466c838b777 +PKG_MD5SUM:=4388547c8cf60a895d9ee64420df2f25 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION) diff --git a/package/mac80211/patches/100-disable_pcmcia_compat.patch b/package/mac80211/patches/100-disable_pcmcia_compat.patch index 8b366ff93..ebfe5ce65 100644 --- a/package/mac80211/patches/100-disable_pcmcia_compat.patch +++ b/package/mac80211/patches/100-disable_pcmcia_compat.patch @@ -42,18 +42,16 @@ #include <pcmcia/cs.h> --- a/include/linux/compat-2.6.33.h +++ b/include/linux/compat-2.6.33.h -@@ -6,8 +6,8 @@ +@@ -6,7 +6,7 @@ #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,33)) #include <linux/skbuff.h> -#if defined(CONFIG_PCCARD) || defined(CONFIG_PCCARD_MODULE) --#if defined(CONFIG_PCMCIA) || defined(CONFIG_PCMCIA_MODULE) -+#if 0 +#if 0 #include <pcmcia/cs_types.h> #include <pcmcia/cistpl.h> #include <pcmcia/ds.h> -@@ -67,9 +67,9 @@ static inline struct sk_buff *netdev_all +@@ -65,9 +65,9 @@ static inline struct sk_buff *netdev_all return skb; } diff --git a/package/mac80211/patches/120-pm_qos_params.patch b/package/mac80211/patches/120-pm_qos_params.patch index 8562992a5..ca4b7bfe3 100644 --- a/package/mac80211/patches/120-pm_qos_params.patch +++ b/package/mac80211/patches/120-pm_qos_params.patch @@ -5,7 +5,7 @@ #define DRV_COPYRIGHT "Copyright(c) 2003-2006 Intel Corporation" +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35)) - struct pm_qos_request_list *ipw2100_pm_qos_req; + static struct pm_qos_request_list *ipw2100_pm_qos_req; +#endif /* Debugging stuff */ diff --git a/package/mac80211/patches/520-ath9k_leak_fix.patch b/package/mac80211/patches/520-ath9k_leak_fix.patch deleted file mode 100644 index acf7efd87..000000000 --- a/package/mac80211/patches/520-ath9k_leak_fix.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- a/drivers/net/wireless/ath/ath9k/xmit.c -+++ b/drivers/net/wireless/ath/ath9k/xmit.c -@@ -518,6 +518,14 @@ static void ath_tx_complete_aggr(struct - bf = bf_next; - } - -+ /* prepend un-acked frames to the beginning of the pending frame queue */ -+ if (!list_empty(&bf_pending)) { -+ spin_lock_bh(&txq->axq_lock); -+ list_splice(&bf_pending, &tid->buf_q); -+ ath_tx_queue_tid(txq, tid); -+ spin_unlock_bh(&txq->axq_lock); -+ } -+ - if (tid->state & AGGR_CLEANUP) { - if (tid->baw_head == tid->baw_tail) { - tid->state &= ~AGGR_ADDBA_COMPLETE; -@@ -530,14 +538,6 @@ static void ath_tx_complete_aggr(struct - return; - } - -- /* prepend un-acked frames to the beginning of the pending frame queue */ -- if (!list_empty(&bf_pending)) { -- spin_lock_bh(&txq->axq_lock); -- list_splice(&bf_pending, &tid->buf_q); -- ath_tx_queue_tid(txq, tid); -- spin_unlock_bh(&txq->axq_lock); -- } -- - rcu_read_unlock(); - - if (needreset) diff --git a/package/mac80211/patches/530-ath9k_nf_fix.patch b/package/mac80211/patches/530-ath9k_nf_fix.patch deleted file mode 100644 index 081c2ab74..000000000 --- a/package/mac80211/patches/530-ath9k_nf_fix.patch +++ /dev/null @@ -1,46 +0,0 @@ ---- a/drivers/net/wireless/ath/ath9k/ar5008_phy.c -+++ b/drivers/net/wireless/ath/ath9k/ar5008_phy.c -@@ -1508,6 +1508,9 @@ static void ar5008_hw_do_getnf(struct at - nf = MS(REG_READ(ah, AR_PHY_CH2_CCA), AR_PHY_CH2_MINCCA_PWR); - nfarray[2] = sign_extend(nf, 9); - -+ if (!IS_CHAN_HT40(ah->curchan)) -+ return; -+ - nf = MS(REG_READ(ah, AR_PHY_EXT_CCA), AR_PHY_EXT_MINCCA_PWR); - nfarray[3] = sign_extend(nf, 9); - ---- a/drivers/net/wireless/ath/ath9k/ar9002_phy.c -+++ b/drivers/net/wireless/ath/ath9k/ar9002_phy.c -@@ -477,7 +477,8 @@ static void ar9002_hw_do_getnf(struct at - nfarray[0] = sign_extend(nf, 9); - - nf = MS(REG_READ(ah, AR_PHY_EXT_CCA), AR9280_PHY_EXT_MINCCA_PWR); -- nfarray[3] = sign_extend(nf, 9); -+ if (IS_CHAN_HT40(ah->curchan)) -+ nfarray[3] = sign_extend(nf, 9); - - if (AR_SREV_9285(ah) || AR_SREV_9271(ah)) - return; -@@ -486,7 +487,8 @@ static void ar9002_hw_do_getnf(struct at - nfarray[1] = sign_extend(nf, 9); - - nf = MS(REG_READ(ah, AR_PHY_CH1_EXT_CCA), AR9280_PHY_CH1_EXT_MINCCA_PWR); -- nfarray[4] = sign_extend(nf, 9); -+ if (IS_CHAN_HT40(ah->curchan)) -+ nfarray[4] = sign_extend(nf, 9); - } - - static void ar9002_hw_set_nf_limits(struct ath_hw *ah) ---- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c -+++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c -@@ -1029,6 +1029,9 @@ static void ar9003_hw_do_getnf(struct at - nf = MS(REG_READ(ah, AR_PHY_CCA_2), AR_PHY_CH2_MINCCA_PWR); - nfarray[2] = sign_extend(nf, 9); - -+ if (!IS_CHAN_HT40(ah->curchan)) -+ return; -+ - nf = MS(REG_READ(ah, AR_PHY_EXT_CCA), AR_PHY_EXT_MINCCA_PWR); - nfarray[3] = sign_extend(nf, 9); - diff --git a/package/mac80211/patches/531-ath9k_nf_cleanup.patch b/package/mac80211/patches/531-ath9k_nf_cleanup.patch deleted file mode 100644 index f038559a4..000000000 --- a/package/mac80211/patches/531-ath9k_nf_cleanup.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- a/drivers/net/wireless/ath/ath9k/calib.c -+++ b/drivers/net/wireless/ath/ath9k/calib.c -@@ -172,26 +172,9 @@ void ath9k_hw_loadnf(struct ath_hw *ah, - struct ath9k_nfcal_hist *h; - unsigned i, j; - int32_t val; -- u8 chainmask; -+ u8 chainmask = (ah->rxchainmask << 3) | ah->rxchainmask; - struct ath_common *common = ath9k_hw_common(ah); - -- if (AR_SREV_9300_20_OR_LATER(ah)) -- chainmask = 0x3F; -- else if (AR_SREV_9285(ah) || AR_SREV_9271(ah)) -- chainmask = 0x9; -- else if (AR_SREV_9280(ah) || AR_SREV_9287(ah)) { -- if ((ah->rxchainmask & 0x2) || (ah->rxchainmask & 0x4)) -- chainmask = 0x1B; -- else -- chainmask = 0x09; -- } else { -- if (ah->rxchainmask & 0x4) -- chainmask = 0x3F; -- else if (ah->rxchainmask & 0x2) -- chainmask = 0x1B; -- else -- chainmask = 0x09; -- } - h = ah->nfCalHist; - - for (i = 0; i < NUM_NF_READINGS; i++) { diff --git a/package/mac80211/patches/700-mwl8k-missing-pci-id-for-WNR854T.patch b/package/mac80211/patches/700-mwl8k-missing-pci-id-for-WNR854T.patch index cf8a4d510..b90539e5e 100644 --- a/package/mac80211/patches/700-mwl8k-missing-pci-id-for-WNR854T.patch +++ b/package/mac80211/patches/700-mwl8k-missing-pci-id-for-WNR854T.patch @@ -1,6 +1,6 @@ --- a/drivers/net/wireless/mwl8k.c +++ b/drivers/net/wireless/mwl8k.c -@@ -3882,6 +3882,7 @@ MODULE_FIRMWARE("mwl8k/helper_8366.fw"); +@@ -3884,6 +3884,7 @@ MODULE_FIRMWARE("mwl8k/helper_8366.fw"); MODULE_FIRMWARE("mwl8k/fmimage_8366.fw"); static DEFINE_PCI_DEVICE_TABLE(mwl8k_pci_id_table) = { diff --git a/package/mac80211/patches/800-mac80211_aggr_fix.patch b/package/mac80211/patches/800-mac80211_aggr_fix.patch deleted file mode 100644 index 564bfac06..000000000 --- a/package/mac80211/patches/800-mac80211_aggr_fix.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- a/net/mac80211/iface.c -+++ b/net/mac80211/iface.c -@@ -756,7 +756,7 @@ static void ieee80211_iface_work(struct - int len = skb->len; - - mutex_lock(&local->sta_mtx); -- sta = sta_info_get(sdata, mgmt->sa); -+ sta = sta_info_get_bss(sdata, mgmt->sa); - if (sta) { - switch (mgmt->u.action.u.addba_req.action_code) { - case WLAN_ACTION_ADDBA_REQ: -@@ -797,7 +797,7 @@ static void ieee80211_iface_work(struct - * right, so terminate the session. - */ - mutex_lock(&local->sta_mtx); -- sta = sta_info_get(sdata, mgmt->sa); -+ sta = sta_info_get_bss(sdata, mgmt->sa); - if (sta) { - u16 tid = *ieee80211_get_qos_ctl(hdr) & - IEEE80211_QOS_CTL_TID_MASK; diff --git a/package/mac80211/patches/800-mac80211_scan_callback_revert.patch b/package/mac80211/patches/800-mac80211_scan_callback_revert.patch new file mode 100644 index 000000000..904dd3c03 --- /dev/null +++ b/package/mac80211/patches/800-mac80211_scan_callback_revert.patch @@ -0,0 +1,20 @@ +--- a/net/mac80211/scan.c ++++ b/net/mac80211/scan.c +@@ -287,8 +287,6 @@ void ieee80211_scan_completed(struct iee + local->scanning = 0; + local->scan_channel = NULL; + +- drv_sw_scan_complete(local); +- + /* we only have to protect scan_req and hw/sw scan */ + mutex_unlock(&local->scan_mtx); + +@@ -298,6 +296,8 @@ void ieee80211_scan_completed(struct iee + + ieee80211_configure_filter(local); + ++ drv_sw_scan_complete(local); ++ + ieee80211_offchannel_return(local, true); + + done: |