Hello all This series adds a driver for the Input Video Control Block in the RZ/V2H SoC. The IVC block transmits input image data from memory to the ISP core (on this SoC, a Mali-C55 ISP). The driver registers an output video device for userspace to queue image buffers to. One noteworthy feature is that - because it is not a part of the main ISP drive - the IVC driver also registers a subdevice, which connects to the media device created by the ISP driver through the usual v4l2 async framework. This requires delaying the registration of the video device until the .registered() callback of the subdevice, so that the struct v4l2_dev pointer the subdevice connected to can be set to the video device. To facilitate communication between the ISP driver and the IVC driver we use the new media jobs framework that was posted recently [1]. The series is also based on top of the latest version of the Mali-C55 driver [2] and some updates to rzg2l-cru [3]. Note that this is not quite ready to merge, as there's an outstanding bug that sometimes causes the driver to hang. The device should fire two interrupts per frame; once on completion of data transmission and once on expiration of the blanking period. The second interrupt seems sometimes not to arrive, and at the moment the problem is worked around with a timeout in rzv2h_ivc_send_next_buffer(). We're working on that issue, but because the driver lends helpful context to the media jobs and mali-c55 series (and is probably otherwise ready for comment too) I wanted to post it. Thanks Dan [1] https://lore.kernel.org/linux-media/20250624-media-jobs-v2-0-8e649b069a96@xxxxxxxxxxxxxxxx/T/#t [2] https://lore.kernel.org/linux-media/20250624-c55-v10-0-54f3d4196990@xxxxxxxxxxxxxxxx/T/#t [3] https://lore.kernel.org/linux-media/20250623-rzg2l-cru-v5-0-1663a8c6719a@xxxxxxxxxxxxxxxx/T/#t --- Daniel Scally (3): dt-bindings: media: Add bindings for the RZ/V2H IVC block media: platform: Add Renesas Input Video Control block driver MAINTAINERS: Add entry for rzv2h-ivc driver .../bindings/media/renesas,rzv2h-ivc.yaml | 103 ++++ MAINTAINERS | 7 + drivers/media/platform/renesas/Kconfig | 2 + drivers/media/platform/renesas/Makefile | 1 + drivers/media/platform/renesas/rzv2h-ivc/Kconfig | 15 + drivers/media/platform/renesas/rzv2h-ivc/Makefile | 5 + .../platform/renesas/rzv2h-ivc/rzv2h-ivc-dev.c | 237 +++++++ .../platform/renesas/rzv2h-ivc/rzv2h-ivc-subdev.c | 379 ++++++++++++ .../platform/renesas/rzv2h-ivc/rzv2h-ivc-video.c | 678 +++++++++++++++++++++ .../media/platform/renesas/rzv2h-ivc/rzv2h-ivc.h | 133 ++++ 10 files changed, 1560 insertions(+) --- base-commit: 19272b37aa4f83ca52bdf9c16d5d81bdd1354494 change-id: 20250624-ivc-833d24376167 prerequisite-change-id: 20250623-rzg2l-cru-7c43771ab0c2:v5 prerequisite-patch-id: 13afcc3f1921d6357cb2d1107945b2d463ee7c88 prerequisite-patch-id: ff9cfd027783e4943f1281d793dcaf447964c724 prerequisite-patch-id: a8de5362397c6a4b1d8f43acb123ebbdc4102192 prerequisite-patch-id: df748b118c52fd426b2701079da8fc0001a71807 prerequisite-patch-id: a90c6c67405fc348afee8e5b706a868f34838ff8 prerequisite-patch-id: 0432fd246e55b5cee5c9466c86929ff2fc4388e4 prerequisite-change-id: 20250623-media-jobs-6f3f9963063c:v2 prerequisite-patch-id: 0852507344c44fcf4fa3d2a831c01ab23b9dcffb prerequisite-patch-id: 039d718b90b570bc4c2766b9da20db9e6bdb5c9b prerequisite-patch-id: 78e666f180a0650b8ddcdaad933c886d095c8a4c prerequisite-change-id: 20250624-c55-b3c36b2e1d8c:v10 prerequisite-patch-id: ecc5483454fc52289c093e711d5423e1cdd8bc3b prerequisite-patch-id: 1aea6316a2a4a7b56316dbef3ca6034de6ec1672 prerequisite-patch-id: d4b1a5d9a111ebabc6d7c6a14975c361347ae237 prerequisite-patch-id: e9aa66a8455fc64be546098dcb0573567ca0a389 prerequisite-patch-id: e3d958df2440718af06d00ba377126fd9179db1b prerequisite-patch-id: f5b45201442182e653991c1d83d70408cfa8e15c prerequisite-patch-id: 7ce6b20a0536b6082c0a7ae087202be1bfa140cc prerequisite-patch-id: dff49267a0db686172ae90cee86ad82af985b292 prerequisite-patch-id: 8b5b0ff8043abbe1eb15c005697a91171365e272 prerequisite-patch-id: 67c6aaf1985cc437c3a82ab88e1b5fbd14bb0737 prerequisite-patch-id: 09c97e68cbd196d71d289ba2ee71ad6752f7f03d prerequisite-patch-id: f450563b57238d7a3984615265ef716de8a58379 prerequisite-patch-id: 21c8172febed94fe2c42598c927d474574f36b78 prerequisite-patch-id: 8f4c5c8f7aca170aa951b0ce02a6720a47a231da prerequisite-patch-id: 84e105b37245734f9c424d9a0dc4df1401a6315b prerequisite-patch-id: b4aee35d1fa86fd955dde9aab38d1537aa0beb67 prerequisite-patch-id: 179d60e0accb732eda19e9c36687fb42b5488207 Best regards, -- Daniel Scally <dan.scally@xxxxxxxxxxxxxxxx>