aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/wireless/ath/ath9k/ar9002_hw.c12
-rw-r--r--drivers/net/wireless/ath/ath9k/hw.c7
-rw-r--r--drivers/net/wireless/ath/ath9k/hw.h1
3 files changed, 15 insertions, 5 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9002_hw.c b/drivers/net/wireless/ath/ath9k/ar9002_hw.c
index cf36f6467914..17b98a3f33bc 100644
--- a/drivers/net/wireless/ath/ath9k/ar9002_hw.c
+++ b/drivers/net/wireless/ath/ath9k/ar9002_hw.c
@@ -555,6 +555,18 @@ void ar9002_hw_enable_async_fifo(struct ath_hw *ah)
555 } 555 }
556} 556}
557 557
558/*
559 * We don't enable WEP aggregation on mac80211 but we keep this
560 * around for HAL unification purposes.
561 */
562void ar9002_hw_enable_wep_aggregation(struct ath_hw *ah)
563{
564 if (AR_SREV_9287_12_OR_LATER(ah)) {
565 REG_SET_BIT(ah, AR_PCU_MISC_MODE2,
566 AR_PCU_MISC_MODE2_ENABLE_AGGWEP);
567 }
568}
569
558/* Sets up the AR5008/AR9001/AR9002 hardware familiy callbacks */ 570/* Sets up the AR5008/AR9001/AR9002 hardware familiy callbacks */
559void ar9002_hw_attach_ops(struct ath_hw *ah) 571void ar9002_hw_attach_ops(struct ath_hw *ah)
560{ 572{
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c
index 1dc1b485c3c3..a6f8032e54d6 100644
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
@@ -1265,12 +1265,9 @@ int ath9k_hw_reset(struct ath_hw *ah, struct ath9k_channel *chan,
1265 1265
1266 ath9k_hw_init_global_settings(ah); 1266 ath9k_hw_init_global_settings(ah);
1267 1267
1268 if (!AR_SREV_9300_20_OR_LATER(ah)) 1268 if (!AR_SREV_9300_20_OR_LATER(ah)) {
1269 ar9002_hw_enable_async_fifo(ah); 1269 ar9002_hw_enable_async_fifo(ah);
1270 1270 ar9002_hw_enable_wep_aggregation(ah);
1271 if (AR_SREV_9287_12_OR_LATER(ah)) {
1272 REG_SET_BIT(ah, AR_PCU_MISC_MODE2,
1273 AR_PCU_MISC_MODE2_ENABLE_AGGWEP);
1274 } 1271 }
1275 1272
1276 REG_WRITE(ah, AR_STA_ID1, 1273 REG_WRITE(ah, AR_STA_ID1,
diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h
index e4eacdd4c810..affb848a2b98 100644
--- a/drivers/net/wireless/ath/ath9k/hw.h
+++ b/drivers/net/wireless/ath/ath9k/hw.h
@@ -851,6 +851,7 @@ void ath9k_hw_get_delta_slope_vals(struct ath_hw *ah, u32 coef_scaled,
851void ar9002_hw_cck_chan14_spread(struct ath_hw *ah); 851void ar9002_hw_cck_chan14_spread(struct ath_hw *ah);
852int ar9002_hw_rf_claim(struct ath_hw *ah); 852int ar9002_hw_rf_claim(struct ath_hw *ah);
853void ar9002_hw_enable_async_fifo(struct ath_hw *ah); 853void ar9002_hw_enable_async_fifo(struct ath_hw *ah);
854void ar9002_hw_enable_wep_aggregation(struct ath_hw *ah);
854 855
855/* 856/*
856 * Code specifric to AR9003, we stuff these here to avoid callbacks 857 * Code specifric to AR9003, we stuff these here to avoid callbacks