]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
V4L/DVB: ivtv: Adjust msleep() delays used to prevent tinny audio and PCI bus hang
authorAndy Walls <awalls@radix.net>
Mon, 18 Jan 2010 00:12:24 +0000 (21:12 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 26 Feb 2010 18:10:41 +0000 (15:10 -0300)
Martin Dauskardt <martin.dauskardt@gmx.de> has done extensive testing on what
values can be used and and concluded that only 300 ms total is required to
avoid bad video effects such as occasional black screen and short sync
disturbances.  Furthermore he determined how this 300 ms was split between
the two msleep()s did matter very much, so he suggested 150ms/150ms as one
acceptable alternative that is implemented here.

Many thanks go to Martin.

Tested-by: Martin Dauskardt <martin.dauskardt@gmx.de>
Signed-off-by: Andy Walls <awalls@radix.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/ivtv/ivtv-streams.c

index 2f90dd255cd7be75886a05d67e9b80bf6238c04d..1f9387f6ca240d39c03ea805369b8c6e74c7e753 100644 (file)
@@ -581,10 +581,10 @@ int ivtv_start_v4l2_encode_stream(struct ivtv_stream *s)
                v4l2_subdev_call(itv->sd_audio, audio, s_stream, 1);
                /* Avoid unpredictable PCI bus hang - disable video clocks */
                v4l2_subdev_call(itv->sd_video, video, s_stream, 0);
-               ivtv_msleep_timeout(300, 1);
+               ivtv_msleep_timeout(150, 1);
                ivtv_vapi(itv, CX2341X_ENC_INITIALIZE_INPUT, 0);
                v4l2_subdev_call(itv->sd_video, video, s_stream, 1);
-               ivtv_msleep_timeout(300, 1);
+               ivtv_msleep_timeout(150, 1);
        }
 
        /* begin_capture */