aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/main.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/main.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index 2398d4f45f2..28cc9cd52f3 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -2358,16 +2358,6 @@ skip_chan_change:
2358 if (changed & IEEE80211_CONF_CHANGE_POWER) 2358 if (changed & IEEE80211_CONF_CHANGE_POWER)
2359 sc->config.txpowlimit = 2 * conf->power_level; 2359 sc->config.txpowlimit = 2 * conf->power_level;
2360 2360
2361 /*
2362 * The HW TSF has to be reset when the beacon interval changes.
2363 * We set the flag here, and ath_beacon_config_ap() would take this
2364 * into account when it gets called through the subsequent
2365 * config_interface() call - with IFCC_BEACON in the changed field.
2366 */
2367
2368 if (changed & IEEE80211_CONF_CHANGE_BEACON_INTERVAL)
2369 sc->sc_flags |= SC_OP_TSF_RESET;
2370
2371 mutex_unlock(&sc->mutex); 2361 mutex_unlock(&sc->mutex);
2372 2362
2373 return 0; 2363 return 0;
@@ -2635,6 +2625,18 @@ static void ath9k_bss_info_changed(struct ieee80211_hw *hw,
2635 ath9k_bss_assoc_info(sc, vif, bss_conf); 2625 ath9k_bss_assoc_info(sc, vif, bss_conf);
2636 } 2626 }
2637 2627
2628 /*
2629 * The HW TSF has to be reset when the beacon interval changes.
2630 * We set the flag here, and ath_beacon_config_ap() would take this
2631 * into account when it gets called through the subsequent
2632 * config_interface() call - with IFCC_BEACON in the changed field.
2633 */
2634
2635 if (changed & BSS_CHANGED_BEACON_INT) {
2636 sc->sc_flags |= SC_OP_TSF_RESET;
2637 sc->beacon_interval = bss_conf->beacon_int;
2638 }
2639
2638 mutex_unlock(&sc->mutex); 2640 mutex_unlock(&sc->mutex);
2639} 2641}
2640 2642