On Fri, Jan 28, 2011 at 3:48 AM, Steve Brown <sbr...@cortland.com> wrote:
>
> The variable appears in both in ath_softc and ath_beacon_config.
> The struct ath_beacon_config is embedded in ath_softc. The extra
> variable was added by commit id 57c4d7b4c4986037be51476b8e3025d5ba18d8b8.
>
> ---
>
> --- a/drivers/net/wireless/ath/ath9k/ath9k.h
> +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
> @@ -369,7 +369,7 @@ struct ath_vif {
>  #define IEEE80211_MS_TO_TU(x)           (((x) * 1000) / 1024)
>
>  struct ath_beacon_config {
> -       u16 beacon_interval;
> +       int beacon_interval;
>        u16 listen_interval;
>        u16 dtim_period;
>        u16 bmiss_timeout;
> @@ -621,8 +621,6 @@ struct ath_softc {
>        struct ath9k_hw_cal_data caldata;
>        int last_rssi;
>
> -       int beacon_interval;
> -
>  #ifdef CONFIG_ATH9K_DEBUGFS
>        struct ath9k_debug debug;
>        spinlock_t nodes_lock;
> --- a/drivers/net/wireless/ath/ath9k/beacon.c
> +++ b/drivers/net/wireless/ath/ath9k/beacon.c
> @@ -226,6 +226,7 @@ int ath_beacon_alloc(struct ath_softc *s
>        struct ath_vif *avp;
>        struct ath_buf *bf;
>        struct sk_buff *skb;
> +       struct ath_beacon_config *cur_conf = &sc->cur_beacon_conf;
>        __le64 tstamp;
>
>        avp = (void *)vif->drv_priv;
> @@ -282,7 +283,7 @@ int ath_beacon_alloc(struct ath_softc *s
>                u64 tsfadjust;
>                int intval;
>
> -               intval = sc->beacon_interval ? : ATH_DEFAULT_BINTVAL;
> +               intval = cur_conf->beacon_interval ? : ATH_DEFAULT_BINTVAL;
>
>                /*
>                 * Calculate the TSF offset for this beacon slot, i.e., the
> @@ -346,6 +347,7 @@ void ath_beacon_return(struct ath_softc
>  void ath_beacon_tasklet(unsigned long data)
>  {
>        struct ath_softc *sc = (struct ath_softc *)data;
> +       struct ath_beacon_config *cur_conf = &sc->cur_beacon_conf;
>        struct ath_hw *ah = sc->sc_ah;
>        struct ath_common *common = ath9k_hw_common(ah);
>        struct ath_buf *bf = NULL;
> @@ -393,7 +395,7 @@ void ath_beacon_tasklet(unsigned long da
>         * on the tsf to safeguard against missing an swba.
>         */
>
> -       intval = sc->beacon_interval ? : ATH_DEFAULT_BINTVAL;
> +       intval = cur_conf->beacon_interval ? : ATH_DEFAULT_BINTVAL;
>
>        tsf = ath9k_hw_gettsf64(ah);
>        tsftu = TSF_TO_TU(tsf>>32, tsf);
> --- a/drivers/net/wireless/ath/ath9k/main.c
> +++ b/drivers/net/wireless/ath/ath9k/main.c
> @@ -1922,6 +1922,7 @@ static void ath9k_bss_info_changed(struc
>                                   u32 changed)
>  {
>        struct ath_softc *sc = hw->priv;
> +       struct ath_beacon_config *cur_conf = &sc->cur_beacon_conf;
>        struct ath_hw *ah = sc->sc_ah;
>        struct ath_common *common = ath9k_hw_common(ah);
>        struct ath_vif *avp = (void *)vif->drv_priv;
> @@ -1980,7 +1981,7 @@ static void ath9k_bss_info_changed(struc
>                ath9k_hw_stoptxdma(sc->sc_ah, sc->beacon.beaconq);
>
>        if (changed & BSS_CHANGED_BEACON_INT) {
> -               sc->beacon_interval = bss_conf->beacon_int;
> +               cur_conf->beacon_interval = bss_conf->beacon_int;
>                /*
>                 * In case of AP mode, the HW TSF has to be reset
>                 * when the beacon interval changes.
> --- a/drivers/net/wireless/ath/ath9k/xmit.c
> +++ b/drivers/net/wireless/ath/ath9k/xmit.c
> @@ -1054,6 +1054,7 @@ int ath_txq_update(struct ath_softc *sc,
>  int ath_cabq_update(struct ath_softc *sc)
>  {
>        struct ath9k_tx_queue_info qi;
> +       struct ath_beacon_config *cur_conf = &sc->cur_beacon_conf;
>        int qnum = sc->beacon.cabq->axq_qnum;
>
>        ath9k_hw_get_txq_props(sc->sc_ah, qnum, &qi);
> @@ -1065,7 +1066,7 @@ int ath_cabq_update(struct ath_softc *sc
>        else if (sc->config.cabqReadytime > ATH9K_READY_TIME_HI_BOUND)
>                sc->config.cabqReadytime = ATH9K_READY_TIME_HI_BOUND;
>
> -       qi.tqi_readyTime = (sc->beacon_interval *
> +       qi.tqi_readyTime = (cur_conf->beacon_interval *
>                            sc->config.cabqReadytime) / 100;
>        ath_txq_update(sc, qnum, &qi);

This patch was not there in wireless-testing..can you please send the
patch to wireless testing
>
>
> _______________________________________________
> ath9k-devel mailing list
> ath9k-devel@lists.ath9k.org
> https://lists.ath9k.org/mailman/listinfo/ath9k-devel
>
_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to