[PATCHv6 01/13] v4l: Add DMABUF as a memory type

2012-05-29 Thread Laurent Pinchart
Hi Tomasz,

Thanks for the patch.

On Wednesday 23 May 2012 14:10:15 Tomasz Stanislawski wrote:
> From: Sumit Semwal 
> 
> Adds DMABUF memory type to v4l framework. Also adds the related file
> descriptor in v4l2_plane and v4l2_buffer.

Sorry not to have caught this earlier, but haven't you forgotten to add 
support for V4L2_MEMORY_DMABUF to v4l2-compat-ioctl32.c ?

> Signed-off-by: Tomasz Stanislawski 
>[original work in the PoC for buffer sharing]
> Signed-off-by: Sumit Semwal 
> Signed-off-by: Sumit Semwal 
> Acked-by: Laurent Pinchart 
> ---
>  drivers/media/video/v4l2-ioctl.c |1 +
>  include/linux/videodev2.h|7 +++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/drivers/media/video/v4l2-ioctl.c
> b/drivers/media/video/v4l2-ioctl.c index 91be4e8..31fc2ad 100644
> --- a/drivers/media/video/v4l2-ioctl.c
> +++ b/drivers/media/video/v4l2-ioctl.c
> @@ -175,6 +175,7 @@ static const char *v4l2_memory_names[] = {
>   [V4L2_MEMORY_MMAP]= "mmap",
>   [V4L2_MEMORY_USERPTR] = "userptr",
>   [V4L2_MEMORY_OVERLAY] = "overlay",
> + [V4L2_MEMORY_DMABUF] = "dmabuf",
>  };
> 
>  #define prt_names(a, arr) a) >= 0) && ((a) < ARRAY_SIZE(arr))) ? \
> diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
> index 370d111..51b20f4 100644
> --- a/include/linux/videodev2.h
> +++ b/include/linux/videodev2.h
> @@ -185,6 +185,7 @@ enum v4l2_memory {
>   V4L2_MEMORY_MMAP = 1,
>   V4L2_MEMORY_USERPTR  = 2,
>   V4L2_MEMORY_OVERLAY  = 3,
> + V4L2_MEMORY_DMABUF   = 4,
>  };
> 
>  /* see also http://vektor.theorem.ca/graphics/ycbcr/ */
> @@ -591,6 +592,8 @@ struct v4l2_requestbuffers {
>   *   should be passed to mmap() called on the video node)
>   * @userptr: when memory is V4L2_MEMORY_USERPTR, a userspace pointer
>   *   pointing to this plane
> + * @fd:  when memory is V4L2_MEMORY_DMABUF, a userspace 
> file
> + *   descriptor associated with this plane
>   * @data_offset: offset in the plane to the start of data; usually 0,
>   *   unless there is a header in front of the data
>   *
> @@ -605,6 +608,7 @@ struct v4l2_plane {
>   union {
>   __u32   mem_offset;
>   unsigned long   userptr;
> + int fd;
>   } m;
>   __u32   data_offset;
>   __u32   reserved[11];
> @@ -629,6 +633,8 @@ struct v4l2_plane {
>   *   (or a "cookie" that should be passed to mmap() as offset)
>   * @userptr: for non-multiplanar buffers with memory ==
> V4L2_MEMORY_USERPTR; *a userspace pointer pointing to this 
> buffer
> + * @fd:  for non-multiplanar buffers with memory == 
V4L2_MEMORY_DMABUF;
> + *   a userspace file descriptor associated with this buffer
>   * @planes:  for multiplanar buffers; userspace pointer to the array of
> plane *   info structs for this buffer
>   * @length:  size in bytes of the buffer (NOT its payload) for single-
plane
> @@ -655,6 +661,7 @@ struct v4l2_buffer {
>   __u32   offset;
>   unsigned long   userptr;
>   struct v4l2_plane *planes;
> + int fd;
>   } m;
>   __u32   length;
>   __u32   input;
-- 
Regards,

Laurent Pinchart



Re: [PATCHv6 01/13] v4l: Add DMABUF as a memory type

2012-05-28 Thread Laurent Pinchart
Hi Tomasz,

Thanks for the patch.

On Wednesday 23 May 2012 14:10:15 Tomasz Stanislawski wrote:
 From: Sumit Semwal sumit.sem...@ti.com
 
 Adds DMABUF memory type to v4l framework. Also adds the related file
 descriptor in v4l2_plane and v4l2_buffer.

Sorry not to have caught this earlier, but haven't you forgotten to add 
support for V4L2_MEMORY_DMABUF to v4l2-compat-ioctl32.c ?

 Signed-off-by: Tomasz Stanislawski t.stanisl...@samsung.com
[original work in the PoC for buffer sharing]
 Signed-off-by: Sumit Semwal sumit.sem...@ti.com
 Signed-off-by: Sumit Semwal sumit.sem...@linaro.org
 Acked-by: Laurent Pinchart laurent.pinch...@ideasonboard.com
 ---
  drivers/media/video/v4l2-ioctl.c |1 +
  include/linux/videodev2.h|7 +++
  2 files changed, 8 insertions(+)
 
 diff --git a/drivers/media/video/v4l2-ioctl.c
 b/drivers/media/video/v4l2-ioctl.c index 91be4e8..31fc2ad 100644
 --- a/drivers/media/video/v4l2-ioctl.c
 +++ b/drivers/media/video/v4l2-ioctl.c
 @@ -175,6 +175,7 @@ static const char *v4l2_memory_names[] = {
   [V4L2_MEMORY_MMAP]= mmap,
   [V4L2_MEMORY_USERPTR] = userptr,
   [V4L2_MEMORY_OVERLAY] = overlay,
 + [V4L2_MEMORY_DMABUF] = dmabuf,
  };
 
  #define prt_names(a, arr) a) = 0)  ((a)  ARRAY_SIZE(arr))) ? \
 diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
 index 370d111..51b20f4 100644
 --- a/include/linux/videodev2.h
 +++ b/include/linux/videodev2.h
 @@ -185,6 +185,7 @@ enum v4l2_memory {
   V4L2_MEMORY_MMAP = 1,
   V4L2_MEMORY_USERPTR  = 2,
   V4L2_MEMORY_OVERLAY  = 3,
 + V4L2_MEMORY_DMABUF   = 4,
  };
 
  /* see also http://vektor.theorem.ca/graphics/ycbcr/ */
 @@ -591,6 +592,8 @@ struct v4l2_requestbuffers {
   *   should be passed to mmap() called on the video node)
   * @userptr: when memory is V4L2_MEMORY_USERPTR, a userspace pointer
   *   pointing to this plane
 + * @fd:  when memory is V4L2_MEMORY_DMABUF, a userspace 
 file
 + *   descriptor associated with this plane
   * @data_offset: offset in the plane to the start of data; usually 0,
   *   unless there is a header in front of the data
   *
 @@ -605,6 +608,7 @@ struct v4l2_plane {
   union {
   __u32   mem_offset;
   unsigned long   userptr;
 + int fd;
   } m;
   __u32   data_offset;
   __u32   reserved[11];
 @@ -629,6 +633,8 @@ struct v4l2_plane {
   *   (or a cookie that should be passed to mmap() as offset)
   * @userptr: for non-multiplanar buffers with memory ==
 V4L2_MEMORY_USERPTR; *a userspace pointer pointing to this 
 buffer
 + * @fd:  for non-multiplanar buffers with memory == 
V4L2_MEMORY_DMABUF;
 + *   a userspace file descriptor associated with this buffer
   * @planes:  for multiplanar buffers; userspace pointer to the array of
 plane *   info structs for this buffer
   * @length:  size in bytes of the buffer (NOT its payload) for single-
plane
 @@ -655,6 +661,7 @@ struct v4l2_buffer {
   __u32   offset;
   unsigned long   userptr;
   struct v4l2_plane *planes;
 + int fd;
   } m;
   __u32   length;
   __u32   input;
-- 
Regards,

Laurent Pinchart

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel


[PATCHv6 01/13] v4l: Add DMABUF as a memory type

2012-05-23 Thread Tomasz Stanislawski
From: Sumit Semwal 

Adds DMABUF memory type to v4l framework. Also adds the related file
descriptor in v4l2_plane and v4l2_buffer.

Signed-off-by: Tomasz Stanislawski 
   [original work in the PoC for buffer sharing]
Signed-off-by: Sumit Semwal 
Signed-off-by: Sumit Semwal 
Acked-by: Laurent Pinchart 
---
 drivers/media/video/v4l2-ioctl.c |1 +
 include/linux/videodev2.h|7 +++
 2 files changed, 8 insertions(+)

diff --git a/drivers/media/video/v4l2-ioctl.c b/drivers/media/video/v4l2-ioctl.c
index 91be4e8..31fc2ad 100644
--- a/drivers/media/video/v4l2-ioctl.c
+++ b/drivers/media/video/v4l2-ioctl.c
@@ -175,6 +175,7 @@ static const char *v4l2_memory_names[] = {
[V4L2_MEMORY_MMAP]= "mmap",
[V4L2_MEMORY_USERPTR] = "userptr",
[V4L2_MEMORY_OVERLAY] = "overlay",
+   [V4L2_MEMORY_DMABUF] = "dmabuf",
 };

 #define prt_names(a, arr) a) >= 0) && ((a) < ARRAY_SIZE(arr))) ? \
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 370d111..51b20f4 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -185,6 +185,7 @@ enum v4l2_memory {
V4L2_MEMORY_MMAP = 1,
V4L2_MEMORY_USERPTR  = 2,
V4L2_MEMORY_OVERLAY  = 3,
+   V4L2_MEMORY_DMABUF   = 4,
 };

 /* see also http://vektor.theorem.ca/graphics/ycbcr/ */
@@ -591,6 +592,8 @@ struct v4l2_requestbuffers {
  * should be passed to mmap() called on the video node)
  * @userptr:   when memory is V4L2_MEMORY_USERPTR, a userspace pointer
  * pointing to this plane
+ * @fd:when memory is V4L2_MEMORY_DMABUF, a userspace 
file
+ * descriptor associated with this plane
  * @data_offset:   offset in the plane to the start of data; usually 0,
  * unless there is a header in front of the data
  *
@@ -605,6 +608,7 @@ struct v4l2_plane {
union {
__u32   mem_offset;
unsigned long   userptr;
+   int fd;
} m;
__u32   data_offset;
__u32   reserved[11];
@@ -629,6 +633,8 @@ struct v4l2_plane {
  * (or a "cookie" that should be passed to mmap() as offset)
  * @userptr:   for non-multiplanar buffers with memory == V4L2_MEMORY_USERPTR;
  * a userspace pointer pointing to this buffer
+ * @fd:for non-multiplanar buffers with memory == 
V4L2_MEMORY_DMABUF;
+ * a userspace file descriptor associated with this buffer
  * @planes:for multiplanar buffers; userspace pointer to the array of plane
  * info structs for this buffer
  * @length:size in bytes of the buffer (NOT its payload) for single-plane
@@ -655,6 +661,7 @@ struct v4l2_buffer {
__u32   offset;
unsigned long   userptr;
struct v4l2_plane *planes;
+   int fd;
} m;
__u32   length;
__u32   input;
-- 
1.7.9.5



[PATCHv6 01/13] v4l: Add DMABUF as a memory type

2012-05-23 Thread Tomasz Stanislawski
From: Sumit Semwal sumit.sem...@ti.com

Adds DMABUF memory type to v4l framework. Also adds the related file
descriptor in v4l2_plane and v4l2_buffer.

Signed-off-by: Tomasz Stanislawski t.stanisl...@samsung.com
   [original work in the PoC for buffer sharing]
Signed-off-by: Sumit Semwal sumit.sem...@ti.com
Signed-off-by: Sumit Semwal sumit.sem...@linaro.org
Acked-by: Laurent Pinchart laurent.pinch...@ideasonboard.com
---
 drivers/media/video/v4l2-ioctl.c |1 +
 include/linux/videodev2.h|7 +++
 2 files changed, 8 insertions(+)

diff --git a/drivers/media/video/v4l2-ioctl.c b/drivers/media/video/v4l2-ioctl.c
index 91be4e8..31fc2ad 100644
--- a/drivers/media/video/v4l2-ioctl.c
+++ b/drivers/media/video/v4l2-ioctl.c
@@ -175,6 +175,7 @@ static const char *v4l2_memory_names[] = {
[V4L2_MEMORY_MMAP]= mmap,
[V4L2_MEMORY_USERPTR] = userptr,
[V4L2_MEMORY_OVERLAY] = overlay,
+   [V4L2_MEMORY_DMABUF] = dmabuf,
 };
 
 #define prt_names(a, arr) a) = 0)  ((a)  ARRAY_SIZE(arr))) ? \
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 370d111..51b20f4 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -185,6 +185,7 @@ enum v4l2_memory {
V4L2_MEMORY_MMAP = 1,
V4L2_MEMORY_USERPTR  = 2,
V4L2_MEMORY_OVERLAY  = 3,
+   V4L2_MEMORY_DMABUF   = 4,
 };
 
 /* see also http://vektor.theorem.ca/graphics/ycbcr/ */
@@ -591,6 +592,8 @@ struct v4l2_requestbuffers {
  * should be passed to mmap() called on the video node)
  * @userptr:   when memory is V4L2_MEMORY_USERPTR, a userspace pointer
  * pointing to this plane
+ * @fd:when memory is V4L2_MEMORY_DMABUF, a userspace 
file
+ * descriptor associated with this plane
  * @data_offset:   offset in the plane to the start of data; usually 0,
  * unless there is a header in front of the data
  *
@@ -605,6 +608,7 @@ struct v4l2_plane {
union {
__u32   mem_offset;
unsigned long   userptr;
+   int fd;
} m;
__u32   data_offset;
__u32   reserved[11];
@@ -629,6 +633,8 @@ struct v4l2_plane {
  * (or a cookie that should be passed to mmap() as offset)
  * @userptr:   for non-multiplanar buffers with memory == V4L2_MEMORY_USERPTR;
  * a userspace pointer pointing to this buffer
+ * @fd:for non-multiplanar buffers with memory == 
V4L2_MEMORY_DMABUF;
+ * a userspace file descriptor associated with this buffer
  * @planes:for multiplanar buffers; userspace pointer to the array of plane
  * info structs for this buffer
  * @length:size in bytes of the buffer (NOT its payload) for single-plane
@@ -655,6 +661,7 @@ struct v4l2_buffer {
__u32   offset;
unsigned long   userptr;
struct v4l2_plane *planes;
+   int fd;
} m;
__u32   length;
__u32   input;
-- 
1.7.9.5

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel