Merge branch 'x86-bootmem-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[sfrench/cifs-2.6.git] / drivers / media / video / ivtv / ivtv-streams.c
index e12c6022373e38afaaf0ad3b559f3184b67456f9..1f9387f6ca240d39c03ea805369b8c6e74c7e753 100644 (file)
@@ -577,10 +577,14 @@ int ivtv_start_v4l2_encode_stream(struct ivtv_stream *s)
                clear_bit(IVTV_F_I_EOS, &itv->i_flags);
 
                /* Initialize Digitizer for Capture */
+               /* Avoid tinny audio problem - ensure audio clocks are going */
+               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(150, 1);
        }
 
        /* begin_capture */