2011/7/4 Felix Fietkau <n...@openwrt.org>:
> enabling the sleep clock alters the AR5K_USEC_32 field, but disabling
> it didn't restore it.
>
> Signed-off-by: Felix Fietkau <n...@openwrt.org>
> ---
>  drivers/net/wireless/ath/ath5k/reset.c |   11 ++++++++++-
>  1 files changed, 10 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath5k/reset.c 
> b/drivers/net/wireless/ath/ath5k/reset.c
> index 1676a3e..55276ce 100644
> --- a/drivers/net/wireless/ath/ath5k/reset.c
> +++ b/drivers/net/wireless/ath/ath5k/reset.c
> @@ -233,7 +233,7 @@ static void ath5k_hw_init_core_clock(struct ath5k_hw *ah)
>  static void ath5k_hw_set_sleep_clock(struct ath5k_hw *ah, bool enable)
>  {
>        struct ath5k_eeprom_info *ee = &ah->ah_capabilities.cap_eeprom;
> -       u32 scal, spending;
> +       u32 scal, spending, sclock;
>
>        /* Only set 32KHz settings if we have an external
>         * 32KHz crystal present */
> @@ -317,6 +317,15 @@ static void ath5k_hw_set_sleep_clock(struct ath5k_hw 
> *ah, bool enable)
>
>                /* Set up tsf increment on each cycle */
>                AR5K_REG_WRITE_BITS(ah, AR5K_TSF_PARM, AR5K_TSF_PARM_INC, 1);
> +
> +               if ((ah->ah_radio == AR5K_RF5112) ||
> +                       (ah->ah_radio == AR5K_RF5413) ||
> +                       (ah->ah_radio == AR5K_RF2316) ||
> +                       (ah->ah_radio == AR5K_RF2317))
> +                       sclock = 40 - 1;
> +               else
> +                       sclock = 32 - 1;
> +               AR5K_REG_WRITE_BITS(ah, AR5K_USEC_5211, AR5K_USEC_32, sclock);
>        }
>  }
>
> --
> 1.7.3.2
>

Acked-by: Nick Kossifidis <mickfl...@gmail.com>


-- 
GPG ID: 0xD21DB2DB
As you read this post global entropy rises. Have Fun ;-)
Nick
_______________________________________________
ath5k-devel mailing list
ath5k-devel@lists.ath5k.org
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to