Tested-by: Sedat Dilek <sedat.di...@gmail.com>

On Fri, Dec 3, 2010 at 5:07 AM, Nick Kossifidis <mickfl...@gmail.com> wrote:
>  * Stop ANI durring reset to prevent false PHY error reports
>
>  Signed-off-by: Nick Kossifidis <mickfl...@gmail.com>
>
> ---
>  drivers/net/wireless/ath/ath5k/base.c |   10 ++++++++--
>  1 files changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath5k/base.c 
> b/drivers/net/wireless/ath/ath5k/base.c
> index 047b2a0..6edfa9f 100644
> --- a/drivers/net/wireless/ath/ath5k/base.c
> +++ b/drivers/net/wireless/ath/ath5k/base.c
> @@ -2504,7 +2504,7 @@ ath5k_reset(struct ath5k_softc *sc, struct 
> ieee80211_channel *chan,
>                                                        bool skip_pcu)
>  {
>        struct ath5k_hw *ah = sc->ah;
> -       int ret;
> +       int ret, ani_mode;
>
>        ATH5K_DBG(sc, ATH5K_DEBUG_RESET, "resetting\n");
>
> @@ -2512,6 +2512,12 @@ ath5k_reset(struct ath5k_softc *sc, struct 
> ieee80211_channel *chan,
>        synchronize_irq(sc->pdev->irq);
>        stop_tasklets(sc);
>
> +       /* Save ani mode and disable ANI durring
> +        * reset. If we don't we might get false
> +        * PHY error interrupts. */
> +       ani_mode = ah->ah_sc->ani_state.ani_mode;
> +       ath5k_ani_init(ah, ATH5K_ANI_MODE_OFF);
> +
>        /* We are going to empty hw queues
>         * so we should also free any remaining
>         * tx buffers */
> @@ -2533,7 +2539,7 @@ ath5k_reset(struct ath5k_softc *sc, struct 
> ieee80211_channel *chan,
>                goto err;
>        }
>
> -       ath5k_ani_init(ah, ah->ah_sc->ani_state.ani_mode);
> +       ath5k_ani_init(ah, ani_mode);
>
>        ah->ah_cal_next_full = jiffies;
>        ah->ah_cal_next_ani = jiffies;
>
_______________________________________________
ath5k-devel mailing list
ath5k-devel@lists.ath5k.org
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to