Gitweb: http://git.kernel.org/linus/f06b9bd4c62ef93f9467a1432acf2efa84aa3456
Commit: f06b9bd4c62ef93f9467a1432acf2efa84aa3456
Parent: bd1fc7c59669fba897d23d72289341ac9d51ca4e
Author: Ian Armstrong <ian@iarmst.demon.co.uk>
AuthorDate: Sun Jun 20 15:12:28 2010 -0300
Committer: Mauro Carvalho Chehab <mchehab@redhat.com>
CommitDate: Thu Jul 8 16:50:10 2010 -0300
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>
---
drivers/media/video/ivtv/ivtv-streams.c | 3 +++
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 9ecacab..a937e2f 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);
--