diff options
author | Simon Farnsworth <simon.farnsworth@onelan.co.uk> | 2011-05-10 15:49:50 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-05-21 01:21:27 +0200 |
commit | 612031c0771def54dd202cef76bb9bd654e47b5b (patch) | |
tree | df8d294ba25d0ad6aa21d6cfecc88977d6a0e9b8 /drivers/media | |
parent | [media] tm6000: remove tm6010 sif audio start and stop (diff) | |
download | linux-612031c0771def54dd202cef76bb9bd654e47b5b.tar.xz linux-612031c0771def54dd202cef76bb9bd654e47b5b.zip |
[media] cx18: Move spinlock and vb_type initialisation into stream_init
The initialisation of vb_type in serialized_open was preventing
REQBUFS from working reliably. Remove it, and move the spinlock into
stream_init for good measure - it's only used when we have a stream
that supports videobuf anyway.
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/video/cx18/cx18-fileops.c | 3 | ||||
-rw-r--r-- | drivers/media/video/cx18/cx18-streams.c | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/drivers/media/video/cx18/cx18-fileops.c b/drivers/media/video/cx18/cx18-fileops.c index 6609222eccf8..07411f34885a 100644 --- a/drivers/media/video/cx18/cx18-fileops.c +++ b/drivers/media/video/cx18/cx18-fileops.c @@ -810,9 +810,6 @@ static int cx18_serialized_open(struct cx18_stream *s, struct file *filp) item->cx = cx; item->type = s->type; - spin_lock_init(&s->vbuf_q_lock); - s->vb_type = 0; - item->open_id = cx->open_id++; filp->private_data = &item->fh; diff --git a/drivers/media/video/cx18/cx18-streams.c b/drivers/media/video/cx18/cx18-streams.c index 3995af71b820..852f420fd271 100644 --- a/drivers/media/video/cx18/cx18-streams.c +++ b/drivers/media/video/cx18/cx18-streams.c @@ -275,6 +275,8 @@ static void cx18_stream_init(struct cx18 *cx, int type) init_timer(&s->vb_timeout); spin_lock_init(&s->vb_lock); if (type == CX18_ENC_STREAM_TYPE_YUV) { + spin_lock_init(&s->vbuf_q_lock); + s->vb_type = V4L2_BUF_TYPE_VIDEO_CAPTURE; videobuf_queue_vmalloc_init(&s->vbuf_q, &cx18_videobuf_qops, &cx->pci_dev->dev, &s->vbuf_q_lock, |