-@@ -1242,8 +801,7 @@ void ath9k_hw_deinit(struct ath_hw *ah)
- ath9k_hw_setpower(ah, ATH9K_PM_FULL_SLEEP);
-
- free_hw:
+@@ -1214,310 +770,72 @@ void ath9k_hw_init_global_settings(struc
+ /*
+ * 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);
+- if (ah->globaltxtimeout != (u32) -1)
+- ath9k_hw_set_global_txtimeout(ah, ah->globaltxtimeout);
+-}
+-EXPORT_SYMBOL(ath9k_hw_init_global_settings);
+-
+-void ath9k_hw_deinit(struct ath_hw *ah)
+-{
+- struct ath_common *common = ath9k_hw_common(ah);
+-
+- if (common->state < ATH_HW_INITIALIZED)
+- goto free_hw;
+-
+- if (!AR_SREV_9100(ah))
+- ath9k_hw_ani_disable(ah);
+-
+- ath9k_hw_setpower(ah, ATH9K_PM_FULL_SLEEP);
+-
+-free_hw: