diff options
| author | Hans Verkuil <hansverk@cisco.com> | 2018-08-23 09:56:22 -0400 |
|---|---|---|
| committer | Mauro Carvalho Chehab <mchehab+samsung@kernel.org> | 2018-09-11 09:49:15 -0400 |
| commit | f35f5d72e70e6b91389eb98fcabf43b79f40587f (patch) | |
| tree | f8967eac3773ebcab97e8ccb6e7703bf46ef0177 /include/uapi/linux | |
| parent | dc58a553ba8c4edd26c4f585bbbc16ab2f0ec35f (diff) | |
media: videodev2.h: add new capabilities for buffer types
VIDIOC_REQBUFS and VIDIOC_CREATE_BUFFERS will return capabilities
telling userspace what the given buffer type is capable of.
Signed-off-by: Hans Verkuil <hansverk@cisco.com>
Reviewed-by: Tomasz Figa <tfiga@chromium.org>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/videodev2.h | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h index 2350151ce4ea..55d45a387dd2 100644 --- a/include/uapi/linux/videodev2.h +++ b/include/uapi/linux/videodev2.h | |||
| @@ -856,9 +856,16 @@ struct v4l2_requestbuffers { | |||
| 856 | __u32 count; | 856 | __u32 count; |
| 857 | __u32 type; /* enum v4l2_buf_type */ | 857 | __u32 type; /* enum v4l2_buf_type */ |
| 858 | __u32 memory; /* enum v4l2_memory */ | 858 | __u32 memory; /* enum v4l2_memory */ |
| 859 | __u32 reserved[2]; | 859 | __u32 capabilities; |
| 860 | __u32 reserved[1]; | ||
| 860 | }; | 861 | }; |
| 861 | 862 | ||
| 863 | /* capabilities for struct v4l2_requestbuffers and v4l2_create_buffers */ | ||
| 864 | #define V4L2_BUF_CAP_SUPPORTS_MMAP (1 << 0) | ||
| 865 | #define V4L2_BUF_CAP_SUPPORTS_USERPTR (1 << 1) | ||
| 866 | #define V4L2_BUF_CAP_SUPPORTS_DMABUF (1 << 2) | ||
| 867 | #define V4L2_BUF_CAP_SUPPORTS_REQUESTS (1 << 3) | ||
| 868 | |||
| 862 | /** | 869 | /** |
| 863 | * struct v4l2_plane - plane info for multi-planar buffers | 870 | * struct v4l2_plane - plane info for multi-planar buffers |
| 864 | * @bytesused: number of bytes occupied by data in the plane (payload) | 871 | * @bytesused: number of bytes occupied by data in the plane (payload) |
| @@ -2319,6 +2326,7 @@ struct v4l2_dbg_chip_info { | |||
| 2319 | * return: number of created buffers | 2326 | * return: number of created buffers |
| 2320 | * @memory: enum v4l2_memory; buffer memory type | 2327 | * @memory: enum v4l2_memory; buffer memory type |
| 2321 | * @format: frame format, for which buffers are requested | 2328 | * @format: frame format, for which buffers are requested |
| 2329 | * @capabilities: capabilities of this buffer type. | ||
| 2322 | * @reserved: future extensions | 2330 | * @reserved: future extensions |
| 2323 | */ | 2331 | */ |
| 2324 | struct v4l2_create_buffers { | 2332 | struct v4l2_create_buffers { |
| @@ -2326,7 +2334,8 @@ struct v4l2_create_buffers { | |||
| 2326 | __u32 count; | 2334 | __u32 count; |
| 2327 | __u32 memory; | 2335 | __u32 memory; |
| 2328 | struct v4l2_format format; | 2336 | struct v4l2_format format; |
| 2329 | __u32 reserved[8]; | 2337 | __u32 capabilities; |
| 2338 | __u32 reserved[7]; | ||
| 2330 | }; | 2339 | }; |
| 2331 | 2340 | ||
| 2332 | /* | 2341 | /* |
