summaryrefslogtreecommitdiffstats
path: root/drivers/char/bw-qcam.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/bw-qcam.c')
-rw-r--r--drivers/char/bw-qcam.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/char/bw-qcam.c b/drivers/char/bw-qcam.c
index 48de68db3..9f8935e8b 100644
--- a/drivers/char/bw-qcam.c
+++ b/drivers/char/bw-qcam.c
@@ -214,8 +214,7 @@ static int qc_waithand(struct qcam_device *q, int val)
if(runs++>1000)
{
current->state=TASK_INTERRUPTIBLE;
- current->timeout = jiffies+HZ/10;
- schedule();
+ schedule_timeout(HZ/10);
}
if(runs>1050)
return -1;
@@ -232,8 +231,7 @@ static int qc_waithand(struct qcam_device *q, int val)
if(runs++>1000)
{
current->state=TASK_INTERRUPTIBLE;
- current->timeout = jiffies+HZ/10;
- schedule();
+ schedule_timeout(HZ/10);
}
if(runs++>1050) /* 5 seconds */
return -1;
@@ -263,8 +261,7 @@ static unsigned int qc_waithand2(struct qcam_device *q, int val)
if(runs++>1000)
{
current->state=TASK_INTERRUPTIBLE;
- current->timeout = jiffies+HZ/10;
- schedule();
+ schedule_timeout(HZ/10);
}
if(runs++>1050) /* 5 seconds */
return 0;
@@ -296,7 +293,7 @@ static int qc_detect(struct qcam_device *q)
if (reg != lastreg)
count++;
lastreg = reg;
- mdelay(1);
+ mdelay(2);
}
/* Be liberal in what you accept... */