]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commitdiff
ath9k: trigger nfcal only after multiple missed beacons in AP mode
authorFelix Fietkau <nbd@openwrt.org>
Tue, 22 Mar 2011 20:54:18 +0000 (21:54 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 30 Mar 2011 18:15:18 +0000 (14:15 -0400)
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>
drivers/net/wireless/ath/ath9k/beacon.c

index b5eab2f558248cd73f88c00c04bfa14fd49b596b..6ebeafe3a92f36a5322a8975302bd6f768efffda 100644 (file)
@@ -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");