Pull media updates from Mauro Carvalho Chehab: - the old V4L2 core videobuf kAPI was finally removed. All media drivers should now be using VB2 kAPI - new automotive driver: mgb4 - new platform video driver: npcm-video - new sensor driver: mt9m114 - new TI driver used in conjunction with Cadence CSI2RX IP to bridge TI-specific parts - ir-rx51 was removed and the N900 DT binding was moved to the pwm-ir-tx generic driver - drop atomisp-specific ov5693, using the upstream driver instead - the camss driver has gained RDI3 support for VFE 17x - the atomisp driver now detects ISP2400 or ISP2401 at run time. No need to set it up at build time anymore - lots of driver fixes, cleanups and improvements * tag 'media/v6.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (377 commits) media: nuvoton: VIDEO_NPCM_VCD_ECE should depend on ARCH_NPCM media: venus: Fix firmware path for resources media: venus: hfi_cmds: Replace one-element array with flex-array member and use __counted_by media: venus: hfi_parser: Add check to keep the number of codecs within range media: venus: hfi: add checks to handle capabilities from firmware media: venus: hfi: fix the check to handle session buffer requirement media: venus: hfi: add checks to perform sanity on queue pointers media: platform: cadence: select MIPI_DPHY dependency media: MAINTAINERS: Fix path for J721E CSI2RX bindings media: cec: meson: always include meson sub-directory in Makefile media: videobuf2: Fix IS_ERR checking in vb2_dc_put_userptr() media: platform: mtk-mdp3: fix uninitialized variable in mdp_path_config() media: mediatek: vcodec: using encoder device to alloc/free encoder memory media: imx-jpeg: notify source chagne event when the first picture parsed media: cx231xx: Use EP5_BUF_SIZE macro media: siano: Drop unnecessary error check for debugfs_create_dir/file() media: mediatek: vcodec: Handle invalid encoder vsi media: aspeed: Drop unnecessary error check for debugfs_create_file() Documentation: media: buffer.rst: fix V4L2_BUF_FLAG_PREPARED Documentation: media: gen-errors.rst: fix confusing ENOTTY description ...
Showing the changes to include/uapi (3 of 505 files). Show all
Unified · Split
| @@ -0,0 +1,41 @@ | ||
| 1 | +/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ | |
| 2 | +/* | |
| 3 | + * Controls header for NPCM video driver | |
| 4 | + * | |
| 5 | + * Copyright (C) 2022 Nuvoton Technologies | |
| 6 | + */ | |
| 7 | + | |
| 8 | +#ifndef _UAPI_LINUX_NPCM_VIDEO_H | |
| 9 | +#define _UAPI_LINUX_NPCM_VIDEO_H | |
| 10 | + | |
| 11 | +#include <linux/v4l2-controls.h> | |
| 12 | + | |
| 13 | +/* | |
| 14 | + * Check Documentation/userspace-api/media/drivers/npcm-video.rst for control | |
| 15 | + * details. | |
| 16 | + */ | |
| 17 | + | |
| 18 | +/* | |
| 19 | + * This control is meant to set the mode of NPCM Video Capture/Differentiation | |
| 20 | + * (VCD) engine. | |
| 21 | + * | |
| 22 | + * The VCD engine supports two modes: | |
| 23 | + * COMPLETE - Capture the next complete frame into memory. | |
| 24 | + * DIFF - Compare the incoming frame with the frame stored in memory, and | |
| 25 | + * updates the differentiated frame in memory. | |
| 26 | + */ | |
| 27 | +#define V4L2_CID_NPCM_CAPTURE_MODE (V4L2_CID_USER_NPCM_BASE + 0) | |
| 28 | + | |
| 29 | +enum v4l2_npcm_capture_mode { | |
| 30 | + V4L2_NPCM_CAPTURE_MODE_COMPLETE = 0, /* COMPLETE mode */ | |
| 31 | + V4L2_NPCM_CAPTURE_MODE_DIFF = 1, /* DIFF mode */ | |
| 32 | +}; | |
| 33 | + | |
| 34 | +/* | |
| 35 | + * This control is meant to get the count of compressed HEXTILE rectangles which | |
| 36 | + * is relevant to the number of differentiated frames if VCD is in DIFF mode. | |
| 37 | + * And the count will always be 1 if VCD is in COMPLETE mode. | |
| 38 | + */ | |
| 39 | +#define V4L2_CID_NPCM_RECT_COUNT (V4L2_CID_USER_NPCM_BASE + 1) | |
| 40 | + | |
| 41 | +#endif /* _UAPI_LINUX_NPCM_VIDEO_H */ | |
| @@ -203,6 +203,12 @@ enum v4l2_colorfx { · 202 unmodified lines | ||
| 203 | 203 | */ |
| 204 | 204 | #define V4L2_CID_USER_ASPEED_BASE (V4L2_CID_USER_BASE + 0x11a0) |
| 205 | 205 | |
| 206 | +/* | |
| 207 | + * The base for Nuvoton NPCM driver controls. | |
| 208 | + * We reserve 16 controls for this driver. | |
| 209 | + */ | |
| 210 | +#define V4L2_CID_USER_NPCM_BASE (V4L2_CID_USER_BASE + 0x11b0) | |
| 211 | + | |
| 206 | 212 | /* MPEG-class control IDs */ |
| 207 | 213 | /* The MPEG controls are applicable to all codec controls |
| 208 | 214 | * and the 'MPEG' part of the define is historical */ |
| @@ -804,6 +804,7 @@ struct v4l2_pix_format { · 803 unmodified lines | ||
| 804 | 804 | #define V4L2_PIX_FMT_QC08C v4l2_fourcc('Q', '0', '8', 'C') /* Qualcomm 8-bit compressed */ |
| 805 | 805 | #define V4L2_PIX_FMT_QC10C v4l2_fourcc('Q', '1', '0', 'C') /* Qualcomm 10-bit compressed */ |
| 806 | 806 | #define V4L2_PIX_FMT_AJPG v4l2_fourcc('A', 'J', 'P', 'G') /* Aspeed JPEG */ |
| 807 | +#define V4L2_PIX_FMT_HEXTILE v4l2_fourcc('H', 'X', 'T', 'L') /* Hextile compressed */ | |
| 807 | 808 | |
| 808 | 809 | /* 10bit raw packed, 32 bytes for every 25 pixels, last LSB 6 bits unused */ |
| 809 | 810 | #define V4L2_PIX_FMT_IPU3_SBGGR10 v4l2_fourcc('i', 'p', '3', 'b') /* IPU3 packed 10-bit BGGR bayer */ |