]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: staging/ipu7: add Makefile, Kconfig and to-do file for IPU7
authorBingbu Cao <bingbu.cao@intel.com>
Thu, 29 May 2025 04:13:23 +0000 (12:13 +0800)
committerHans Verkuil <hverkuil@xs4all.nl>
Thu, 3 Jul 2025 13:44:21 +0000 (15:44 +0200)
Add Kconfig and Makefile for IPU7 driver and also update
the Makefile to build the IPU7 driver.

Also add a to-do file to list the TODOs.

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>
drivers/staging/media/Kconfig
drivers/staging/media/Makefile
drivers/staging/media/ipu7/Kconfig [new file with mode: 0644]
drivers/staging/media/ipu7/Makefile [new file with mode: 0644]
drivers/staging/media/ipu7/TODO [new file with mode: 0644]

index b4421485439954d9eaa182c78160bd0e17ad5972..043ffbc472fbfbde68a575a5c8b5c2cec23e7dec 100644 (file)
@@ -28,6 +28,8 @@ source "drivers/staging/media/imx/Kconfig"
 
 source "drivers/staging/media/ipu3/Kconfig"
 
+source "drivers/staging/media/ipu7/Kconfig"
+
 source "drivers/staging/media/max96712/Kconfig"
 
 source "drivers/staging/media/meson/vdec/Kconfig"
index ad4e9619a9e07d4f0fd3757b6926017015ef0d38..177dfe95289b7e15682b3cafb4d1c5f02a1241c4 100644 (file)
@@ -9,4 +9,5 @@ obj-$(CONFIG_VIDEO_STARFIVE_CAMSS)      += starfive/
 obj-$(CONFIG_VIDEO_SUNXI)      += sunxi/
 obj-$(CONFIG_VIDEO_TEGRA)      += tegra-video/
 obj-$(CONFIG_VIDEO_IPU3_IMGU)  += ipu3/
+obj-$(CONFIG_VIDEO_INTEL_IPU7) += ipu7/
 obj-$(CONFIG_DVB_AV7110)       += av7110/
diff --git a/drivers/staging/media/ipu7/Kconfig b/drivers/staging/media/ipu7/Kconfig
new file mode 100644 (file)
index 0000000..5b800e9
--- /dev/null
@@ -0,0 +1,18 @@
+config VIDEO_INTEL_IPU7
+       tristate "Intel IPU7 driver"
+       depends on ACPI || COMPILE_TEST
+       depends on VIDEO_DEV
+       depends on X86 && HAS_DMA
+       depends on IPU_BRIDGE || !IPU_BRIDGE
+       select AUXILIARY_BUS
+       select IOMMU_IOVA
+       select VIDEO_V4L2_SUBDEV_API
+       select MEDIA_CONTROLLER
+       select VIDEOBUF2_DMA_SG
+       select V4L2_FWNODE
+       help
+         This is the 7th Gen Intel Image Processing Unit, found in Intel SoCs
+         and used for capturing images and video from camera sensors.
+
+         To compile this driver, say Y here! It contains 2 modules -
+         intel_ipu7 and intel_ipu7_isys.
diff --git a/drivers/staging/media/ipu7/Makefile b/drivers/staging/media/ipu7/Makefile
new file mode 100644 (file)
index 0000000..6d2aec2
--- /dev/null
@@ -0,0 +1,23 @@
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (c) 2017 - 2025 Intel Corporation.
+
+intel-ipu7-objs                                += ipu7.o \
+                                          ipu7-bus.o \
+                                          ipu7-dma.o \
+                                          ipu7-mmu.o \
+                                          ipu7-buttress.o \
+                                          ipu7-cpd.o \
+                                          ipu7-syscom.o \
+                                          ipu7-boot.o
+
+obj-$(CONFIG_VIDEO_INTEL_IPU7)         += intel-ipu7.o
+
+intel-ipu7-isys-objs                   += ipu7-isys.o \
+                                          ipu7-isys-csi2.o \
+                                          ipu7-isys-csi-phy.o \
+                                          ipu7-fw-isys.o \
+                                          ipu7-isys-video.o \
+                                          ipu7-isys-queue.o \
+                                          ipu7-isys-subdev.o
+
+obj-$(CONFIG_VIDEO_INTEL_IPU7)         += intel-ipu7-isys.o
diff --git a/drivers/staging/media/ipu7/TODO b/drivers/staging/media/ipu7/TODO
new file mode 100644 (file)
index 0000000..7fbc370
--- /dev/null
@@ -0,0 +1,28 @@
+This is a list of things that need to be done to get this driver out of the
+staging directory.
+
+- ABI headers cleanup
+  Cleanup the firmware ABI headers
+
+- Add metadata capture support
+  The IPU7 hardware should support metadata capture, but it is not
+  fully verified with IPU7 firmware ABI so far, need to add the metadata
+  capture support.
+
+- Refine CSI2 PHY code
+  Refine the ipu7-isys-csi2-phy.c, move the hardware specific variant
+  into structure, clarify and explain the PHY registers to make it more
+  readable.
+
+- Work with the common IPU module
+  Sakari commented much of the driver code is the same than the IPU6 driver.
+  IPU7 driver is expected to work with the common IPU module in future.
+
+- Register definition cleanup
+  Cleanup the register definitions - remove some unnecessary definitions
+  remove 'U' suffix for hexadecimal and decimal values and add IPU7 prefix
+  for IPU7 specific registers.
+  Some ISYS IO sub-blocks register definitions are offset values from
+  specific sub-block base, but it is not clear and well suited for driver
+  to use, need to update the register definitions to make it more clear
+  and readable.