diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-03-22 21:54:18 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-03-30 20:15:18 +0200 |
commit | 87c510fe2d4f193cd4eb518364a2dfa5059b1218 (patch) | |
tree | 80d7b4d11df90ddbb4554b0f09c8c9f5b5717ad5 /drivers/net/wireless/ath/ath9k/beacon.c | |
parent | ath9k: fix beacon timer handling issues (diff) | |
download | linux-87c510fe2d4f193cd4eb518364a2dfa5059b1218.tar.xz linux-87c510fe2d4f193cd4eb518364a2dfa5059b1218.zip |
ath9k: trigger nfcal only after multiple missed beacons in AP mode
Single missed (i.e. not transmitted) beacons in AP mode are not very rare
and not necessarily an indicator of strong interference, so only trigger
noise floor recalibration when multiple consecutive beacons could not
be transmitted.
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/beacon.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/beacon.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/beacon.c b/drivers/net/wireless/ath/ath9k/beacon.c index b5eab2f55824..6ebeafe3a92f 100644 --- a/drivers/net/wireless/ath/ath9k/beacon.c +++ b/drivers/net/wireless/ath/ath9k/beacon.c @@ -368,7 +368,8 @@ void ath_beacon_tasklet(unsigned long data) "missed %u consecutive beacons\n", sc->beacon.bmisscnt); ath9k_hw_stop_dma_queue(ah, sc->beacon.beaconq); - ath9k_hw_bstuck_nfcal(ah); + if (sc->beacon.bmisscnt > 3) + ath9k_hw_bstuck_nfcal(ah); } else if (sc->beacon.bmisscnt >= BSTUCK_THRESH) { ath_dbg(common, ATH_DBG_BSTUCK, "beacon is officially stuck\n"); |