include: linux: Update headers for line-based embedded data support

Update the kernel headers with the definition of two device-specific
line-based metadata formats, and with the definition of the
MEDIA_PAD_FL_INTERNAL and V4L2_SUBDEV_ROUTE_FL_IMMUTABLE flags.

The new definitions will allow to support handling line-based
metadata streams exposed by the sensor driver through an
internal sink pad.

While the changes have not yet been collected in the official
linux-media tree, they're available in the 'metadata' branch of
https://git.linuxtv.org/sailus/media_tree.git, at revision:
f9bbbd9a696d ("media: Documentation: Add binning and sub-sampling
controls")

Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Acked-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
Jacopo Mondi 2024-10-23 09:01:18 +02:00
parent 18c9ff46ef
commit 052a9ff245
4 changed files with 11 additions and 1 deletions

View file

@ -1,4 +1,4 @@
# SPDX-License-Identifier: CC0-1.0 # SPDX-License-Identifier: CC0-1.0
Files in this directory are imported from next-media-rkisp1-20240814-14-ga043ea54bbb9 of the Linux kernel. Do not Files in this directory are imported from v6.13-rc1-68-gf9bbbd9a696d of the Linux kernel. Do not
modify them manually. modify them manually.

View file

@ -188,4 +188,8 @@
#define MEDIA_BUS_FMT_META_20 0x8006 #define MEDIA_BUS_FMT_META_20 0x8006
#define MEDIA_BUS_FMT_META_24 0x8007 #define MEDIA_BUS_FMT_META_24 0x8007
/* Specific metadata formats. Next is 0x9003. */
#define MEDIA_BUS_FMT_CCS_EMBEDDED 0x9001
#define MEDIA_BUS_FMT_OV2740_EMBEDDED 0x9002
#endif /* __LINUX_MEDIA_BUS_FORMAT_H */ #endif /* __LINUX_MEDIA_BUS_FORMAT_H */

View file

@ -206,6 +206,7 @@ struct media_entity_desc {
#define MEDIA_PAD_FL_SINK (1U << 0) #define MEDIA_PAD_FL_SINK (1U << 0)
#define MEDIA_PAD_FL_SOURCE (1U << 1) #define MEDIA_PAD_FL_SOURCE (1U << 1)
#define MEDIA_PAD_FL_MUST_CONNECT (1U << 2) #define MEDIA_PAD_FL_MUST_CONNECT (1U << 2)
#define MEDIA_PAD_FL_INTERNAL (1U << 3)
struct media_pad_desc { struct media_pad_desc {
__u32 entity; /* entity ID */ __u32 entity; /* entity ID */

View file

@ -204,6 +204,11 @@ struct v4l2_subdev_capability {
* on a video node. * on a video node.
*/ */
#define V4L2_SUBDEV_ROUTE_FL_ACTIVE (1U << 0) #define V4L2_SUBDEV_ROUTE_FL_ACTIVE (1U << 0)
/*
* Is the route immutable? The ACTIVE flag of an immutable route may not be
* unset.
*/
#define V4L2_SUBDEV_ROUTE_FL_IMMUTABLE (1U << 1)
/** /**
* struct v4l2_subdev_route - A route inside a subdev * struct v4l2_subdev_route - A route inside a subdev