ath9k: Reset SC_OP_TSF_RESET flag after stuck beacon
Jeff Hansen [Wed, 27 May 2009 12:48:27 +0000 (12:48 +0000)]
I have a TrendNet 652-BRP running OpenWRT + ath9k very well.  The only
problem is that the beacon gets stuck maybe once a day.  After
Vasanthakumar Thiagarajan's "ath9k: cleanup beacon parameters
configuration" patch, ath9k would nearly re-configure the beacons after it
detected the stuck beacon, and did a reset.  But it would fail the
SC_OP_TSF_RESET check in ath_beacon_config_ap.  This patch gets the beacon
fully reconfigured after the reset.

Signed-off-by: Jeff Hansen <x@jeffhansen.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

drivers/net/wireless/ath/ath9k/beacon.c

index a21b213..0c67ed2 100644 (file)
@@ -411,6 +411,7 @@ void ath_beacon_tasklet(unsigned long data)
                } else if (sc->beacon.bmisscnt >= BSTUCK_THRESH) {
                        DPRINTF(sc, ATH_DBG_BEACON,
                                "beacon is officially stuck\n");
+                       sc->sc_flags |= SC_OP_TSF_RESET;
                        ath_reset(sc, false);
                }