From: Domen Puncer Date: Sat, 25 Jun 2005 21:58:41 +0000 (-0700) Subject: [PATCH] char/ds1620: use msleep() instead of schedule_timeout() X-Git-Tag: v2.6.13-rc1~68^2~72 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=d8eddb620499dc638aeb4d5d3751974ca697ab39;p=linux-2.6-omap-h63xx.git [PATCH] char/ds1620: use msleep() instead of schedule_timeout() Not sure why any driver needs to sleep for *two* ticks, so let's fix it. Use msleep() instead of schedule_timeout() to guarantee the task delays as expected. Signals are never checked for by the callers or in the function itself, so use TASK_UNINTERRUPTIBLE instead of TASK_INTERRUPTIBLE. The delay is presumed to have been written when HZ==100, and thus has been multiplied by 10 to pass to msleep(). Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer Acked-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/char/ds1620.c b/drivers/char/ds1620.c index 7def6ad5179..62cda25724e 100644 --- a/drivers/char/ds1620.c +++ b/drivers/char/ds1620.c @@ -163,8 +163,7 @@ static void ds1620_out(int cmd, int bits, int value) netwinder_ds1620_reset(); netwinder_unlock(&flags); - set_current_state(TASK_INTERRUPTIBLE); - schedule_timeout(2); + msleep(20); } static unsigned int ds1620_in(int cmd, int bits)