diff options
-rw-r--r-- | drivers/net/wireless/ath/ath9k/hw.c | 12 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/hw.h | 2 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/main.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/b43/xmit.c | 4 | ||||
-rw-r--r-- | drivers/net/wireless/iwlwifi/pcie/tx.c | 4 | ||||
-rw-r--r-- | drivers/net/wireless/mwifiex/cfg80211.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2800usb.c | 1 |
7 files changed, 20 insertions, 7 deletions
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c index ce41658a6003..fbf43c05713f 100644 --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c | |||
@@ -358,6 +358,14 @@ static void ath9k_hw_init_config(struct ath_hw *ah) | |||
358 | 358 | ||
359 | ah->config.rx_intr_mitigation = true; | 359 | ah->config.rx_intr_mitigation = true; |
360 | 360 | ||
361 | if (AR_SREV_9300_20_OR_LATER(ah)) { | ||
362 | ah->config.rimt_last = 500; | ||
363 | ah->config.rimt_first = 2000; | ||
364 | } else { | ||
365 | ah->config.rimt_last = 250; | ||
366 | ah->config.rimt_first = 700; | ||
367 | } | ||
368 | |||
361 | /* | 369 | /* |
362 | * We need this for PCI devices only (Cardbus, PCI, miniPCI) | 370 | * We need this for PCI devices only (Cardbus, PCI, miniPCI) |
363 | * _and_ if on non-uniprocessor systems (Multiprocessor/HT). | 371 | * _and_ if on non-uniprocessor systems (Multiprocessor/HT). |
@@ -1876,8 +1884,8 @@ int ath9k_hw_reset(struct ath_hw *ah, struct ath9k_channel *chan, | |||
1876 | REG_WRITE(ah, AR_OBS, 8); | 1884 | REG_WRITE(ah, AR_OBS, 8); |
1877 | 1885 | ||
1878 | if (ah->config.rx_intr_mitigation) { | 1886 | if (ah->config.rx_intr_mitigation) { |
1879 | REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_LAST, 500); | 1887 | REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_LAST, ah->config.rimt_last); |
1880 | REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_FIRST, 2000); | 1888 | REG_RMW_FIELD(ah, AR_RIMT, AR_RIMT_FIRST, ah->config.rimt_first); |
1881 | } | 1889 | } |
1882 | 1890 | ||
1883 | if (ah->config.tx_intr_mitigation) { | 1891 | if (ah->config.tx_intr_mitigation) { |
diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h index e766399bdcda..0acd4b5a4892 100644 --- a/drivers/net/wireless/ath/ath9k/hw.h +++ b/drivers/net/wireless/ath/ath9k/hw.h | |||
@@ -310,6 +310,8 @@ struct ath9k_ops_config { | |||
310 | u8 max_txtrig_level; | 310 | u8 max_txtrig_level; |
311 | u16 ani_poll_interval; /* ANI poll interval in ms */ | 311 | u16 ani_poll_interval; /* ANI poll interval in ms */ |
312 | u16 hw_hang_checks; | 312 | u16 hw_hang_checks; |
313 | u16 rimt_first; | ||
314 | u16 rimt_last; | ||
313 | 315 | ||
314 | /* Platform specific config */ | 316 | /* Platform specific config */ |
315 | u32 aspm_l1_fix; | 317 | u32 aspm_l1_fix; |
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c index 73a36551a5ed..5924f72dd493 100644 --- a/drivers/net/wireless/ath/ath9k/main.c +++ b/drivers/net/wireless/ath/ath9k/main.c | |||
@@ -524,7 +524,7 @@ void ath9k_tasklet(unsigned long data) | |||
524 | * successfully after a GTT interrupt, the GTT counter | 524 | * successfully after a GTT interrupt, the GTT counter |
525 | * gets reset to zero here. | 525 | * gets reset to zero here. |
526 | */ | 526 | */ |
527 | /* sc->gtt_cnt = 0; */ | 527 | sc->gtt_cnt = 0; |
528 | 528 | ||
529 | ath_tx_edma_tasklet(sc); | 529 | ath_tx_edma_tasklet(sc); |
530 | } else { | 530 | } else { |
diff --git a/drivers/net/wireless/b43/xmit.c b/drivers/net/wireless/b43/xmit.c index 4ae63f4ddfb2..50e5ddb12fb3 100644 --- a/drivers/net/wireless/b43/xmit.c +++ b/drivers/net/wireless/b43/xmit.c | |||
@@ -821,10 +821,10 @@ void b43_rx(struct b43_wldev *dev, struct sk_buff *skb, const void *_rxhdr) | |||
821 | * channel number in b43. */ | 821 | * channel number in b43. */ |
822 | if (chanstat & B43_RX_CHAN_5GHZ) { | 822 | if (chanstat & B43_RX_CHAN_5GHZ) { |
823 | status.band = IEEE80211_BAND_5GHZ; | 823 | status.band = IEEE80211_BAND_5GHZ; |
824 | status.freq = b43_freq_to_channel_5ghz(chanid); | 824 | status.freq = b43_channel_to_freq_5ghz(chanid); |
825 | } else { | 825 | } else { |
826 | status.band = IEEE80211_BAND_2GHZ; | 826 | status.band = IEEE80211_BAND_2GHZ; |
827 | status.freq = b43_freq_to_channel_2ghz(chanid); | 827 | status.freq = b43_channel_to_freq_2ghz(chanid); |
828 | } | 828 | } |
829 | break; | 829 | break; |
830 | default: | 830 | default: |
diff --git a/drivers/net/wireless/iwlwifi/pcie/tx.c b/drivers/net/wireless/iwlwifi/pcie/tx.c index 3b14fa8abfc7..3d549008b3e2 100644 --- a/drivers/net/wireless/iwlwifi/pcie/tx.c +++ b/drivers/net/wireless/iwlwifi/pcie/tx.c | |||
@@ -289,13 +289,15 @@ static void iwl_pcie_txq_inval_byte_cnt_tbl(struct iwl_trans *trans, | |||
289 | */ | 289 | */ |
290 | void iwl_pcie_txq_inc_wr_ptr(struct iwl_trans *trans, struct iwl_txq *txq) | 290 | void iwl_pcie_txq_inc_wr_ptr(struct iwl_trans *trans, struct iwl_txq *txq) |
291 | { | 291 | { |
292 | struct iwl_trans_pcie *trans_pcie = IWL_TRANS_GET_PCIE_TRANS(trans); | ||
292 | u32 reg = 0; | 293 | u32 reg = 0; |
293 | int txq_id = txq->q.id; | 294 | int txq_id = txq->q.id; |
294 | 295 | ||
295 | if (txq->need_update == 0) | 296 | if (txq->need_update == 0) |
296 | return; | 297 | return; |
297 | 298 | ||
298 | if (trans->cfg->base_params->shadow_reg_enable) { | 299 | if (trans->cfg->base_params->shadow_reg_enable || |
300 | txq_id == trans_pcie->cmd_queue) { | ||
299 | /* shadow register enabled */ | 301 | /* shadow register enabled */ |
300 | iwl_write32(trans, HBUS_TARG_WRPTR, | 302 | iwl_write32(trans, HBUS_TARG_WRPTR, |
301 | txq->q.write_ptr | (txq_id << 8)); | 303 | txq->q.write_ptr | (txq_id << 8)); |
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c b/drivers/net/wireless/mwifiex/cfg80211.c index f37b403e83d0..8bfc07cd330e 100644 --- a/drivers/net/wireless/mwifiex/cfg80211.c +++ b/drivers/net/wireless/mwifiex/cfg80211.c | |||
@@ -2449,7 +2449,7 @@ static int mwifiex_cfg80211_suspend(struct wiphy *wiphy, | |||
2449 | ETH_ALEN); | 2449 | ETH_ALEN); |
2450 | mef_entry->filter[filt_num].byte_seq[MWIFIEX_MEF_MAX_BYTESEQ] = | 2450 | mef_entry->filter[filt_num].byte_seq[MWIFIEX_MEF_MAX_BYTESEQ] = |
2451 | ETH_ALEN; | 2451 | ETH_ALEN; |
2452 | mef_entry->filter[filt_num].offset = 14; | 2452 | mef_entry->filter[filt_num].offset = 28; |
2453 | mef_entry->filter[filt_num].filt_type = TYPE_EQ; | 2453 | mef_entry->filter[filt_num].filt_type = TYPE_EQ; |
2454 | if (filt_num) | 2454 | if (filt_num) |
2455 | mef_entry->filter[filt_num].filt_action = TYPE_OR; | 2455 | mef_entry->filter[filt_num].filt_action = TYPE_OR; |
diff --git a/drivers/net/wireless/rt2x00/rt2800usb.c b/drivers/net/wireless/rt2x00/rt2800usb.c index 5c5c4906c6b6..caddc1b427a9 100644 --- a/drivers/net/wireless/rt2x00/rt2800usb.c +++ b/drivers/net/wireless/rt2x00/rt2800usb.c | |||
@@ -989,6 +989,7 @@ static struct usb_device_id rt2800usb_device_table[] = { | |||
989 | { USB_DEVICE(0x07d1, 0x3c15) }, | 989 | { USB_DEVICE(0x07d1, 0x3c15) }, |
990 | { USB_DEVICE(0x07d1, 0x3c16) }, | 990 | { USB_DEVICE(0x07d1, 0x3c16) }, |
991 | { USB_DEVICE(0x07d1, 0x3c17) }, | 991 | { USB_DEVICE(0x07d1, 0x3c17) }, |
992 | { USB_DEVICE(0x2001, 0x3317) }, | ||
992 | { USB_DEVICE(0x2001, 0x3c1b) }, | 993 | { USB_DEVICE(0x2001, 0x3c1b) }, |
993 | /* Draytek */ | 994 | /* Draytek */ |
994 | { USB_DEVICE(0x07fa, 0x7712) }, | 995 | { USB_DEVICE(0x07fa, 0x7712) }, |