[2/2] uvcvideo: Allow userptr IO mode.
Commit Message
Userptr can be very useful if a UVC camera
is requested to use video buffers allocated
by another processing device. So that
buffers don't need to be copied.
Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
---
drivers/media/video/uvc/uvc_queue.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Comments
Hi Javier,
Thanks for the patch.
On Monday 02 January 2012 15:12:23 Javier Martin wrote:
> Userptr can be very useful if a UVC camera
> is requested to use video buffers allocated
> by another processing device. So that
> buffers don't need to be copied.
>
> Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
I'll push the patch through my tree when 1/2 will be acked.
> ---
> drivers/media/video/uvc/uvc_queue.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/media/video/uvc/uvc_queue.c
> b/drivers/media/video/uvc/uvc_queue.c index 518f77d..8f54e24 100644
> --- a/drivers/media/video/uvc/uvc_queue.c
> +++ b/drivers/media/video/uvc/uvc_queue.c
> @@ -126,7 +126,7 @@ void uvc_queue_init(struct uvc_video_queue *queue, enum
> v4l2_buf_type type, int drop_corrupted)
> {
> queue->queue.type = type;
> - queue->queue.io_modes = VB2_MMAP;
> + queue->queue.io_modes = VB2_MMAP | VB2_USERPTR;
> queue->queue.drv_priv = queue;
> queue->queue.buf_struct_size = sizeof(struct uvc_buffer);
> queue->queue.ops = &uvc_queue_qops;
Hi Laurent,
FYI Marek has already merged 1/2 into his vb2-fixes branch.
Hi Javier,
On Thursday 12 January 2012 13:16:19 javier Martin wrote:
> Hi Laurent,
> FYI Marek has already merged 1/2 into his vb2-fixes branch.
I've queued 2/2 to my tree and will push it to v3.4.
@@ -126,7 +126,7 @@ void uvc_queue_init(struct uvc_video_queue *queue, enum v4l2_buf_type type,
int drop_corrupted)
{
queue->queue.type = type;
- queue->queue.io_modes = VB2_MMAP;
+ queue->queue.io_modes = VB2_MMAP | VB2_USERPTR;
queue->queue.drv_priv = queue;
queue->queue.buf_struct_size = sizeof(struct uvc_buffer);
queue->queue.ops = &uvc_queue_qops;