struct survey_info *cur_survey;
--- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c
-@@ -1378,6 +1378,9 @@ int ath9k_init_debug(struct ath_hw *ah)
+@@ -1718,6 +1718,9 @@ int ath9k_init_debug(struct ath_hw *ah)
debugfs_create_file("eeprom", S_IRUSR, sc->debug.debugfs_phy, sc,
&fops_eeprom);
+ &sc->chan_bw);
+
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
+++ b/drivers/net/wireless/ath/ath9k/main.c
-@@ -1654,9 +1654,10 @@ static int ath9k_config(struct ieee80211
+@@ -1649,9 +1649,10 @@ static int ath9k_config(struct ieee80211
if (changed & IEEE80211_CONF_CHANGE_CHANNEL) {
struct ieee80211_channel *curchan = hw->conf.channel;
unsigned long flags;
if (ah->curchan)
-@@ -1709,7 +1710,23 @@ static int ath9k_config(struct ieee80211
+@@ -1704,7 +1705,23 @@ static int ath9k_config(struct ieee80211
memset(&sc->survey[pos], 0, sizeof(struct survey_info));
}
return -EINVAL;
--- a/drivers/net/wireless/ath/ath9k/hw.c
+++ b/drivers/net/wireless/ath/ath9k/hw.c
-@@ -1504,6 +1504,10 @@ int ath9k_hw_reset(struct ath_hw *ah, st
- }
- ah->noise = ath9k_hw_getchan_noise(ah, chan);
+@@ -1548,6 +1548,10 @@ int ath9k_hw_reset(struct ath_hw *ah, st
+ caldata->rtt_hist.num_readings)
+ allow_fbs = true;
+ if (!ah->curchan || ((ah->curchan->channelFlags ^ chan->channelFlags) &
+ (CHANNEL_HALF | CHANNEL_QUARTER)))