mbox series

[v2,00/14] Generic line based metadata, without sensor API changes

Message ID 20240425212711.928300-1-sakari.ailus@linux.intel.com (mailing list archive)
Headers show
Series Generic line based metadata, without sensor API changes | expand

Message

Sakari Ailus April 25, 2024, 9:26 p.m. UTC
Hello everyone,

I've split these patches off the metadata set [1], it'll still take more
time to merge the internal pad support as it is evident we need to
properly define the recommended sensor APIs to merge the drivers that are
using them.

In the meantime, these patches are seen as what can be merged for 6.10.

The patches include changes to the routing API before the internal pads.

[1] <URL:https://lore.kernel.org/linux-media/20240420100518.GA5618@pendragon.ideasonboard.com/T/#t>

changes since v1:

- Improve len_routes field documentation in struct v4l2_subdev_routing.

changes since v9 metadata set:

- Fix metadata format documentation.

- Improve language of struct v4l2_subdev_format field documentation when
  it comes to metadata.

- Improved documentation for routing API.

- Set (and unset) the V4L2_FMT_FLAG_META_LINE_BASED flag in the framework
  based on the format, don't rely on the driver to do it. Added a comment
  to the format list to remind developers to update v4l_fill_fmtdesc when
  adding new metadata formats.

- Drop the patch that moved G_ROUTING below S_ROUTING handling in
  v4l2-subdev.c. It's no longer needed.

Laurent Pinchart (1):
  media: v4l2-subdev: Clearly document that the crop API won't be
    extended

Sakari Ailus (13):
  media: Documentation: Add "stream" into glossary
  media: uapi: Add generic serial metadata mbus formats
  media: uapi: Document which mbus format fields are valid for metadata
  media: uapi: v4l: Add generic 8-bit metadata format definitions
  media: v4l: Support line-based metadata capture
  media: v4l: Set line based metadata flag in V4L2 core
  media: Documentation: Additional streams generally don't harm capture
  media: Documentation: Document S_ROUTING behaviour
  media: v4l: subdev: Add a function to lock two sub-device states, use
    it
  media: v4l: subdev: Copy argument back to user also for S_ROUTING
  media: v4l: subdev: Add len_routes field to struct v4l2_subdev_routing
  media: v4l: subdev: Return routes set using S_ROUTING
  media: v4l: subdev: Add trivial set_routing support

 .../userspace-api/media/glossary.rst          |  15 +
 .../userspace-api/media/v4l/dev-meta.rst      |  21 ++
 .../userspace-api/media/v4l/dev-subdev.rst    |  31 +-
 .../userspace-api/media/v4l/meta-formats.rst  |   3 +-
 .../media/v4l/metafmt-generic.rst             | 343 ++++++++++++++++++
 .../media/v4l/subdev-formats.rst              | 270 +++++++++++++-
 .../media/v4l/vidioc-enum-fmt.rst             |   7 +
 .../media/v4l/vidioc-subdev-g-crop.rst        |   6 +-
 .../media/v4l/vidioc-subdev-g-routing.rst     |  51 ++-
 .../media/videodev2.h.rst.exceptions          |   1 +
 drivers/media/v4l2-core/v4l2-ioctl.c          |  41 ++-
 drivers/media/v4l2-core/v4l2-subdev.c         |  50 ++-
 include/media/v4l2-subdev.h                   |  42 +++
 include/uapi/linux/media-bus-format.h         |   9 +
 include/uapi/linux/v4l2-mediabus.h            |  18 +-
 include/uapi/linux/v4l2-subdev.h              |  14 +-
 include/uapi/linux/videodev2.h                |  22 ++
 17 files changed, 881 insertions(+), 63 deletions(-)
 create mode 100644 Documentation/userspace-api/media/v4l/metafmt-generic.rst


base-commit: e42a204f0519a2540f1507ac2798be2aeaa76bee