ath9k: fix beacon timer restarts after card resets - improves stability in AP mode

SVN-Revision: 19757
This commit is contained in:
Felix Fietkau 2010-02-19 17:22:37 +00:00
parent 3889c76a6e
commit 6fdcbd0831
1 changed files with 22 additions and 0 deletions

View File

@ -0,0 +1,22 @@
--- a/drivers/net/wireless/ath/ath9k/beacon.c
+++ b/drivers/net/wireless/ath/ath9k/beacon.c
@@ -526,16 +526,13 @@ static void ath_beacon_config_ap(struct
{
u32 nexttbtt, intval;
- /* Configure the timers only when the TSF has to be reset */
-
- if (!(sc->sc_flags & SC_OP_TSF_RESET))
- return;
-
/* NB: the beacon interval is kept internally in TU's */
intval = conf->beacon_interval & ATH9K_BEACON_PERIOD;
intval /= ATH_BCBUF; /* for staggered beacons */
nexttbtt = intval;
- intval |= ATH9K_BEACON_RESET_TSF;
+
+ if (sc->sc_flags & SC_OP_TSF_RESET)
+ intval |= ATH9K_BEACON_RESET_TSF;
/*
* In AP mode we enable the beacon timers and SWBA interrupts to