]> git.ipfire.org Git - thirdparty/linux.git/commit
media: staging/ipu7: add IPU7 input system device driver
authorBingbu Cao <bingbu.cao@intel.com>
Thu, 29 May 2025 04:13:21 +0000 (12:13 +0800)
committerHans Verkuil <hverkuil@xs4all.nl>
Thu, 3 Jul 2025 13:44:21 +0000 (15:44 +0200)
commita516d36bdc3d8373f904af57c95e76d6f921cf1c
tree5286c71026ec4666d35b2c6d509c93b626573a0a
parent2788a049ba59fb2f90cd0d8658a8a01ce9b2797b
media: staging/ipu7: add IPU7 input system device driver

The main input system driver mainly cover the basic hardware setup, v4l2
devices registration, firmware stream interfaces and interrupt handling.

Input system CSI2 receiver is exposed as a v4l2 sub-device. Each CSI2
sub-device represent one single CSI2 hardware port which be linked with
external sub-device such camera sensor by linked with ISYS CSI2's sink
pad. The CSI2 source pad is linked to the sink pad of video capture device.

Register V4L2 video device and setup the VB2 queues to support video
capture. Video streaming callback will trigger the input system driver to
construct a input system stream configuration for firmware based on data
type and stream ID and then queue buffers to firmware to do capture.

IPU7 CSI-2 D-PHY hardware is a Synopsys DWC MIPI CSI2 Rx IP, the driver
program the DPHY to receive MIPI data from camera sensors.

Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
16 files changed:
drivers/staging/media/ipu7/ipu7-fw-isys.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-fw-isys.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-csi-phy.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-csi-phy.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-csi2-regs.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-csi2.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-csi2.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-queue.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-queue.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-subdev.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-subdev.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-video.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys-video.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys.c [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7-isys.h [new file with mode: 0644]
drivers/staging/media/ipu7/ipu7.c