ath9k: call ath9k_set_tsfadjust from ath9k_beacon_config
authorFelix Fietkau <nbd@openwrt.org>
Thu, 19 Dec 2013 17:01:49 +0000 (18:01 +0100)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 19 Dec 2013 19:41:56 +0000 (14:41 -0500)
Make that function and ath9k_allow_beacon_config static

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/ath9k.h
drivers/net/wireless/ath/ath9k/beacon.c
drivers/net/wireless/ath/ath9k/main.c

index 9ad8a6738afd4c46b2f7ecdadd7f7e614336039e..f2202e78fa7b3de875f1c06fca9438dc01a59f5e 100644 (file)
@@ -431,12 +431,10 @@ struct ath_beacon {
 };
 
 void ath9k_beacon_tasklet(unsigned long data);
-bool ath9k_allow_beacon_config(struct ath_softc *sc, struct ieee80211_vif *vif);
 void ath9k_beacon_config(struct ath_softc *sc, struct ieee80211_vif *vif,
                         u32 changed);
 void ath9k_beacon_assign_slot(struct ath_softc *sc, struct ieee80211_vif *vif);
 void ath9k_beacon_remove_slot(struct ath_softc *sc, struct ieee80211_vif *vif);
-void ath9k_set_tsfadjust(struct ath_softc *sc, struct ieee80211_vif *vif);
 void ath9k_set_beacon(struct ath_softc *sc);
 bool ath9k_csa_is_finished(struct ath_softc *sc);
 
index 78ffe762e26cdc8a54937ba8149012992b7b528b..accfb3b60daa0c0da839928c9ae1e6f551905111 100644 (file)
@@ -274,7 +274,7 @@ static int ath9k_beacon_choose_slot(struct ath_softc *sc)
        return slot;
 }
 
-void ath9k_set_tsfadjust(struct ath_softc *sc, struct ieee80211_vif *vif)
+static void ath9k_set_tsfadjust(struct ath_softc *sc, struct ieee80211_vif *vif)
 {
        struct ath_common *common = ath9k_hw_common(sc->sc_ah);
        struct ath_beacon_config *cur_conf = &sc->cur_beacon_conf;
@@ -622,7 +622,8 @@ static void ath9k_beacon_config_adhoc(struct ath_softc *sc,
                set_bit(SC_OP_BEACONS, &sc->sc_flags);
 }
 
-bool ath9k_allow_beacon_config(struct ath_softc *sc, struct ieee80211_vif *vif)
+static bool ath9k_allow_beacon_config(struct ath_softc *sc,
+                                     struct ieee80211_vif *vif)
 {
        struct ath_common *common = ath9k_hw_common(sc->sc_ah);
        struct ath_vif *avp = (void *)vif->drv_priv;
@@ -693,12 +694,17 @@ void ath9k_beacon_config(struct ath_softc *sc, struct ieee80211_vif *vif,
        unsigned long flags;
        bool skip_beacon = false;
 
+       if (vif->type == NL80211_IFTYPE_AP)
+               ath9k_set_tsfadjust(sc, vif);
+
+       if (!ath9k_allow_beacon_config(sc, vif))
+               return;
+
        if (sc->sc_ah->opmode == NL80211_IFTYPE_STATION) {
                ath9k_cache_beacon_config(sc, bss_conf);
                ath9k_set_beacon(sc);
                set_bit(SC_OP_BEACONS, &sc->sc_flags);
                return;
-
        }
 
        /*
index 1d76be5015723d1d1f421d6f363494bcd8c94050..173a889f9dbb35de8a49d87aea7f1c43400613bf 100644 (file)
@@ -1664,13 +1664,8 @@ static void ath9k_bss_info_changed(struct ieee80211_hw *hw,
        }
 
        if ((changed & BSS_CHANGED_BEACON_ENABLED) ||
-           (changed & BSS_CHANGED_BEACON_INT)) {
-               if (ah->opmode == NL80211_IFTYPE_AP &&
-                   bss_conf->enable_beacon)
-                       ath9k_set_tsfadjust(sc, vif);
-               if (ath9k_allow_beacon_config(sc, vif))
-                       ath9k_beacon_config(sc, vif, changed);
-       }
+           (changed & BSS_CHANGED_BEACON_INT))
+               ath9k_beacon_config(sc, vif, changed);
 
        if (changed & BSS_CHANGED_ERP_SLOT) {
                if (bss_conf->use_short_slot)