diff options
Diffstat (limited to 'package/mac80211/patches/511-ath9k_per_chan_nf.patch')
-rw-r--r-- | package/mac80211/patches/511-ath9k_per_chan_nf.patch | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/package/mac80211/patches/511-ath9k_per_chan_nf.patch b/package/mac80211/patches/511-ath9k_per_chan_nf.patch deleted file mode 100644 index cbf44e640..000000000 --- a/package/mac80211/patches/511-ath9k_per_chan_nf.patch +++ /dev/null @@ -1,97 +0,0 @@ ---- a/drivers/net/wireless/ath/ath9k/hw.h -+++ b/drivers/net/wireless/ath/ath9k/hw.h -@@ -342,7 +342,6 @@ struct ath9k_hw_cal_data { - int32_t CalValid; - int8_t iCoff; - int8_t qCoff; -- int16_t rawNoiseFloor; - bool paprd_done; - bool nfcal_pending; - bool nfcal_interference; -@@ -356,6 +355,7 @@ struct ath9k_channel { - u16 channel; - u32 channelFlags; - u32 chanmode; -+ s16 noisefloor; - }; - - #define IS_CHAN_G(_c) ((((_c)->channelFlags & (CHANNEL_G)) == CHANNEL_G) || \ ---- a/drivers/net/wireless/ath/ath9k/calib.c -+++ b/drivers/net/wireless/ath/ath9k/calib.c -@@ -346,34 +346,34 @@ bool ath9k_hw_getnf(struct ath_hw *ah, s - struct ieee80211_channel *c = chan->chan; - struct ath9k_hw_cal_data *caldata = ah->caldata; - -- if (!caldata) -- return false; -- - chan->channelFlags &= (~CHANNEL_CW_INT); - if (REG_READ(ah, AR_PHY_AGC_CONTROL) & AR_PHY_AGC_CONTROL_NF) { - ath_print(common, ATH_DBG_CALIBRATE, - "NF did not complete in calibration window\n"); -- nf = 0; -- caldata->rawNoiseFloor = nf; - return false; -- } else { -- ath9k_hw_do_getnf(ah, nfarray); -- ath9k_hw_nf_sanitize(ah, nfarray); -- nf = nfarray[0]; -- if (ath9k_hw_get_nf_thresh(ah, c->band, &nfThresh) -- && nf > nfThresh) { -- ath_print(common, ATH_DBG_CALIBRATE, -- "noise floor failed detected; " -- "detected %d, threshold %d\n", -- nf, nfThresh); -- chan->channelFlags |= CHANNEL_CW_INT; -- } -+ } -+ -+ ath9k_hw_do_getnf(ah, nfarray); -+ ath9k_hw_nf_sanitize(ah, nfarray); -+ nf = nfarray[0]; -+ if (ath9k_hw_get_nf_thresh(ah, c->band, &nfThresh) -+ && nf > nfThresh) { -+ ath_print(common, ATH_DBG_CALIBRATE, -+ "noise floor failed detected; " -+ "detected %d, threshold %d\n", -+ nf, nfThresh); -+ chan->channelFlags |= CHANNEL_CW_INT; -+ } -+ -+ if (!caldata) { -+ chan->noisefloor = nf; -+ return false; - } - - h = caldata->nfCalHist; - caldata->nfcal_pending = false; - ath9k_hw_update_nfcal_hist_buffer(ah, caldata, nfarray); -- caldata->rawNoiseFloor = h[0].privNF; -+ chan->noisefloor = h[0].privNF; - return true; - } - -@@ -401,10 +401,10 @@ void ath9k_init_nfcal_hist_buffer(struct - - s16 ath9k_hw_getchan_noise(struct ath_hw *ah, struct ath9k_channel *chan) - { -- if (!ah->caldata || !ah->caldata->rawNoiseFloor) -+ if (!ah->curchan || !ah->curchan->noisefloor) - return ath9k_hw_get_default_nf(ah, chan); - -- return ah->caldata->rawNoiseFloor; -+ return ah->curchan->noisefloor; - } - EXPORT_SYMBOL(ath9k_hw_getchan_noise); - ---- a/drivers/net/wireless/ath/ath9k/hw.c -+++ b/drivers/net/wireless/ath/ath9k/hw.c -@@ -1251,7 +1251,7 @@ int ath9k_hw_reset(struct ath_hw *ah, st - if (!ath9k_hw_setpower(ah, ATH9K_PM_AWAKE)) - return -EIO; - -- if (curchan && !ah->chip_fullsleep && ah->caldata) -+ if (curchan && !ah->chip_fullsleep) - ath9k_hw_getnf(ah, curchan); - - ah->caldata = caldata; |