Merge tag 'media/v4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
Pull media updates from Mauro Carvalho Chehab: - Documentation improvements: conversion of all non-DocBook documents to Sphinx and lots of fixes to the uAPI media book - New PCI driver for Techwell TW5864 media grabber boards - New SoC driver for ATMEL Image Sensor Controller - Removal of some obsolete SoC drivers (s5p-tv driver and soc_camera drivers) - Addition of ST CEC driver - Lots of drivers fixes, improvements and additions * tag 'media/v4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (464 commits) [media] ttusb_dec: avoid the risk of go past buffer [media] cx23885: Fix some smatch warnings [media] si2165: switch to regmap [media] si2165: use i2c_client->dev instead of i2c_adapter->dev for logging [media] si2165: Remove legacy attach [media] cx231xx: attach si2165 driver via i2c_client [media] cx231xx: Prepare for attaching new style i2c_client DVB demod drivers [media] cx23885: attach si2165 driver via i2c_client [media] si2165: support i2c_client attach [media] si2165: avoid division by zero [media] rcar-vin: add R-Car gen2 fallback compatibility string [media] lgdt3306a: remove 20*50 msec unnecessary timeout [media] cx25821: Remove deprecated create_singlethread_workqueue [media] cx25821: Drop Freeing of Workqueue [media] cxd2841er: force 8MHz bandwidth for DVB-C if specified bw not supported [media] redrat3: hardware-specific parameters [media] redrat3: remove hw_timeout member [media] cxd2841er: BER and SNR reading for ISDB-T [media] dvb-usb: avoid link error with dib3000m{b,c| [media] dvb-usb: split out common parts of dibusb ...
This commit is contained in:
@@ -206,7 +206,8 @@ typedef __u16 video_attributes_t;
|
||||
/* 6 line 21-2 data present in GOP (1=yes, 0=no) */
|
||||
/* 5- 3 source resolution (0=720x480/576, 1=704x480/576, 2=352x480/57 */
|
||||
/* 2 source letterboxed (1=yes, 0=no) */
|
||||
/* 0 film/camera mode (0=camera, 1=film (625/50 only)) */
|
||||
/* 0 film/camera mode (0=
|
||||
*camera, 1=film (625/50 only)) */
|
||||
|
||||
|
||||
/* bit definitions for capabilities: */
|
||||
|
@@ -97,7 +97,7 @@
|
||||
#define MEDIA_BUS_FMT_YUV10_1X30 0x2016
|
||||
#define MEDIA_BUS_FMT_AYUV8_1X32 0x2017
|
||||
|
||||
/* Bayer - next is 0x3019 */
|
||||
/* Bayer - next is 0x3021 */
|
||||
#define MEDIA_BUS_FMT_SBGGR8_1X8 0x3001
|
||||
#define MEDIA_BUS_FMT_SGBRG8_1X8 0x3013
|
||||
#define MEDIA_BUS_FMT_SGRBG8_1X8 0x3002
|
||||
@@ -122,6 +122,14 @@
|
||||
#define MEDIA_BUS_FMT_SGBRG12_1X12 0x3010
|
||||
#define MEDIA_BUS_FMT_SGRBG12_1X12 0x3011
|
||||
#define MEDIA_BUS_FMT_SRGGB12_1X12 0x3012
|
||||
#define MEDIA_BUS_FMT_SBGGR14_1X14 0x3019
|
||||
#define MEDIA_BUS_FMT_SGBRG14_1X14 0x301a
|
||||
#define MEDIA_BUS_FMT_SGRBG14_1X14 0x301b
|
||||
#define MEDIA_BUS_FMT_SRGGB14_1X14 0x301c
|
||||
#define MEDIA_BUS_FMT_SBGGR16_1X16 0x301d
|
||||
#define MEDIA_BUS_FMT_SGBRG16_1X16 0x301e
|
||||
#define MEDIA_BUS_FMT_SGRBG16_1X16 0x301f
|
||||
#define MEDIA_BUS_FMT_SRGGB16_1X16 0x3020
|
||||
|
||||
/* JPEG compressed formats - next is 0x4002 */
|
||||
#define MEDIA_BUS_FMT_JPEG_1X8 0x4001
|
||||
|
@@ -307,6 +307,7 @@ struct media_links_enum {
|
||||
#define MEDIA_INTF_T_V4L_RADIO (MEDIA_INTF_T_V4L_BASE + 2)
|
||||
#define MEDIA_INTF_T_V4L_SUBDEV (MEDIA_INTF_T_V4L_BASE + 3)
|
||||
#define MEDIA_INTF_T_V4L_SWRADIO (MEDIA_INTF_T_V4L_BASE + 4)
|
||||
#define MEDIA_INTF_T_V4L_TOUCH (MEDIA_INTF_T_V4L_BASE + 5)
|
||||
|
||||
#define MEDIA_INTF_T_ALSA_PCM_CAPTURE (MEDIA_INTF_T_ALSA_BASE)
|
||||
#define MEDIA_INTF_T_ALSA_PCM_PLAYBACK (MEDIA_INTF_T_ALSA_BASE + 1)
|
||||
|
@@ -934,4 +934,16 @@
|
||||
V4L2_DV_FL_REDUCED_BLANKING) \
|
||||
}
|
||||
|
||||
/* SDI timings definitions */
|
||||
|
||||
/* SMPTE-125M */
|
||||
#define V4L2_DV_BT_SDI_720X487I60 { \
|
||||
.type = V4L2_DV_BT_656_1120, \
|
||||
V4L2_INIT_BT_TIMINGS(720, 487, 1, \
|
||||
V4L2_DV_HSYNC_POS_POL, \
|
||||
13500000, 16, 121, 0, 0, 19, 0, 0, 19, 0, \
|
||||
V4L2_DV_BT_STD_SDI, \
|
||||
V4L2_DV_FL_FIRST_FIELD_EXTRA_LINE) \
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@@ -292,13 +292,11 @@ enum v4l2_ycbcr_encoding {
|
||||
* various colorspaces:
|
||||
*
|
||||
* V4L2_COLORSPACE_SMPTE170M, V4L2_COLORSPACE_470_SYSTEM_M,
|
||||
* V4L2_COLORSPACE_470_SYSTEM_BG, V4L2_COLORSPACE_ADOBERGB and
|
||||
* V4L2_COLORSPACE_JPEG: V4L2_YCBCR_ENC_601
|
||||
* V4L2_COLORSPACE_470_SYSTEM_BG, V4L2_COLORSPACE_SRGB,
|
||||
* V4L2_COLORSPACE_ADOBERGB and V4L2_COLORSPACE_JPEG: V4L2_YCBCR_ENC_601
|
||||
*
|
||||
* V4L2_COLORSPACE_REC709 and V4L2_COLORSPACE_DCI_P3: V4L2_YCBCR_ENC_709
|
||||
*
|
||||
* V4L2_COLORSPACE_SRGB: V4L2_YCBCR_ENC_SYCC
|
||||
*
|
||||
* V4L2_COLORSPACE_BT2020: V4L2_YCBCR_ENC_BT2020
|
||||
*
|
||||
* V4L2_COLORSPACE_SMPTE240M: V4L2_YCBCR_ENC_SMPTE240M
|
||||
@@ -317,8 +315,14 @@ enum v4l2_ycbcr_encoding {
|
||||
/* Rec. 709/EN 61966-2-4 Extended Gamut -- HDTV */
|
||||
V4L2_YCBCR_ENC_XV709 = 4,
|
||||
|
||||
/* sYCC (Y'CbCr encoding of sRGB) */
|
||||
#ifndef __KERNEL__
|
||||
/*
|
||||
* sYCC (Y'CbCr encoding of sRGB), identical to ENC_601. It was added
|
||||
* originally due to a misunderstanding of the sYCC standard. It should
|
||||
* not be used, instead use V4L2_YCBCR_ENC_601.
|
||||
*/
|
||||
V4L2_YCBCR_ENC_SYCC = 5,
|
||||
#endif
|
||||
|
||||
/* BT.2020 Non-constant Luminance Y'CbCr */
|
||||
V4L2_YCBCR_ENC_BT2020 = 6,
|
||||
@@ -345,8 +349,8 @@ enum v4l2_quantization {
|
||||
/*
|
||||
* The default for R'G'B' quantization is always full range, except
|
||||
* for the BT2020 colorspace. For Y'CbCr the quantization is always
|
||||
* limited range, except for COLORSPACE_JPEG, SYCC, XV601 or XV709:
|
||||
* those are full range.
|
||||
* limited range, except for COLORSPACE_JPEG, SRGB, ADOBERGB,
|
||||
* XV601 or XV709: those are full range.
|
||||
*/
|
||||
V4L2_QUANTIZATION_DEFAULT = 0,
|
||||
V4L2_QUANTIZATION_FULL_RANGE = 1,
|
||||
@@ -361,7 +365,8 @@ enum v4l2_quantization {
|
||||
#define V4L2_MAP_QUANTIZATION_DEFAULT(is_rgb, colsp, ycbcr_enc) \
|
||||
(((is_rgb) && (colsp) == V4L2_COLORSPACE_BT2020) ? V4L2_QUANTIZATION_LIM_RANGE : \
|
||||
(((is_rgb) || (ycbcr_enc) == V4L2_YCBCR_ENC_XV601 || \
|
||||
(ycbcr_enc) == V4L2_YCBCR_ENC_XV709 || (colsp) == V4L2_COLORSPACE_JPEG) ? \
|
||||
(ycbcr_enc) == V4L2_YCBCR_ENC_XV709 || (colsp) == V4L2_COLORSPACE_JPEG) || \
|
||||
(colsp) == V4L2_COLORSPACE_ADOBERGB || (colsp) == V4L2_COLORSPACE_SRGB ? \
|
||||
V4L2_QUANTIZATION_FULL_RANGE : V4L2_QUANTIZATION_LIM_RANGE))
|
||||
|
||||
enum v4l2_priority {
|
||||
@@ -440,6 +445,8 @@ struct v4l2_capability {
|
||||
#define V4L2_CAP_ASYNCIO 0x02000000 /* async I/O */
|
||||
#define V4L2_CAP_STREAMING 0x04000000 /* streaming I/O ioctls */
|
||||
|
||||
#define V4L2_CAP_TOUCH 0x10000000 /* Is a touch device */
|
||||
|
||||
#define V4L2_CAP_DEVICE_CAPS 0x80000000 /* sets device capabilities field */
|
||||
|
||||
/*
|
||||
@@ -635,6 +642,12 @@ struct v4l2_pix_format {
|
||||
#define V4L2_SDR_FMT_CS14LE v4l2_fourcc('C', 'S', '1', '4') /* complex s14le */
|
||||
#define V4L2_SDR_FMT_RU12LE v4l2_fourcc('R', 'U', '1', '2') /* real u12le */
|
||||
|
||||
/* Touch formats - used for Touch devices */
|
||||
#define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6') /* 16-bit signed deltas */
|
||||
#define V4L2_TCH_FMT_DELTA_TD08 v4l2_fourcc('T', 'D', '0', '8') /* 8-bit signed deltas */
|
||||
#define V4L2_TCH_FMT_TU16 v4l2_fourcc('T', 'U', '1', '6') /* 16-bit unsigned touch data */
|
||||
#define V4L2_TCH_FMT_TU08 v4l2_fourcc('T', 'U', '0', '8') /* 8-bit unsigned touch data */
|
||||
|
||||
/* priv field value to indicates that subsequent fields are valid. */
|
||||
#define V4L2_PIX_FMT_PRIV_MAGIC 0xfeedcafe
|
||||
|
||||
@@ -1261,6 +1274,7 @@ struct v4l2_bt_timings {
|
||||
#define V4L2_DV_BT_STD_DMT (1 << 1) /* VESA Discrete Monitor Timings */
|
||||
#define V4L2_DV_BT_STD_CVT (1 << 2) /* VESA Coordinated Video Timings */
|
||||
#define V4L2_DV_BT_STD_GTF (1 << 3) /* VESA Generalized Timings Formula */
|
||||
#define V4L2_DV_BT_STD_SDI (1 << 4) /* SDI Timings */
|
||||
|
||||
/* Flags */
|
||||
|
||||
@@ -1292,6 +1306,11 @@ struct v4l2_bt_timings {
|
||||
* use the range 16-235) as opposed to 0-255. All formats defined in CEA-861
|
||||
* except for the 640x480 format are CE formats. */
|
||||
#define V4L2_DV_FL_IS_CE_VIDEO (1 << 4)
|
||||
/* Some formats like SMPTE-125M have an interlaced signal with a odd
|
||||
* total height. For these formats, if this flag is set, the first
|
||||
* field has the extra line. If not, it is the second field.
|
||||
*/
|
||||
#define V4L2_DV_FL_FIRST_FIELD_EXTRA_LINE (1 << 5)
|
||||
|
||||
/* A few useful defines to calculate the total blanking and frame sizes */
|
||||
#define V4L2_DV_BT_BLANKING_WIDTH(bt) \
|
||||
@@ -1401,6 +1420,7 @@ struct v4l2_input {
|
||||
/* Values for the 'type' field */
|
||||
#define V4L2_INPUT_TYPE_TUNER 1
|
||||
#define V4L2_INPUT_TYPE_CAMERA 2
|
||||
#define V4L2_INPUT_TYPE_TOUCH 3
|
||||
|
||||
/* field 'status' - general */
|
||||
#define V4L2_IN_ST_NO_POWER 0x00000001 /* Attached device is off */
|
||||
@@ -1415,6 +1435,8 @@ struct v4l2_input {
|
||||
/* field 'status' - analog */
|
||||
#define V4L2_IN_ST_NO_H_LOCK 0x00000100 /* No horizontal sync lock */
|
||||
#define V4L2_IN_ST_COLOR_KILL 0x00000200 /* Color killer is active */
|
||||
#define V4L2_IN_ST_NO_V_LOCK 0x00000400 /* No vertical sync lock */
|
||||
#define V4L2_IN_ST_NO_STD_LOCK 0x00000800 /* No standard format lock */
|
||||
|
||||
/* field 'status' - digital */
|
||||
#define V4L2_IN_ST_NO_SYNC 0x00010000 /* No synchronization lock */
|
||||
|
Reference in New Issue
Block a user