On 2011-11-20 8:56 AM, Nick Kossifidis wrote:
> Use usleep_range where possible to reduce busy waits
> 
> Signed-off-by: Nick Kossifidis <mickfl...@gmail.com>
> ---
>  drivers/net/wireless/ath/ath5k/attach.c |    2 +-
>  drivers/net/wireless/ath/ath5k/pci.c    |    2 +-
>  drivers/net/wireless/ath/ath5k/phy.c    |   22 +++++++++++-----------
>  drivers/net/wireless/ath/ath5k/reset.c  |   14 +++++++-------
>  4 files changed, 20 insertions(+), 20 deletions(-)
> 
> @@ -1454,7 +1454,7 @@ static int ath5k_hw_rf5110_calibrate(struct ath5k_hw 
> *ah,
>       beacon = ath5k_hw_reg_read(ah, AR5K_BEACON_5210);
>       ath5k_hw_reg_write(ah, beacon & ~AR5K_BEACON_ENABLE, AR5K_BEACON_5210);
>  
> -     mdelay(2);
> +     usleep_range(2000, 2500);
>  
>       /*
>        * Set the channel (with AGC turned off)
> @@ -1467,7 +1467,7 @@ static int ath5k_hw_rf5110_calibrate(struct ath5k_hw 
> *ah,
>        * Activate PHY and wait
>        */
>       ath5k_hw_reg_write(ah, AR5K_PHY_ACT_ENABLE, AR5K_PHY_ACT);
> -     mdelay(1);
> +     usleep_range(1000, 1500);
>  
>       AR5K_REG_DISABLE_BITS(ah, AR5K_PHY_AGC, AR5K_PHY_AGC_DISABLE);
>  
Are you sure this is safe? This looks like it's being called from
tasklet context, and I think usleep_range is not allowed there.

- Felix
_______________________________________________
ath5k-devel mailing list
ath5k-devel@lists.ath5k.org
https://lists.ath5k.org/mailman/listinfo/ath5k-devel

Reply via email to