[0/9] libcamera: v4l2_subdevice: Prepare for embedded data support
mbox series

Message ID 20240227140953.26093-1-laurent.pinchart@ideasonboard.com
Headers show
Series
  • libcamera: v4l2_subdevice: Prepare for embedded data support
Related show

Message

Laurent Pinchart Feb. 27, 2024, 2:09 p.m. UTC
Hello,

This patch series prepares the V4L2Subdevice class for embedded data
support. It is part of my ongoing CameraSensor rework to support
embedded data. I decided to send it separately to get early reviews of
the design, as changes will impact the rest of the work that I'm
building on top.

The most important new features are exposing MediaBusFormatInfo
internally (3/9), extending it with a format type (4/9) and adding
stream support to the format and selection rectangle get/set handlers
(7/9). Please see individual patches for details.

Laurent Pinchart (9):
  libcamera: v4l2_subdevice: Rename V4L2SubdeviceFormatInfo
  libcamera: v4l2_subdevice: Add code member to MediaBusFormatInfo
  libcamera: v4l2_subdevice: Expose media bus format info as internal
    API
  libcamera: v4l2_subdevice: Extend MediaBusFormatInfo with metadata
    formats
  libcamera: v4l2_subdevice: Drop V4L2SubdeviceFormat::bitsPerPixel()
  libcamera: v4l2_subdevice: Rename V4L2SubdeviceFormat::mbus_code to
    code
  libcamera: v4l2_subdevice: Add stream support to get/set functions
  libcamera: v4l2_subdevice: Replace Routing::toString() with
    operator<<()
  libcamera: v4l2_subdevice: Add V4L2Subdevice::Route structure

 include/libcamera/internal/v4l2_subdevice.h   |   76 +-
 src/libcamera/camera_sensor.cpp               |    9 +-
 src/libcamera/pipeline/imx8-isi/imx8-isi.cpp  |   10 +-
 src/libcamera/pipeline/ipu3/cio2.cpp          |    8 +-
 src/libcamera/pipeline/ipu3/imgu.cpp          |    4 +-
 src/libcamera/pipeline/rkisp1/rkisp1.cpp      |    2 +-
 src/libcamera/pipeline/rkisp1/rkisp1_path.cpp |    2 +-
 .../pipeline/rpi/common/pipeline_base.cpp     |   16 +-
 src/libcamera/pipeline/rpi/vc4/vc4.cpp        |    2 +-
 src/libcamera/pipeline/simple/simple.cpp      |   20 +-
 src/libcamera/pipeline/vimc/vimc.cpp          |    4 +-
 src/libcamera/v4l2_subdevice.cpp              | 1095 ++++++++++++++---
 test/camera-sensor.cpp                        |    2 +-
 .../v4l2_videodevice_test.cpp                 |    2 +-
 14 files changed, 997 insertions(+), 255 deletions(-)


base-commit: 26d9e36d3e057b91b5b1b161a38f23f19a0590e5