mac80211: update to wireless-testing 2012-02-27

SVN-Revision: 30746
This commit is contained in:
Felix Fietkau 2012-02-27 22:56:05 +00:00
parent 340909c73e
commit 7d7118b8bf
21 changed files with 316 additions and 972 deletions

View file

@ -10,10 +10,10 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mac80211 PKG_NAME:=mac80211
PKG_VERSION:=2012-02-23 PKG_VERSION:=2012-02-27
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
PKG_MD5SUM:=dc01b316954e7c9f2ea50c09bb68138e PKG_MD5SUM:=ccd51c46813c25090ce657c8b7c67615
PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION) PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)

File diff suppressed because it is too large Load diff

View file

@ -8,7 +8,7 @@
#include <asm/unaligned.h> #include <asm/unaligned.h>
#include "hw.h" #include "hw.h"
@@ -465,8 +466,16 @@ static int ath9k_hw_init_macaddr(struct @@ -466,8 +467,16 @@ static int ath9k_hw_init_macaddr(struct
common->macaddr[2 * i] = eeval >> 8; common->macaddr[2 * i] = eeval >> 8;
common->macaddr[2 * i + 1] = eeval & 0xff; common->macaddr[2 * i + 1] = eeval & 0xff;
} }

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/main.c --- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -1450,15 +1450,6 @@ static int ath9k_add_interface(struct ie @@ -1430,15 +1430,6 @@ static int ath9k_add_interface(struct ie
} }
} }
@ -16,7 +16,7 @@
ath_dbg(common, CONFIG, "Attach a VIF of type: %d\n", vif->type); ath_dbg(common, CONFIG, "Attach a VIF of type: %d\n", vif->type);
sc->nvifs++; sc->nvifs++;
@@ -1483,15 +1474,6 @@ static int ath9k_change_interface(struct @@ -1463,15 +1454,6 @@ static int ath9k_change_interface(struct
mutex_lock(&sc->mutex); mutex_lock(&sc->mutex);
ath9k_ps_wakeup(sc); ath9k_ps_wakeup(sc);

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -1616,6 +1616,53 @@ static const struct file_operations fops @@ -1552,6 +1552,53 @@ static const struct file_operations fops
}; };
@ -54,13 +54,12 @@
int ath9k_init_debug(struct ath_hw *ah) int ath9k_init_debug(struct ath_hw *ah)
{ {
struct ath_common *common = ath9k_hw_common(ah); struct ath_common *common = ath9k_hw_common(ah);
@@ -1677,6 +1724,9 @@ int ath9k_init_debug(struct ath_hw *ah) @@ -1613,5 +1660,8 @@ int ath9k_init_debug(struct ath_hw *ah)
debugfs_create_u32("gpio_val", S_IRUSR | S_IWUSR, debugfs_create_u32("gpio_val", S_IRUSR | S_IWUSR,
sc->debug.debugfs_phy, &sc->sc_ah->gpio_val); sc->debug.debugfs_phy, &sc->sc_ah->gpio_val);
+ debugfs_create_file("eeprom", S_IRUSR, sc->debug.debugfs_phy, sc, + debugfs_create_file("eeprom", S_IRUSR, sc->debug.debugfs_phy, sc,
+ &fops_eeprom); + &fops_eeprom);
+ +
sc->debug.regidx = 0; return 0;
memset(&sc->debug.bb_mac_samp, 0, sizeof(sc->debug.bb_mac_samp)); }
sc->debug.sampidx = 0;

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1794,8 +1794,8 @@ int ath9k_hw_reset(struct ath_hw *ah, st @@ -1745,8 +1745,8 @@ int ath9k_hw_reset(struct ath_hw *ah, st
REG_WRITE(ah, AR_OBS, 8); REG_WRITE(ah, AR_OBS, 8);
if (ah->config.rx_intr_mitigation) { if (ah->config.rx_intr_mitigation) {

View file

@ -11,7 +11,7 @@
#define IEEE80211_MS_TO_TU(x) (((x) * 1000) / 1024) #define IEEE80211_MS_TO_TU(x) (((x) * 1000) / 1024)
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -388,8 +388,8 @@ static void ath9k_hw_init_config(struct @@ -389,8 +389,8 @@ static void ath9k_hw_init_config(struct
{ {
int i; int i;

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/ath9k.h --- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath/ath9k/ath9k.h +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
@@ -595,6 +595,7 @@ struct ath_softc { @@ -625,6 +625,7 @@ struct ath_softc {
struct ieee80211_hw *hw; struct ieee80211_hw *hw;
struct device *dev; struct device *dev;
@ -8,7 +8,7 @@
int chan_idx; int chan_idx;
int chan_is_ht; int chan_is_ht;
struct survey_info *cur_survey; struct survey_info *cur_survey;
@@ -659,6 +660,7 @@ struct ath_softc { @@ -692,6 +693,7 @@ struct ath_softc {
u8 ant_tx, ant_rx; u8 ant_tx, ant_rx;
}; };
@ -18,7 +18,7 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -1663,6 +1663,50 @@ static const struct file_operations fops @@ -1599,6 +1599,50 @@ static const struct file_operations fops
.owner = THIS_MODULE .owner = THIS_MODULE
}; };
@ -69,19 +69,18 @@
int ath9k_init_debug(struct ath_hw *ah) int ath9k_init_debug(struct ath_hw *ah)
{ {
struct ath_common *common = ath9k_hw_common(ah); struct ath_common *common = ath9k_hw_common(ah);
@@ -1727,6 +1771,9 @@ int ath9k_init_debug(struct ath_hw *ah) @@ -1663,5 +1707,8 @@ int ath9k_init_debug(struct ath_hw *ah)
debugfs_create_file("eeprom", S_IRUSR, sc->debug.debugfs_phy, sc, debugfs_create_file("eeprom", S_IRUSR, sc->debug.debugfs_phy, sc,
&fops_eeprom); &fops_eeprom);
+ debugfs_create_file("chanbw", S_IRUSR | S_IWUSR, sc->debug.debugfs_phy, + debugfs_create_file("chanbw", S_IRUSR | S_IWUSR, sc->debug.debugfs_phy,
+ sc, &fops_chanbw); + sc, &fops_chanbw);
+ +
sc->debug.regidx = 0; return 0;
memset(&sc->debug.bb_mac_samp, 0, sizeof(sc->debug.bb_mac_samp)); }
sc->debug.sampidx = 0;
--- a/drivers/net/wireless/ath/ath9k/main.c --- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -1555,7 +1555,7 @@ static void ath9k_disable_ps(struct ath_ @@ -1535,7 +1535,7 @@ static void ath9k_disable_ps(struct ath_
} }
@ -90,7 +89,7 @@
{ {
struct ath_softc *sc = hw->priv; struct ath_softc *sc = hw->priv;
struct ath_hw *ah = sc->sc_ah; struct ath_hw *ah = sc->sc_ah;
@@ -1599,9 +1599,11 @@ static int ath9k_config(struct ieee80211 @@ -1579,9 +1579,11 @@ static int ath9k_config(struct ieee80211
if (changed & IEEE80211_CONF_CHANGE_CHANNEL) { if (changed & IEEE80211_CONF_CHANGE_CHANNEL) {
struct ieee80211_channel *curchan = hw->conf.channel; struct ieee80211_channel *curchan = hw->conf.channel;
@ -102,7 +101,7 @@
if (ah->curchan) if (ah->curchan)
old_pos = ah->curchan - &ah->channels[0]; old_pos = ah->curchan - &ah->channels[0];
@@ -1649,7 +1651,23 @@ static int ath9k_config(struct ieee80211 @@ -1629,7 +1631,23 @@ static int ath9k_config(struct ieee80211
memset(&sc->survey[pos], 0, sizeof(struct survey_info)); memset(&sc->survey[pos], 0, sizeof(struct survey_info));
} }
@ -129,7 +128,7 @@
return -EINVAL; return -EINVAL;
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1608,6 +1608,10 @@ int ath9k_hw_reset(struct ath_hw *ah, st @@ -1570,6 +1570,10 @@ int ath9k_hw_reset(struct ath_hw *ah, st
caldata->rtt_hist.num_readings) caldata->rtt_hist.num_readings)
allow_fbs = true; allow_fbs = true;

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/main.c --- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -1673,6 +1673,8 @@ int ath9k_config(struct ieee80211_hw *hw @@ -1653,6 +1653,8 @@ int ath9k_config(struct ieee80211_hw *hw
return -EINVAL; return -EINVAL;
} }
@ -9,7 +9,7 @@
/* /*
* The most recent snapshot of channel->noisefloor for the old * The most recent snapshot of channel->noisefloor for the old
* channel is only available after the hardware reset. Copy it to * channel is only available after the hardware reset. Copy it to
@@ -1687,6 +1689,7 @@ int ath9k_config(struct ieee80211_hw *hw @@ -1667,6 +1669,7 @@ int ath9k_config(struct ieee80211_hw *hw
sc->config.txpowlimit = 2 * conf->power_level; sc->config.txpowlimit = 2 * conf->power_level;
ath9k_cmn_update_txpow(ah, sc->curtxpow, ath9k_cmn_update_txpow(ah, sc->curtxpow,
sc->config.txpowlimit, &sc->curtxpow); sc->config.txpowlimit, &sc->curtxpow);

View file

@ -20,8 +20,8 @@
spinlock_t txbuflock; spinlock_t txbuflock;
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -1732,6 +1732,10 @@ int ath9k_init_debug(struct ath_hw *ah) @@ -1666,6 +1666,10 @@ int ath9k_init_debug(struct ath_hw *ah)
sc, &fops_wiphy); &fops_interrupt);
debugfs_create_file("xmit", S_IRUSR, sc->debug.debugfs_phy, sc, debugfs_create_file("xmit", S_IRUSR, sc->debug.debugfs_phy, sc,
&fops_xmit); &fops_xmit);
+ debugfs_create_u32("qlen_single", S_IRUSR | S_IWUSR, + debugfs_create_u32("qlen_single", S_IRUSR | S_IWUSR,
@ -57,7 +57,7 @@
while (bf) { while (bf) {
u16 seqno = bf->bf_state.seqno; u16 seqno = bf->bf_state.seqno;
@@ -885,6 +895,7 @@ static enum ATH_AGGR_STATUS ath_tx_form_ @@ -884,6 +894,7 @@ static enum ATH_AGGR_STATUS ath_tx_form_
ath_tx_addto_baw(sc, tid, seqno); ath_tx_addto_baw(sc, tid, seqno);
bf->bf_state.ndelim = ndelim; bf->bf_state.ndelim = ndelim;
@ -65,7 +65,7 @@
__skb_unlink(skb, &tid->buf_q); __skb_unlink(skb, &tid->buf_q);
list_add_tail(&bf->list, bf_q); list_add_tail(&bf->list, bf_q);
if (bf_prev) if (bf_prev)
@@ -1740,6 +1751,8 @@ static void ath_tx_send_ampdu(struct ath @@ -1739,6 +1750,8 @@ static void ath_tx_send_ampdu(struct ath
/* Add sub-frame to BAW */ /* Add sub-frame to BAW */
ath_tx_addto_baw(sc, tid, bf->bf_state.seqno); ath_tx_addto_baw(sc, tid, bf->bf_state.seqno);
@ -74,7 +74,7 @@
/* Queue to h/w without aggregation */ /* Queue to h/w without aggregation */
TX_STAT_INC(txctl->txq->axq_qnum, a_queued_hw); TX_STAT_INC(txctl->txq->axq_qnum, a_queued_hw);
bf->bf_lastbf = bf; bf->bf_lastbf = bf;
@@ -1864,22 +1877,11 @@ error: @@ -1863,22 +1876,11 @@ error:
/* FIXME: tx power */ /* FIXME: tx power */
static void ath_tx_start_dma(struct ath_softc *sc, struct sk_buff *skb, static void ath_tx_start_dma(struct ath_softc *sc, struct sk_buff *skb,
@ -99,7 +99,7 @@
if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && tid) { if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) && tid) {
/* /*
@@ -1911,6 +1913,7 @@ int ath_tx_start(struct ieee80211_hw *hw @@ -1910,6 +1912,7 @@ int ath_tx_start(struct ieee80211_hw *hw
struct ieee80211_vif *vif = info->control.vif; struct ieee80211_vif *vif = info->control.vif;
struct ath_softc *sc = hw->priv; struct ath_softc *sc = hw->priv;
struct ath_txq *txq = txctl->txq; struct ath_txq *txq = txctl->txq;
@ -107,7 +107,7 @@
int padpos, padsize; int padpos, padsize;
int frmlen = skb->len + FCS_LEN; int frmlen = skb->len + FCS_LEN;
int q; int q;
@@ -1953,6 +1956,24 @@ int ath_tx_start(struct ieee80211_hw *hw @@ -1952,6 +1955,24 @@ int ath_tx_start(struct ieee80211_hw *hw
setup_frame_info(hw, skb, frmlen); setup_frame_info(hw, skb, frmlen);
@ -132,7 +132,7 @@
/* /*
* At this point, the vif, hw_key and sta pointers in the tx control * At this point, the vif, hw_key and sta pointers in the tx control
* info are no longer valid (overwritten by the ath_frame_info data. * info are no longer valid (overwritten by the ath_frame_info data.
@@ -1967,7 +1988,7 @@ int ath_tx_start(struct ieee80211_hw *hw @@ -1966,7 +1987,7 @@ int ath_tx_start(struct ieee80211_hw *hw
txq->stopped = true; txq->stopped = true;
} }

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1394,10 +1394,16 @@ static bool ath9k_hw_set_reset_reg(struc @@ -1395,10 +1395,16 @@ static bool ath9k_hw_set_reset_reg(struc
static bool ath9k_hw_chip_reset(struct ath_hw *ah, static bool ath9k_hw_chip_reset(struct ath_hw *ah,
struct ath9k_channel *chan) struct ath9k_channel *chan)
{ {

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1005,16 +1005,26 @@ void ath9k_hw_init_global_settings(struc @@ -1006,16 +1006,26 @@ void ath9k_hw_init_global_settings(struc
if (IS_CHAN_HALF_RATE(chan)) { if (IS_CHAN_HALF_RATE(chan)) {
eifs = 175; eifs = 175;

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/hw.c --- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1006,31 +1006,35 @@ void ath9k_hw_init_global_settings(struc @@ -1007,31 +1007,35 @@ void ath9k_hw_init_global_settings(struc
if (IS_CHAN_HALF_RATE(chan)) { if (IS_CHAN_HALF_RATE(chan)) {
eifs = 175; eifs = 175;

View file

@ -1,42 +1,35 @@
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -969,34 +969,6 @@ static ssize_t read_file_recv(struct fil @@ -942,27 +942,6 @@ static ssize_t read_file_recv(struct fil
"%18s : %10u\n", "DECRYPT BUSY ERR", PHY_ERR("HT-RATE ERR", ATH9K_PHYERR_HT_RATE_ILLEGAL);
sc->debug.stats.rxstats.decrypt_busy_err);
- len += snprintf(buf + len, size - len, len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "RSSI-CTL0", - "%22s : %10d\n", "RSSI-CTL0",
- sc->debug.stats.rxstats.rs_rssi_ctl0); - sc->debug.stats.rxstats.rs_rssi_ctl0);
-
- len += snprintf(buf + len, size - len, - len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "RSSI-CTL1", - "%22s : %10d\n", "RSSI-CTL1",
- sc->debug.stats.rxstats.rs_rssi_ctl1); - sc->debug.stats.rxstats.rs_rssi_ctl1);
-
- len += snprintf(buf + len, size - len, - len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "RSSI-CTL2", - "%22s : %10d\n", "RSSI-CTL2",
- sc->debug.stats.rxstats.rs_rssi_ctl2); - sc->debug.stats.rxstats.rs_rssi_ctl2);
-
- len += snprintf(buf + len, size - len, - len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "RSSI-EXT0", - "%22s : %10d\n", "RSSI-EXT0",
- sc->debug.stats.rxstats.rs_rssi_ext0); - sc->debug.stats.rxstats.rs_rssi_ext0);
-
- len += snprintf(buf + len, size - len, - len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "RSSI-EXT1", - "%22s : %10d\n", "RSSI-EXT1",
- sc->debug.stats.rxstats.rs_rssi_ext1); - sc->debug.stats.rxstats.rs_rssi_ext1);
-
- len += snprintf(buf + len, size - len, - len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "RSSI-EXT2", - "%22s : %10d\n", "RSSI-EXT2",
- sc->debug.stats.rxstats.rs_rssi_ext2); - sc->debug.stats.rxstats.rs_rssi_ext2);
-
- len += snprintf(buf + len, size - len, - len += snprintf(buf + len, size - len,
- "%18s : %10d\n", "Rx Antenna", - "%22s : %10d\n", "Rx Antenna",
- sc->debug.stats.rxstats.rs_antenna); - sc->debug.stats.rxstats.rs_antenna);
- - len += snprintf(buf + len, size - len,
PHY_ERR("UNDERRUN", ATH9K_PHYERR_UNDERRUN); "%22s : %10u\n", "RX-Pkts-All",
PHY_ERR("TIMING", ATH9K_PHYERR_TIMING); sc->debug.stats.rxstats.rx_pkts_all);
PHY_ERR("PARITY", ATH9K_PHYERR_PARITY); len += snprintf(buf + len, size - len,
@@ -1073,16 +1045,6 @@ void ath_debug_stat_rx(struct ath_softc @@ -1009,16 +988,6 @@ void ath_debug_stat_rx(struct ath_softc
RX_PHY_ERR_INC(phyerr); RX_PHY_ERR_INC(rs->rs_phyerr);
} }
- sc->debug.stats.rxstats.rs_rssi_ctl0 = rs->rs_rssi_ctl0; - sc->debug.stats.rxstats.rs_rssi_ctl0 = rs->rs_rssi_ctl0;

View file

@ -37,7 +37,7 @@
--- a/net/mac80211/rx.c --- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c +++ b/net/mac80211/rx.c
@@ -1269,6 +1269,7 @@ ieee80211_rx_h_sta_process(struct ieee80 @@ -1270,6 +1270,7 @@ ieee80211_rx_h_sta_process(struct ieee80
struct sk_buff *skb = rx->skb; struct sk_buff *skb = rx->skb;
struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(skb); struct ieee80211_rx_status *status = IEEE80211_SKB_RXCB(skb);
struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data; struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
@ -45,7 +45,7 @@
if (!sta) if (!sta)
return RX_CONTINUE; return RX_CONTINUE;
@@ -1311,6 +1312,19 @@ ieee80211_rx_h_sta_process(struct ieee80 @@ -1312,6 +1313,19 @@ ieee80211_rx_h_sta_process(struct ieee80
sta->last_signal = status->signal; sta->last_signal = status->signal;
ewma_add(&sta->avg_signal, -status->signal); ewma_add(&sta->avg_signal, -status->signal);
@ -189,7 +189,7 @@
/* Record packet only when both main_rssi and alt_rssi is positive */ /* Record packet only when both main_rssi and alt_rssi is positive */
--- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c --- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c
+++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c +++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c
@@ -483,12 +483,12 @@ int ath9k_hw_process_rxdesc_edma(struct @@ -463,12 +463,12 @@ int ath9k_hw_process_rxdesc_edma(struct
/* XXX: Keycache */ /* XXX: Keycache */
rxs->rs_rssi = MS(rxsp->status5, AR_RxRSSICombined); rxs->rs_rssi = MS(rxsp->status5, AR_RxRSSICombined);
@ -250,7 +250,7 @@
if (ads.ds_rxstatus8 & AR_RxKeyIdxValid) if (ads.ds_rxstatus8 & AR_RxKeyIdxValid)
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -1047,12 +1047,12 @@ void ath_debug_stat_rx(struct ath_softc @@ -990,12 +990,12 @@ void ath_debug_stat_rx(struct ath_softc
spin_lock(&sc->debug.samp_lock); spin_lock(&sc->debug.samp_lock);
RX_SAMP_DBG(jiffies) = jiffies; RX_SAMP_DBG(jiffies) = jiffies;

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/ath9k.h --- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++ b/drivers/net/wireless/ath/ath9k/ath9k.h +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
@@ -475,6 +475,9 @@ void ath9k_btcoex_timer_pause(struct ath @@ -505,6 +505,9 @@ static inline u16 ath9k_btcoex_aggr_limi
#ifdef CONFIG_MAC80211_LEDS #ifdef CONFIG_MAC80211_LEDS
void ath_init_leds(struct ath_softc *sc); void ath_init_leds(struct ath_softc *sc);
void ath_deinit_leds(struct ath_softc *sc); void ath_deinit_leds(struct ath_softc *sc);
@ -10,7 +10,7 @@
#else #else
static inline void ath_init_leds(struct ath_softc *sc) static inline void ath_init_leds(struct ath_softc *sc)
{ {
@@ -595,6 +598,13 @@ struct ath9k_vif_iter_data { @@ -625,6 +628,13 @@ struct ath9k_vif_iter_data {
int nothers; /* number of vifs not specified above. */ int nothers; /* number of vifs not specified above. */
}; };
@ -24,7 +24,7 @@
struct ath_softc { struct ath_softc {
struct ieee80211_hw *hw; struct ieee80211_hw *hw;
struct device *dev; struct device *dev;
@@ -638,9 +648,8 @@ struct ath_softc { @@ -668,9 +678,8 @@ struct ath_softc {
struct ieee80211_supported_band sbands[IEEE80211_NUM_BANDS]; struct ieee80211_supported_band sbands[IEEE80211_NUM_BANDS];
#ifdef CONFIG_MAC80211_LEDS #ifdef CONFIG_MAC80211_LEDS
@ -171,7 +171,7 @@
--- a/drivers/net/wireless/ath/ath9k/init.c --- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c +++ b/drivers/net/wireless/ath/ath9k/init.c
@@ -817,7 +817,7 @@ int ath9k_init_device(u16 devid, struct @@ -757,7 +757,7 @@ int ath9k_init_device(u16 devid, struct
#ifdef CONFIG_MAC80211_LEDS #ifdef CONFIG_MAC80211_LEDS
/* must be initialized before ieee80211_register_hw */ /* must be initialized before ieee80211_register_hw */
@ -182,7 +182,7 @@
#endif #endif
--- a/drivers/net/wireless/ath/ath9k/debug.c --- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c +++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -1304,6 +1304,61 @@ static const struct file_operations fops @@ -1247,6 +1247,61 @@ static const struct file_operations fops
.llseek = default_llseek, .llseek = default_llseek,
}; };
@ -244,7 +244,7 @@
void ath9k_debug_samp_bb_mac(struct ath_softc *sc) void ath9k_debug_samp_bb_mac(struct ath_softc *sc)
{ {
#define ATH_SAMP_DBG(c) (sc->debug.bb_mac_samp[sc->debug.sampidx].c) #define ATH_SAMP_DBG(c) (sc->debug.bb_mac_samp[sc->debug.sampidx].c)
@@ -1728,6 +1783,11 @@ int ath9k_init_debug(struct ath_hw *ah) @@ -1671,6 +1726,11 @@ int ath9k_init_debug(struct ath_hw *ah)
debugfs_create_file("samples", S_IRUSR, sc->debug.debugfs_phy, sc, debugfs_create_file("samples", S_IRUSR, sc->debug.debugfs_phy, sc,
&fops_samps); &fops_samps);

View file

@ -1,6 +1,6 @@
--- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c --- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c
+++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c +++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c
@@ -346,7 +346,6 @@ static bool ar9003_hw_get_isr(struct ath @@ -326,7 +326,6 @@ static bool ar9003_hw_get_isr(struct ath
static int ar9003_hw_proc_txdesc(struct ath_hw *ah, void *ds, static int ar9003_hw_proc_txdesc(struct ath_hw *ah, void *ds,
struct ath_tx_status *ts) struct ath_tx_status *ts)
{ {
@ -8,7 +8,7 @@
struct ar9003_txs *ads; struct ar9003_txs *ads;
u32 status; u32 status;
@@ -356,11 +355,7 @@ static int ar9003_hw_proc_txdesc(struct @@ -336,11 +335,7 @@ static int ar9003_hw_proc_txdesc(struct
if ((status & AR_TxDone) == 0) if ((status & AR_TxDone) == 0)
return -EINPROGRESS; return -EINPROGRESS;
@ -21,7 +21,7 @@
if ((MS(ads->ds_info, AR_DescId) != ATHEROS_VENDOR_ID) || if ((MS(ads->ds_info, AR_DescId) != ATHEROS_VENDOR_ID) ||
(MS(ads->ds_info, AR_TxRxDesc) != 1)) { (MS(ads->ds_info, AR_TxRxDesc) != 1)) {
@@ -374,6 +369,7 @@ static int ar9003_hw_proc_txdesc(struct @@ -354,6 +349,7 @@ static int ar9003_hw_proc_txdesc(struct
ts->ts_seqnum = MS(status, AR_SeqNum); ts->ts_seqnum = MS(status, AR_SeqNum);
ts->tid = MS(status, AR_TxTid); ts->tid = MS(status, AR_TxTid);
@ -77,7 +77,7 @@
EXPORT_SYMBOL(ath9k_hw_beaconq_setup); EXPORT_SYMBOL(ath9k_hw_beaconq_setup);
--- a/drivers/net/wireless/ath/ath9k/main.c --- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -2323,6 +2323,7 @@ static int ath9k_tx_last_beacon(struct i @@ -2303,6 +2303,7 @@ static int ath9k_tx_last_beacon(struct i
struct ath_vif *avp; struct ath_vif *avp;
struct ath_buf *bf; struct ath_buf *bf;
struct ath_tx_status ts; struct ath_tx_status ts;
@ -85,7 +85,7 @@
int status; int status;
vif = sc->beacon.bslot[0]; vif = sc->beacon.bslot[0];
@@ -2333,7 +2334,7 @@ static int ath9k_tx_last_beacon(struct i @@ -2313,7 +2314,7 @@ static int ath9k_tx_last_beacon(struct i
if (!avp->is_bslot_active) if (!avp->is_bslot_active)
return 0; return 0;
@ -96,7 +96,7 @@
bf = avp->av_bcbuf; bf = avp->av_bcbuf;
--- a/drivers/net/wireless/ath/ath9k/xmit.c --- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c +++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -2318,9 +2318,12 @@ void ath_tx_edma_tasklet(struct ath_soft @@ -2317,9 +2317,12 @@ void ath_tx_edma_tasklet(struct ath_soft
break; break;
} }

View file

@ -19,7 +19,7 @@
/** /**
--- a/net/mac80211/rx.c --- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c +++ b/net/mac80211/rx.c
@@ -176,7 +176,8 @@ ieee80211_add_rx_radiotap_header(struct @@ -177,7 +177,8 @@ ieee80211_add_rx_radiotap_header(struct
pos += 2; pos += 2;
/* IEEE80211_RADIOTAP_DBM_ANTSIGNAL */ /* IEEE80211_RADIOTAP_DBM_ANTSIGNAL */
@ -29,7 +29,7 @@
*pos = status->signal; *pos = status->signal;
rthdr->it_present |= rthdr->it_present |=
cpu_to_le32(1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL); cpu_to_le32(1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL);
@@ -1309,8 +1310,10 @@ ieee80211_rx_h_sta_process(struct ieee80 @@ -1310,8 +1311,10 @@ ieee80211_rx_h_sta_process(struct ieee80
sta->rx_fragments++; sta->rx_fragments++;
sta->rx_bytes += rx->skb->len; sta->rx_bytes += rx->skb->len;

View file

@ -101,7 +101,7 @@
+} +}
--- a/drivers/net/wireless/rt2x00/rt2x00.h --- a/drivers/net/wireless/rt2x00/rt2x00.h
+++ b/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h
@@ -554,6 +554,7 @@ struct rt2x00lib_ops { @@ -560,6 +560,7 @@ struct rt2x00lib_ops {
const u8 *data, const size_t len); const u8 *data, const size_t len);
int (*load_firmware) (struct rt2x00_dev *rt2x00dev, int (*load_firmware) (struct rt2x00_dev *rt2x00dev,
const u8 *data, const size_t len); const u8 *data, const size_t len);
@ -109,7 +109,7 @@
/* /*
* Device initialization/deinitialization handlers. * Device initialization/deinitialization handlers.
@@ -706,6 +707,7 @@ enum rt2x00_capability_flags { @@ -713,6 +714,7 @@ enum rt2x00_capability_flags {
REQUIRE_SW_SEQNO, REQUIRE_SW_SEQNO,
REQUIRE_HT_TX_DESC, REQUIRE_HT_TX_DESC,
REQUIRE_PS_AUTOWAKE, REQUIRE_PS_AUTOWAKE,
@ -117,7 +117,7 @@
/* /*
* Capabilities * Capabilities
@@ -960,6 +962,11 @@ struct rt2x00_dev { @@ -968,6 +970,11 @@ struct rt2x00_dev {
const struct firmware *fw; const struct firmware *fw;
/* /*
@ -131,7 +131,7 @@
DECLARE_KFIFO_PTR(txstatus_fifo, u32); DECLARE_KFIFO_PTR(txstatus_fifo, u32);
--- a/drivers/net/wireless/rt2x00/rt2x00lib.h --- a/drivers/net/wireless/rt2x00/rt2x00lib.h
+++ b/drivers/net/wireless/rt2x00/rt2x00lib.h +++ b/drivers/net/wireless/rt2x00/rt2x00lib.h
@@ -309,6 +309,22 @@ static inline void rt2x00lib_free_firmwa @@ -322,6 +322,22 @@ static inline void rt2x00lib_free_firmwa
#endif /* CONFIG_RT2X00_LIB_FIRMWARE */ #endif /* CONFIG_RT2X00_LIB_FIRMWARE */
/* /*
@ -229,7 +229,7 @@
* Initialization functions. * Initialization functions.
*/ */
static bool rt2800pci_get_entry_state(struct queue_entry *entry) static bool rt2800pci_get_entry_state(struct queue_entry *entry)
@@ -1040,6 +1044,7 @@ static const struct rt2x00lib_ops rt2800 @@ -1052,6 +1056,7 @@ static const struct rt2x00lib_ops rt2800
.get_firmware_name = rt2800pci_get_firmware_name, .get_firmware_name = rt2800pci_get_firmware_name,
.check_firmware = rt2800_check_firmware, .check_firmware = rt2800_check_firmware,
.load_firmware = rt2800_load_firmware, .load_firmware = rt2800_load_firmware,
@ -239,7 +239,7 @@
.get_entry_state = rt2800pci_get_entry_state, .get_entry_state = rt2800pci_get_entry_state,
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c --- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
@@ -1157,6 +1157,10 @@ int rt2x00lib_probe_dev(struct rt2x00_de @@ -1161,6 +1161,10 @@ int rt2x00lib_probe_dev(struct rt2x00_de
BIT(NL80211_IFTYPE_MESH_POINT) | BIT(NL80211_IFTYPE_MESH_POINT) |
BIT(NL80211_IFTYPE_WDS); BIT(NL80211_IFTYPE_WDS);
@ -250,7 +250,7 @@
/* /*
* Initialize work. * Initialize work.
*/ */
@@ -1280,6 +1284,11 @@ void rt2x00lib_remove_dev(struct rt2x00_ @@ -1284,6 +1288,11 @@ void rt2x00lib_remove_dev(struct rt2x00_
*/ */
if (rt2x00dev->drv_data) if (rt2x00dev->drv_data)
kfree(rt2x00dev->drv_data); kfree(rt2x00dev->drv_data);

View file

@ -9,7 +9,7 @@
{ {
memcpy(rt2x00dev->eeprom, rt2x00dev->eeprom_file->data, EEPROM_SIZE); memcpy(rt2x00dev->eeprom, rt2x00dev->eeprom_file->data, EEPROM_SIZE);
} }
@@ -926,8 +926,9 @@ static int rt2800pci_validate_eeprom(str @@ -938,8 +938,9 @@ static int rt2800pci_validate_eeprom(str
/* /*
* Read EEPROM into buffer * Read EEPROM into buffer
*/ */

View file

@ -12,7 +12,7 @@
#endif /* _RT2X00_PLATFORM_H */ #endif /* _RT2X00_PLATFORM_H */
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c --- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c +++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
@@ -825,6 +825,22 @@ static int rt2x00lib_probe_hw_modes(stru @@ -829,6 +829,22 @@ static int rt2x00lib_probe_hw_modes(stru
unsigned int num_rates; unsigned int num_rates;
unsigned int i; unsigned int i;
@ -37,7 +37,7 @@
num_rates += 4; num_rates += 4;
--- a/drivers/net/wireless/rt2x00/rt2x00.h --- a/drivers/net/wireless/rt2x00/rt2x00.h
+++ b/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h
@@ -419,6 +419,7 @@ struct hw_mode_spec { @@ -425,6 +425,7 @@ struct hw_mode_spec {
unsigned int supported_bands; unsigned int supported_bands;
#define SUPPORT_BAND_2GHZ 0x00000001 #define SUPPORT_BAND_2GHZ 0x00000001
#define SUPPORT_BAND_5GHZ 0x00000002 #define SUPPORT_BAND_5GHZ 0x00000002