ASoC: fsl-mpc5200: Use usleep_range() instead of msleep()
authorXiubo Li <lixiubo@cmss.chinamobile.com>
Fri, 15 Jan 2016 11:35:25 +0000 (19:35 +0800)
committerMark Brown <broonie@kernel.org>
Fri, 22 Jan 2016 16:48:34 +0000 (16:48 +0000)
Since msleep() will sleep longer than intended time for values less
than 20ms, this patch allows the use of usleep_range for just 1ms.
usleep_range is a finer precision implementation of msleep and is
designed to be a drop-in replacement for udelay where a precise
sleep/busy-wait is unnecessary.

More details see Documentation/timers/timers-howto.txt.

Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/mpc5200_psc_ac97.c

index 0bab76051fd830dd0bc0a3d993341ad8cd759afe..243700cc29e618417d2e3561f6c554031229d531 100644 (file)
@@ -13,6 +13,7 @@
 #include <linux/of_device.h>
 #include <linux/of_platform.h>
 #include <linux/delay.h>
+#include <linux/time.h>
 
 #include <sound/pcm.h>
 #include <sound/pcm_params.h>
@@ -127,7 +128,7 @@ static void psc_ac97_cold_reset(struct snd_ac97 *ac97)
 
        mutex_unlock(&psc_dma->mutex);
 
-       msleep(1);
+       usleep_range(1000, 2000);
        psc_ac97_warm_reset(ac97);
 }