aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Armstrong <ian@iarmst.demon.co.uk>2010-06-20 15:12:28 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2010-07-08 16:50:10 -0300
commitf06b9bd4c62ef93f9467a1432acf2efa84aa3456 (patch)
tree3dbcbde4fa0fa6c58b98cfc10a4808c633ca6499
parentbd1fc7c59669fba897d23d72289341ac9d51ca4e (diff)
downloadlinux-linaro-f06b9bd4c62ef93f9467a1432acf2efa84aa3456.tar.gz
V4L/DVB: ivtv: Add delay to ensure the decoder always restarts with a blank screen
Add a short delay when stopping the decoder, allowing it to settle and preventing some unexpected interaction with other firmware commands. Signed-off-by: Ian Armstrong <ian@iarmst.demon.co.uk> Tested-by: Martin Dauskardt <martin.dauskardt@gmx.de> Signed-off-by: Andy Walls <awalls@md.metrocast.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/video/ivtv/ivtv-streams.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/media/video/ivtv/ivtv-streams.c b/drivers/media/video/ivtv/ivtv-streams.c
index 9ecacab4b89..a937e2ff9b6 100644
--- a/drivers/media/video/ivtv/ivtv-streams.c
+++ b/drivers/media/video/ivtv/ivtv-streams.c
@@ -912,6 +912,9 @@ int ivtv_stop_v4l2_decode_stream(struct ivtv_stream *s, int flags, u64 pts)
clear_bit(IVTV_F_S_STREAMING, &s->s_flags);
ivtv_flush_queues(s);
+ /* decoder needs time to settle */
+ ivtv_msleep_timeout(40, 0);
+
/* decrement decoding */
atomic_dec(&itv->decoding);