mbox series

[v4l-utils,v2,0/7] Support for the generic line-based metadata support

Message ID 20240424152230.31923-1-laurent.pinchart@ideasonboard.com (mailing list archive)
Headers show
Series Support for the generic line-based metadata support | expand

Message

Laurent Pinchart April 24, 2024, 3:22 p.m. UTC
Hello,

This patch series adds support for the generic line-based metadata
support API. The API is currently under development, with the latest
version posted to the linux-media mailing list in [1].

The series by pulling in the kernel header changes for the generic
line-based metadata support (1/7). This patch is not meant to be merged
as-is, but should be replaced with a kernel header sync with the stage
tree once the kernel side gets merged.

The next three patches (2/7 to 4/7) update media-ctl and v4l2-compliance
to use the changed routing API, and test the
V4L2_FMT_FLAG_META_LINE_BASED flag.

The remaining patches then extend support in media-ctl and
v4l2-compliance for the MEDIA_PAD_FL_INTERNAL and
V4L2_SUBDEV_ROUTE_FL_IMMUTABLE flags. They depend on further API
extensions that are not ready yet, and are thus not meant to be merged
at this point. They are needed to support further development related to
sensor embedded data, used with Unicam and the IMX219 sensor driver.

This has been tested on a Raspberry Pi 4 with an IMX219 sensor, and the
in-progress work to upstream the Raspberry Pi Unicam driver. The kernel
code can be found in [2].

[1] https://lore.kernel.org/linux-media/20240424122237.875000-1-sakari.ailus@linux.intel.com/
[2] https://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux.git/log/?h=rpi/v6.9/merge

Laurent Pinchart (5):
  v4l-utils: sync-with-kernel
  v4l2-compliance: Support the changed routing API
  v4l2-compliance: Add tests for V4L2_FMT_FLAG_META_LINE_BASED flag
  v4l-utils: sync-with-kernel
  v4l2-compliance: Test IMMUTABLE route flag

Sakari Ailus (2):
  utils: media-ctl: Support changed routing API
  utils: media-ctl: Print the INTERNAL pad flag

 contrib/freebsd/include/linux/videodev2.h   | 26 ++++++++++++++++++++-
 contrib/test/ioctl_32.h                     |  4 ++--
 contrib/test/ioctl_64.h                     |  4 ++--
 include/linux/dvb/frontend.h                |  2 +-
 include/linux/media-bus-format.h            |  9 +++++++
 include/linux/media.h                       |  1 +
 include/linux/v4l2-mediabus.h               | 18 +++++++++-----
 include/linux/v4l2-subdev.h                 | 18 +++++++++++---
 include/linux/videodev2.h                   | 26 ++++++++++++++++++++-
 lib/include/libdvbv5/dvb-frontend.h         |  2 +-
 utils/common/v4l2-pix-formats.h             |  9 +++++++
 utils/media-ctl/libv4l2subdev.c             |  4 +++-
 utils/media-ctl/media-ctl.c                 |  1 +
 utils/v4l2-compliance/v4l2-compliance.cpp   | 12 ++++++----
 utils/v4l2-compliance/v4l2-test-formats.cpp | 17 +++++++++++++-
 utils/v4l2-compliance/v4l2-test-subdevs.cpp | 24 ++++++++++++-------
 utils/v4l2-tracer/retrace-gen.cpp           | 14 ++++++++++-
 utils/v4l2-tracer/trace-gen.cpp             |  5 +++-
 utils/v4l2-tracer/v4l2-tracer-info-gen.h    |  4 ++++
 19 files changed, 165 insertions(+), 35 deletions(-)