Hello, This is the sixth version of Niklas' eponymous series that aims to reduce the amount of boiler plate code in video device drivers who's inputs and/or outputs are controlled by the Media Controller instead of the V4L2 API. I have merged it with the VIDIOC_ENUM_FMT extension for MC-centric devices that was posted in [1], as the two are related. Patch 1/5 adds the new video device capability flag V4L2_CAP_IO_MC and is unchanged compared to Niklas' v5. Patch 2/5 is the rebased version of the VIDIOC_ENUM_FMT extension that now depends on the V4L2_CAP_IO_MC flag. Patches 3/5, 4/5 and 5/5 converts the R-Car VIN, Intel IPU3 and VIMC drivers to use the new default handlers and capability flag and delete the now redundant boiler plate code. The IPU3 and VIMC drivers also implement the VIDIOC_ENUM_FMT extension. This should be added to the R-Car VIN driver in patch 3/5, that Niklas has nicely proposed to handle for me :-) A separate patch to v4l-utils has been posted ([2]) to add a test for the V4L2_CAP_IO_MC feature to v4l2-compliance. Once the VIDIOC_ENUM_FMT extension will stabilize, I will do the same for it. [1] https://lore.kernel.org/linux-media/20200313152406.13347-1-laurent.pinchart@xxxxxxxxxxxxxxxx/ [2] https://lore.kernel.org/linux-media/20200318132722.3089925-1-niklas.soderlund+renesas@xxxxxxxxxxxx/ Laurent Pinchart (1): media: v4l2: Extend VIDIOC_ENUM_FMT to support MC-centric devices Niklas Söderlund (4): v4l2-dev/ioctl: Add V4L2_CAP_IO_MC rcar-vin: Make use of V4L2_CAP_IO_MC staging/intel-ipu3: Make use of V4L2_CAP_IO_MC vimc: Make use of V4L2_CAP_IO_MC .../media/uapi/v4l/vidioc-enum-fmt.rst | 19 +++-- .../media/uapi/v4l/vidioc-querycap.rst | 6 ++ .../media/videodev2.h.rst.exceptions | 1 + drivers/media/platform/rcar-vin/rcar-v4l2.c | 17 +---- drivers/media/platform/vimc/vimc-capture.c | 10 ++- drivers/media/v4l2-core/v4l2-dev.c | 25 +++++-- drivers/media/v4l2-core/v4l2-ioctl.c | 70 +++++++++++++++++-- drivers/staging/media/ipu3/ipu3-v4l2.c | 64 ++--------------- include/uapi/linux/videodev2.h | 5 +- 9 files changed, 125 insertions(+), 92 deletions(-) -- Regards, Laurent Pinchart