|
@@ -487,7 +487,7 @@ static void ath9k_tasklet(unsigned long data)
|
|
|
* the next Beacon.
|
|
|
*/
|
|
|
DPRINTF(sc, ATH_DBG_PS, "TSFOOR - Sync with next Beacon\n");
|
|
|
- sc->sc_flags |= SC_OP_WAIT_FOR_BEACON;
|
|
|
+ sc->sc_flags |= SC_OP_WAIT_FOR_BEACON | SC_OP_BEACON_SYNC;
|
|
|
}
|
|
|
|
|
|
/* re-enable hardware interrupt */
|
|
@@ -914,6 +914,13 @@ static void ath9k_bss_assoc_info(struct ath_softc *sc,
|
|
|
if (avp->av_opmode == NL80211_IFTYPE_STATION) {
|
|
|
sc->curaid = bss_conf->aid;
|
|
|
ath9k_hw_write_associd(sc);
|
|
|
+
|
|
|
+ /*
|
|
|
+ * Request a re-configuration of Beacon related timers
|
|
|
+ * on the receipt of the first Beacon frame (i.e.,
|
|
|
+ * after time sync with the AP).
|
|
|
+ */
|
|
|
+ sc->sc_flags |= SC_OP_BEACON_SYNC;
|
|
|
}
|
|
|
|
|
|
/* Configure the beacon */
|