diff options
author | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2016-02-19 19:58:43 -0500 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2016-02-19 19:58:43 -0500 |
commit | 4c4400504f6ada0cfed682fbe7e6c65efbda3952 (patch) | |
tree | 5452eb39c76081fc871abdf1a38ccf3668f5cb4f /include/uapi | |
parent | d2eaa59000c7717e68a75cf2c106f056d2bc30b4 (diff) | |
parent | 18922936dc2817488ebba985c5aaf3498f2ef96d (diff) |
Merge remote-tracking branch 'linuxtv/vsp1' into HEAD
Diffstat (limited to 'include/uapi')
-rw-r--r-- | include/uapi/linux/media.h | 43 | ||||
-rw-r--r-- | include/uapi/linux/v4l2-common.h | 46 | ||||
-rw-r--r-- | include/uapi/linux/v4l2-controls.h | 11 | ||||
-rw-r--r-- | include/uapi/linux/videodev2.h | 4 |
4 files changed, 75 insertions, 29 deletions
diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h index 1e3c8cb43bd7..6aac2f035a5d 100644 --- a/include/uapi/linux/media.h +++ b/include/uapi/linux/media.h | |||
@@ -72,21 +72,28 @@ struct media_device_info { | |||
72 | #define MEDIA_ENT_F_DTV_NET_DECAP (MEDIA_ENT_F_BASE + 4) | 72 | #define MEDIA_ENT_F_DTV_NET_DECAP (MEDIA_ENT_F_BASE + 4) |
73 | 73 | ||
74 | /* | 74 | /* |
75 | * Connectors | 75 | * I/O entities |
76 | */ | 76 | */ |
77 | /* It is a responsibility of the entity drivers to add connectors and links */ | 77 | #define MEDIA_ENT_F_IO_DTV (MEDIA_ENT_F_BASE + 1001) |
78 | #define MEDIA_ENT_F_CONN_RF (MEDIA_ENT_F_BASE + 21) | 78 | #define MEDIA_ENT_F_IO_VBI (MEDIA_ENT_F_BASE + 1002) |
79 | #define MEDIA_ENT_F_CONN_SVIDEO (MEDIA_ENT_F_BASE + 22) | 79 | #define MEDIA_ENT_F_IO_SWRADIO (MEDIA_ENT_F_BASE + 1003) |
80 | #define MEDIA_ENT_F_CONN_COMPOSITE (MEDIA_ENT_F_BASE + 23) | ||
81 | /* For internal test signal generators and other debug connectors */ | ||
82 | #define MEDIA_ENT_F_CONN_TEST (MEDIA_ENT_F_BASE + 24) | ||
83 | 80 | ||
84 | /* | 81 | /* |
85 | * I/O entities | 82 | * Analog TV IF-PLL decoders |
83 | * | ||
84 | * It is a responsibility of the master/bridge drivers to create links | ||
85 | * for MEDIA_ENT_F_IF_VID_DECODER and MEDIA_ENT_F_IF_AUD_DECODER. | ||
86 | */ | ||
87 | #define MEDIA_ENT_F_IF_VID_DECODER (MEDIA_ENT_F_BASE + 2001) | ||
88 | #define MEDIA_ENT_F_IF_AUD_DECODER (MEDIA_ENT_F_BASE + 2002) | ||
89 | |||
90 | /* | ||
91 | * Connectors | ||
86 | */ | 92 | */ |
87 | #define MEDIA_ENT_F_IO_DTV (MEDIA_ENT_F_BASE + 31) | 93 | /* It is a responsibility of the entity drivers to add connectors and links */ |
88 | #define MEDIA_ENT_F_IO_VBI (MEDIA_ENT_F_BASE + 32) | 94 | #define MEDIA_ENT_F_CONN_RF (MEDIA_ENT_F_BASE + 10001) |
89 | #define MEDIA_ENT_F_IO_SWRADIO (MEDIA_ENT_F_BASE + 33) | 95 | #define MEDIA_ENT_F_CONN_SVIDEO (MEDIA_ENT_F_BASE + 10002) |
96 | #define MEDIA_ENT_F_CONN_COMPOSITE (MEDIA_ENT_F_BASE + 10003) | ||
90 | 97 | ||
91 | /* | 98 | /* |
92 | * Don't touch on those. The ranges MEDIA_ENT_F_OLD_BASE and | 99 | * Don't touch on those. The ranges MEDIA_ENT_F_OLD_BASE and |
@@ -107,8 +114,12 @@ struct media_device_info { | |||
107 | #define MEDIA_ENT_F_LENS (MEDIA_ENT_F_OLD_SUBDEV_BASE + 3) | 114 | #define MEDIA_ENT_F_LENS (MEDIA_ENT_F_OLD_SUBDEV_BASE + 3) |
108 | #define MEDIA_ENT_F_ATV_DECODER (MEDIA_ENT_F_OLD_SUBDEV_BASE + 4) | 115 | #define MEDIA_ENT_F_ATV_DECODER (MEDIA_ENT_F_OLD_SUBDEV_BASE + 4) |
109 | /* | 116 | /* |
110 | * It is a responsibility of the entity drivers to add connectors and links | 117 | * It is a responsibility of the master/bridge drivers to add connectors |
111 | * for the tuner entities. | 118 | * and links for MEDIA_ENT_F_TUNER. Please notice that some old tuners |
119 | * may require the usage of separate I2C chips to decode analog TV signals, | ||
120 | * when the master/bridge chipset doesn't have its own TV standard decoder. | ||
121 | * On such cases, the IF-PLL staging is mapped via one or two entities: | ||
122 | * MEDIA_ENT_F_IF_VID_DECODER and/or MEDIA_ENT_F_IF_AUD_DECODER. | ||
112 | */ | 123 | */ |
113 | #define MEDIA_ENT_F_TUNER (MEDIA_ENT_F_OLD_SUBDEV_BASE + 5) | 124 | #define MEDIA_ENT_F_TUNER (MEDIA_ENT_F_OLD_SUBDEV_BASE + 5) |
114 | 125 | ||
@@ -286,7 +297,7 @@ struct media_links_enum { | |||
286 | * later, before the adding this API upstream. | 297 | * later, before the adding this API upstream. |
287 | */ | 298 | */ |
288 | 299 | ||
289 | #if 0 /* Let's postpone it to Kernel 4.6 */ | 300 | |
290 | struct media_v2_entity { | 301 | struct media_v2_entity { |
291 | __u32 id; | 302 | __u32 id; |
292 | char name[64]; /* FIXME: move to a property? (RFC says so) */ | 303 | char name[64]; /* FIXME: move to a property? (RFC says so) */ |
@@ -351,7 +362,6 @@ static inline void __user *media_get_uptr(__u64 arg) | |||
351 | { | 362 | { |
352 | return (void __user *)(uintptr_t)arg; | 363 | return (void __user *)(uintptr_t)arg; |
353 | } | 364 | } |
354 | #endif | ||
355 | 365 | ||
356 | /* ioctls */ | 366 | /* ioctls */ |
357 | 367 | ||
@@ -359,9 +369,6 @@ static inline void __user *media_get_uptr(__u64 arg) | |||
359 | #define MEDIA_IOC_ENUM_ENTITIES _IOWR('|', 0x01, struct media_entity_desc) | 369 | #define MEDIA_IOC_ENUM_ENTITIES _IOWR('|', 0x01, struct media_entity_desc) |
360 | #define MEDIA_IOC_ENUM_LINKS _IOWR('|', 0x02, struct media_links_enum) | 370 | #define MEDIA_IOC_ENUM_LINKS _IOWR('|', 0x02, struct media_links_enum) |
361 | #define MEDIA_IOC_SETUP_LINK _IOWR('|', 0x03, struct media_link_desc) | 371 | #define MEDIA_IOC_SETUP_LINK _IOWR('|', 0x03, struct media_link_desc) |
362 | |||
363 | #if 0 /* Let's postpone it to Kernel 4.6 */ | ||
364 | #define MEDIA_IOC_G_TOPOLOGY _IOWR('|', 0x04, struct media_v2_topology) | 372 | #define MEDIA_IOC_G_TOPOLOGY _IOWR('|', 0x04, struct media_v2_topology) |
365 | #endif | ||
366 | 373 | ||
367 | #endif /* __LINUX_MEDIA_H */ | 374 | #endif /* __LINUX_MEDIA_H */ |
diff --git a/include/uapi/linux/v4l2-common.h b/include/uapi/linux/v4l2-common.h index 15273987093e..5b3f685a2d50 100644 --- a/include/uapi/linux/v4l2-common.h +++ b/include/uapi/linux/v4l2-common.h | |||
@@ -10,19 +10,43 @@ | |||
10 | * Copyright (C) 2012 Nokia Corporation | 10 | * Copyright (C) 2012 Nokia Corporation |
11 | * Contact: Sakari Ailus <sakari.ailus@iki.fi> | 11 | * Contact: Sakari Ailus <sakari.ailus@iki.fi> |
12 | * | 12 | * |
13 | * This program is free software; you can redistribute it and/or | 13 | * This program is free software; you can redistribute it and/or modify |
14 | * modify it under the terms of the GNU General Public License | 14 | * it under the terms of the GNU General Public License as published by |
15 | * version 2 as published by the Free Software Foundation. | 15 | * the Free Software Foundation; either version 2 of the License, or |
16 | * (at your option) any later version. | ||
16 | * | 17 | * |
17 | * This program is distributed in the hope that it will be useful, but | 18 | * This program is distributed in the hope that it will be useful, |
18 | * WITHOUT ANY WARRANTY; without even the implied warranty of | 19 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 20 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
20 | * General Public License for more details. | 21 | * GNU General Public License for more details. |
21 | * | 22 | * |
22 | * You should have received a copy of the GNU General Public License | 23 | * Alternatively you can redistribute this file under the terms of the |
23 | * along with this program; if not, write to the Free Software | 24 | * BSD license as stated below: |
24 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA | 25 | * |
25 | * 02110-1301 USA | 26 | * Redistribution and use in source and binary forms, with or without |
27 | * modification, are permitted provided that the following conditions | ||
28 | * are met: | ||
29 | * 1. Redistributions of source code must retain the above copyright | ||
30 | * notice, this list of conditions and the following disclaimer. | ||
31 | * 2. Redistributions in binary form must reproduce the above copyright | ||
32 | * notice, this list of conditions and the following disclaimer in | ||
33 | * the documentation and/or other materials provided with the | ||
34 | * distribution. | ||
35 | * 3. The names of its contributors may not be used to endorse or promote | ||
36 | * products derived from this software without specific prior written | ||
37 | * permission. | ||
38 | * | ||
39 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
40 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
41 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | ||
42 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
43 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
44 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
45 | * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
46 | * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
47 | * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
48 | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
49 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
26 | * | 50 | * |
27 | */ | 51 | */ |
28 | 52 | ||
diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h index 2d225bcdb831..b6a357a5f053 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h | |||
@@ -390,6 +390,7 @@ enum v4l2_mpeg_video_multi_slice_mode { | |||
390 | #define V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (V4L2_CID_MPEG_BASE+226) | 390 | #define V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (V4L2_CID_MPEG_BASE+226) |
391 | #define V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (V4L2_CID_MPEG_BASE+227) | 391 | #define V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (V4L2_CID_MPEG_BASE+227) |
392 | #define V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (V4L2_CID_MPEG_BASE+228) | 392 | #define V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (V4L2_CID_MPEG_BASE+228) |
393 | #define V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME (V4L2_CID_MPEG_BASE+229) | ||
393 | 394 | ||
394 | #define V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (V4L2_CID_MPEG_BASE+300) | 395 | #define V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (V4L2_CID_MPEG_BASE+300) |
395 | #define V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (V4L2_CID_MPEG_BASE+301) | 396 | #define V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (V4L2_CID_MPEG_BASE+301) |
@@ -912,8 +913,18 @@ enum v4l2_dv_rgb_range { | |||
912 | V4L2_DV_RGB_RANGE_FULL = 2, | 913 | V4L2_DV_RGB_RANGE_FULL = 2, |
913 | }; | 914 | }; |
914 | 915 | ||
916 | #define V4L2_CID_DV_TX_IT_CONTENT_TYPE (V4L2_CID_DV_CLASS_BASE + 6) | ||
917 | enum v4l2_dv_it_content_type { | ||
918 | V4L2_DV_IT_CONTENT_TYPE_GRAPHICS = 0, | ||
919 | V4L2_DV_IT_CONTENT_TYPE_PHOTO = 1, | ||
920 | V4L2_DV_IT_CONTENT_TYPE_CINEMA = 2, | ||
921 | V4L2_DV_IT_CONTENT_TYPE_GAME = 3, | ||
922 | V4L2_DV_IT_CONTENT_TYPE_NO_ITC = 4, | ||
923 | }; | ||
924 | |||
915 | #define V4L2_CID_DV_RX_POWER_PRESENT (V4L2_CID_DV_CLASS_BASE + 100) | 925 | #define V4L2_CID_DV_RX_POWER_PRESENT (V4L2_CID_DV_CLASS_BASE + 100) |
916 | #define V4L2_CID_DV_RX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 101) | 926 | #define V4L2_CID_DV_RX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 101) |
927 | #define V4L2_CID_DV_RX_IT_CONTENT_TYPE (V4L2_CID_DV_CLASS_BASE + 102) | ||
917 | 928 | ||
918 | #define V4L2_CID_FM_RX_CLASS_BASE (V4L2_CTRL_CLASS_FM_RX | 0x900) | 929 | #define V4L2_CID_FM_RX_CLASS_BASE (V4L2_CTRL_CLASS_FM_RX | 0x900) |
919 | #define V4L2_CID_FM_RX_CLASS (V4L2_CTRL_CLASS_FM_RX | 1) | 930 | #define V4L2_CID_FM_RX_CLASS (V4L2_CTRL_CLASS_FM_RX | 1) |
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h index 14cd5ebfee6d..466458422385 100644 --- a/include/uapi/linux/videodev2.h +++ b/include/uapi/linux/videodev2.h | |||
@@ -546,6 +546,10 @@ struct v4l2_pix_format { | |||
546 | /* three non contiguous planes - Y, Cb, Cr */ | 546 | /* three non contiguous planes - Y, Cb, Cr */ |
547 | #define V4L2_PIX_FMT_YUV420M v4l2_fourcc('Y', 'M', '1', '2') /* 12 YUV420 planar */ | 547 | #define V4L2_PIX_FMT_YUV420M v4l2_fourcc('Y', 'M', '1', '2') /* 12 YUV420 planar */ |
548 | #define V4L2_PIX_FMT_YVU420M v4l2_fourcc('Y', 'M', '2', '1') /* 12 YVU420 planar */ | 548 | #define V4L2_PIX_FMT_YVU420M v4l2_fourcc('Y', 'M', '2', '1') /* 12 YVU420 planar */ |
549 | #define V4L2_PIX_FMT_YUV422M v4l2_fourcc('Y', 'M', '1', '6') /* 16 YUV422 planar */ | ||
550 | #define V4L2_PIX_FMT_YVU422M v4l2_fourcc('Y', 'M', '6', '1') /* 16 YVU422 planar */ | ||
551 | #define V4L2_PIX_FMT_YUV444M v4l2_fourcc('Y', 'M', '2', '4') /* 24 YUV444 planar */ | ||
552 | #define V4L2_PIX_FMT_YVU444M v4l2_fourcc('Y', 'M', '4', '2') /* 24 YVU444 planar */ | ||
549 | 553 | ||
550 | /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ | 554 | /* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */ |
551 | #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */ | 555 | #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */ |