From: Gerd Knorr Use msleep() instead of sleep_delay() so that the driver sleeps as the comment indicated. I assumed that two sleep_delay()s in a row indicated sleeping for 20ms. Please let me know if this is incorrect. Signed-off-by: Nishanth Aravamudan Signed-off-by: Maximilian Attems Signed-off-by: Domen Puncer Signed-off-by: Gerd Knorr Signed-off-by: Andrew Morton --- 25-akpm/drivers/media/radio/radio-zoltrix.c | 26 +++++++------------------- 1 files changed, 7 insertions(+), 19 deletions(-) diff -puN drivers/media/radio/radio-zoltrix.c~media-radio-zoltrix-replace-sleep_delay-with-msleep drivers/media/radio/radio-zoltrix.c --- 25/drivers/media/radio/radio-zoltrix.c~media-radio-zoltrix-replace-sleep_delay-with-msleep 2005-03-11 12:32:21.000000000 -0800 +++ 25-akpm/drivers/media/radio/radio-zoltrix.c 2005-03-11 12:32:21.000000000 -0800 @@ -29,7 +29,7 @@ #include /* Modules */ #include /* Initdata */ #include /* check_region, request_region */ -#include /* udelay */ +#include /* udelay, msleep */ #include /* outb, outb_p */ #include /* copy to/from user */ #include /* kernel radio structs */ @@ -51,15 +51,6 @@ struct zol_device { struct semaphore lock; }; - -/* local things */ - -static void sleep_delay(void) -{ - /* Sleep nicely for +/- 10 mS */ - schedule(); -} - static int zol_setvol(struct zol_device *dev, int vol) { dev->curvol = vol; @@ -76,7 +67,7 @@ static int zol_setvol(struct zol_device } outb(dev->curvol-1, io); - sleep_delay(); + msleep(10); inb(io + 2); up(&dev->lock); return 0; @@ -176,11 +167,10 @@ static int zol_getsigstr(struct zol_devi down(&dev->lock); outb(0x00, io); /* This stuff I found to do nothing */ outb(dev->curvol, io); - sleep_delay(); - sleep_delay(); + msleep(20); a = inb(io); - sleep_delay(); + msleep(10); b = inb(io); up(&dev->lock); @@ -202,11 +192,10 @@ static int zol_is_stereo (struct zol_dev outb(0x00, io); outb(dev->curvol, io); - sleep_delay(); - sleep_delay(); + msleep(20); x1 = inb(io); - sleep_delay(); + msleep(10); x2 = inb(io); up(&dev->lock); @@ -368,8 +357,7 @@ static int __init zoltrix_init(void) outb(0, io); outb(0, io); - sleep_delay(); - sleep_delay(); + msleep(20); inb(io + 3); zoltrix_unit.curvol = 0; _