diff options
author | Simon Farnsworth <simon.farnsworth@onelan.co.uk> | 2011-05-03 08:57:40 -0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-05-20 09:30:22 -0300 |
commit | 1bf5842fe3b61d2dbbced96dbd27ad26fe93444a (patch) | |
tree | 26c19327c2668ca8690e3a47b0846f9825beb991 /drivers/media/video/cx18/cx18-driver.h | |
parent | 81dfea886c73ea36439672b90626a354354dadd2 (diff) | |
download | lwn-1bf5842fe3b61d2dbbced96dbd27ad26fe93444a.tar.gz lwn-1bf5842fe3b61d2dbbced96dbd27ad26fe93444a.zip |
[media] cx18: Clean up mmap() support for raw YUV
The initial version of this patch (commit
d5976931639176bb6777755d96b9f8d959f79e9e) had some issues:
* It didn't correctly calculate the size of the YUV buffer for 4:2:2,
resulting in capture sometimes being offset by 1/3rd of a picture.
* There were a lot of variables duplicating information the driver
already knew, which have been removed.
* There was an in-kernel format conversion - libv4l can do this one,
and is the right place to do format conversions anyway.
* Some magic numbers weren't properly explained.
Fix all these issues, leaving just the move from videobuf to videobuf2
to do.
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
Acked-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx18/cx18-driver.h')
-rw-r--r-- | drivers/media/video/cx18/cx18-driver.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/media/video/cx18/cx18-driver.h b/drivers/media/video/cx18/cx18-driver.h index 70e1e0401645..086427288de8 100644 --- a/drivers/media/video/cx18/cx18-driver.h +++ b/drivers/media/video/cx18/cx18-driver.h @@ -412,11 +412,11 @@ struct cx18_stream { u32 pixelformat; struct list_head vb_capture; /* video capture queue */ spinlock_t vb_lock; - struct v4l2_framebuffer fbuf; - v4l2_std_id tvnorm; /* selected tv norm */ struct timer_list vb_timeout; - int vbwidth; - int vbheight; + + struct videobuf_queue vbuf_q; + spinlock_t vbuf_q_lock; /* Protect vbuf_q */ + enum v4l2_buf_type vb_type; }; struct cx18_videobuf_buffer { |