summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/beacon.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2011-03-22 21:54:18 +0100
committerJohn W. Linville <linville@tuxdriver.com>2011-03-30 14:15:18 -0400
commit87c510fe2d4f193cd4eb518364a2dfa5059b1218 (patch)
tree80d7b4d11df90ddbb4554b0f09c8c9f5b5717ad5 /drivers/net/wireless/ath/ath9k/beacon.c
parentdd347f2fb2ddb20a80e9a8285252bf208ab91398 (diff)
downloadop-kernel-dev-87c510fe2d4f193cd4eb518364a2dfa5059b1218.zip
op-kernel-dev-87c510fe2d4f193cd4eb518364a2dfa5059b1218.tar.gz
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.c3
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 b5eab2f..6ebeafe 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");
OpenPOWER on IntegriCloud