Pull media updates from Mauro Carvalho Chehab: - Media documentation is now split into admin-guide, driver-api and userspace-api books (a longstanding request from Jon); - The media Kconfig was reorganized, in order to make easier to select drivers and their dependencies; - The testing drivers now has a separate directory; - added a new driver for Rockchip Video Decoder IP; - The atomisp staging driver was resurrected. It is meant to work with 4 generations of cameras on Atom-based laptops, tablets and cell phones. So, it seems worth investing time to cleanup this driver and making it in good shape. - Added some V4L2 core ancillary routines to help with h264 codecs; - Added an ov2740 image sensor driver; - The si2157 gained support for Analog TV, which, in turn, added support for some cx231xx and cx23885 boards to also support analog standards; - Added some V4L2 controls (V4L2_CID_CAMERA_ORIENTATION and V4L2_CID_CAMERA_SENSOR_ROTATION) to help identifying where the camera is located at the device; - VIDIOC_ENUM_FMT was extended to support MC-centric devices; - Lots of drivers improvements and cleanups. * tag 'media/v5.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (503 commits) media: Documentation: media: Refer to mbus format documentation from CSI-2 docs media: s5k5baf: Replace zero-length array with flexible-array media: i2c: imx219: Drop <linux/clk-provider.h> and <linux/clkdev.h> media: i2c: Add ov2740 image sensor driver media: ov8856: Implement sensor module revision identification media: ov8856: Add devicetree support media: dt-bindings: ov8856: Document YAML bindings media: dvb-usb: Add Cinergy S2 PCIe Dual Port support media: dvbdev: Fix tuner->demod media controller link media: dt-bindings: phy: phy-rockchip-dphy-rx0: move rockchip dphy rx0 bindings out of staging media: staging: dt-bindings: phy-rockchip-dphy-rx0: remove non-used reg property media: atomisp: unify the version for isp2401 a0 and b0 versions media: atomisp: update TODO with the current data media: atomisp: adjust some code at sh_css that could be broken media: atomisp: don't produce errs for ignored IRQs media: atomisp: print IRQ when debugging media: atomisp: isp_mmu: don't use kmem_cache media: atomisp: add a notice about possible leak resources media: atomisp: disable the dynamic and reserved pools media: atomisp: turn on camera before setting it ...
Showing the changes to include/uapi/linux (3 of 1698 files). Show all
Unified · Split
| @@ -473,6 +473,10 @@ enum v4l2_mpeg_video_h264_level { · 472 unmodified lines | |||
| 473 | V4L2_MPEG_VIDEO_H264_LEVEL_4_2 = 13, | 473 | V4L2_MPEG_VIDEO_H264_LEVEL_4_2 = 13, |
| 474 | V4L2_MPEG_VIDEO_H264_LEVEL_5_0 = 14, | 474 | V4L2_MPEG_VIDEO_H264_LEVEL_5_0 = 14, |
| 475 | V4L2_MPEG_VIDEO_H264_LEVEL_5_1 = 15, | 475 | V4L2_MPEG_VIDEO_H264_LEVEL_5_1 = 15, |
| 476 | V4L2_MPEG_VIDEO_H264_LEVEL_5_2 = 16, | ||
| 477 | V4L2_MPEG_VIDEO_H264_LEVEL_6_0 = 17, | ||
| 478 | V4L2_MPEG_VIDEO_H264_LEVEL_6_1 = 18, | ||
| 479 | V4L2_MPEG_VIDEO_H264_LEVEL_6_2 = 19, | ||
| 476 | }; | 480 | }; |
| 477 | #define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA (V4L2_CID_MPEG_BASE+360) | 481 | #define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA (V4L2_CID_MPEG_BASE+360) |
| 478 | #define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA (V4L2_CID_MPEG_BASE+361) | 482 | #define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA (V4L2_CID_MPEG_BASE+361) |
| @@ -501,6 +505,7 @@ enum v4l2_mpeg_video_h264_profile { · 22 unmodified lines | |||
| 501 | V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA = 14, | 505 | V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA = 14, |
| 502 | V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH = 15, | 506 | V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH = 15, |
| 503 | V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH = 16, | 507 | V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH = 16, |
| 508 | V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH = 17, | ||
| 504 | }; | 509 | }; |
| 505 | #define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (V4L2_CID_MPEG_BASE+364) | 510 | #define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (V4L2_CID_MPEG_BASE+364) |
| 506 | #define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (V4L2_CID_MPEG_BASE+365) | 511 | #define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (V4L2_CID_MPEG_BASE+365) |
| @@ -918,6 +923,13 @@ enum v4l2_auto_focus_range { · 411 unmodified lines | |||
| 918 | #define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32) | 923 | #define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32) |
| 919 | #define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33) | 924 | #define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33) |
| 920 | 925 | ||
| 926 | #define V4L2_CID_CAMERA_ORIENTATION (V4L2_CID_CAMERA_CLASS_BASE+34) | ||
| 927 | #define V4L2_CAMERA_ORIENTATION_FRONT 0 | ||
| 928 | #define V4L2_CAMERA_ORIENTATION_BACK 1 | ||
| 929 | #define V4L2_CAMERA_ORIENTATION_EXTERNAL 2 | ||
| 930 | |||
| 931 | #define V4L2_CID_CAMERA_SENSOR_ROTATION (V4L2_CID_CAMERA_CLASS_BASE+35) | ||
| 932 | |||
| 921 | /* FM Modulator class control IDs */ | 933 | /* FM Modulator class control IDs */ |
| 922 | 934 | ||
| 923 | #define V4L2_CID_FM_TX_CLASS_BASE (V4L2_CTRL_CLASS_FM_TX | 0x900) | 935 | #define V4L2_CID_FM_TX_CLASS_BASE (V4L2_CTRL_CLASS_FM_TX | 0x900) |
| @@ -155,9 +155,25 @@ struct v4l2_subdev_selection { · 154 unmodified lines | |||
| 155 | __u32 reserved[8]; | 155 | __u32 reserved[8]; |
| 156 | }; | 156 | }; |
| 157 | 157 | ||
| 158 | /** | ||
| 159 | * struct v4l2_subdev_capability - subdev capabilities | ||
| 160 | * @version: the driver versioning number | ||
| 161 | * @capabilities: the subdev capabilities, see V4L2_SUBDEV_CAP_* | ||
| 162 | * @reserved: for future use, set to zero for now | ||
| 163 | */ | ||
| 164 | struct v4l2_subdev_capability { | ||
| 165 | __u32 version; | ||
| 166 | __u32 capabilities; | ||
| 167 | __u32 reserved[14]; | ||
| 168 | }; | ||
| 169 | |||
| 170 | /* The v4l2 sub-device video device node is registered in read-only mode. */ | ||
| 171 | #define V4L2_SUBDEV_CAP_RO_SUBDEV BIT(0) | ||
| 172 | |||
| 158 | /* Backwards compatibility define --- to be removed */ | 173 | /* Backwards compatibility define --- to be removed */ |
| 159 | #define v4l2_subdev_edid v4l2_edid | 174 | #define v4l2_subdev_edid v4l2_edid |
| 160 | 175 | ||
| 176 | #define VIDIOC_SUBDEV_QUERYCAP _IOR('V', 0, struct v4l2_subdev_capability) | ||
| 161 | #define VIDIOC_SUBDEV_G_FMT _IOWR('V', 4, struct v4l2_subdev_format) | 177 | #define VIDIOC_SUBDEV_G_FMT _IOWR('V', 4, struct v4l2_subdev_format) |
| 162 | #define VIDIOC_SUBDEV_S_FMT _IOWR('V', 5, struct v4l2_subdev_format) | 178 | #define VIDIOC_SUBDEV_S_FMT _IOWR('V', 5, struct v4l2_subdev_format) |
| 163 | #define VIDIOC_SUBDEV_G_FRAME_INTERVAL _IOWR('V', 21, struct v4l2_subdev_frame_interval) | 179 | #define VIDIOC_SUBDEV_G_FRAME_INTERVAL _IOWR('V', 21, struct v4l2_subdev_frame_interval) |
| @@ -487,6 +487,8 @@ struct v4l2_capability { · 486 unmodified lines | |||
| 487 | 487 | ||
| 488 | #define V4L2_CAP_TOUCH 0x10000000 /* Is a touch device */ | 488 | #define V4L2_CAP_TOUCH 0x10000000 /* Is a touch device */ |
| 489 | 489 | ||
| 490 | #define V4L2_CAP_IO_MC 0x20000000 /* Is input/output controlled by the media controller */ | ||
| 491 | |||
| 490 | #define V4L2_CAP_DEVICE_CAPS 0x80000000 /* sets device capabilities field */ | 492 | #define V4L2_CAP_DEVICE_CAPS 0x80000000 /* sets device capabilities field */ |
| 491 | 493 | ||
| 492 | /* | 494 | /* |
| @@ -782,7 +784,8 @@ struct v4l2_fmtdesc { · 289 unmodified lines | |||
| 782 | __u32 flags; | 784 | __u32 flags; |
| 783 | __u8 description[32]; /* Description string */ | 785 | __u8 description[32]; /* Description string */ |
| 784 | __u32 pixelformat; /* Format fourcc */ | 786 | __u32 pixelformat; /* Format fourcc */ |
| 785 | __u32 reserved[4]; | 787 | __u32 mbus_code; /* Media bus code */ |
| 788 | __u32 reserved[3]; | ||
| 786 | }; | 789 | }; |
| 787 | 790 | ||
| 788 | #define V4L2_FMT_FLAG_COMPRESSED 0x0001 | 791 | #define V4L2_FMT_FLAG_COMPRESSED 0x0001 |