From 63bbcab47ca57718ea48afcd14afe7c5127fbdf7 Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Thu, 17 Apr 2008 21:38:53 -0300 Subject: [PATCH] --- yaml --- r: 92678 b: refs/heads/master c: d2d9fbfd732f49999a2a94f2479934488fe3ea9d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/media/video/em28xx/em28xx-video.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 8fb7526a4823..114e43da09df 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 52284c3e47bf502aaff72ab2ede509193b628b1b +refs/heads/master: d2d9fbfd732f49999a2a94f2479934488fe3ea9d diff --git a/trunk/drivers/media/video/em28xx/em28xx-video.c b/trunk/drivers/media/video/em28xx/em28xx-video.c index 362251838d4b..72a7633b6452 100644 --- a/trunk/drivers/media/video/em28xx/em28xx-video.c +++ b/trunk/drivers/media/video/em28xx/em28xx-video.c @@ -560,6 +560,8 @@ static int buffer_setup(struct videobuf_queue *vq, unsigned int *count, unsigned int *size) { struct em28xx_fh *fh = vq->priv_data; + struct em28xx *dev = fh->dev; + struct v4l2_frequency f; *size = 16 * fh->dev->width * fh->dev->height >> 3; if (0 == *count) @@ -568,6 +570,14 @@ buffer_setup(struct videobuf_queue *vq, unsigned int *count, unsigned int *size) if (*count < EM28XX_MIN_BUF) *count = EM28XX_MIN_BUF; + dev->mode = EM28XX_ANALOG_MODE; + + /* Ask tuner to go to analog mode */ + memset (&f, 0, sizeof(f)); + f.frequency = dev->ctl_freq; + + em28xx_i2c_call_clients(dev, VIDIOC_S_FREQUENCY, &f); + return 0; }