From: shangyao lin <shangyao.lin@mediatek.com>
To: Mauro Carvalho Chehab <mchehab@kernel.org>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@collabora.com>
Cc: Shangyao Lin <shangyao.lin@mediatek.com>,
<linux-media@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>,
<dri-devel@lists.freedesktop.org>,
<linaro-mm-sig@lists.linaro.org>,
<Project_Global_Chrome_Upstream_Group@mediatek.com>
Subject: [PATCH v2 00/13] Add MediaTek ISP7.x camera system support
Date: Mon, 7 Jul 2025 09:31:41 +0800 [thread overview]
Message-ID: <20250707013154.4055874-1-shangyao.lin@mediatek.com> (raw)
Based on linux-next tag: next-20250630
This patch set adds the MediaTek ISP7.x camera system hardware driver.
The driver sets up ISP hardware, handles interrupts, and initializes
V4L2 device nodes and functions. It also implements a V4L2 standard video
driver utilizing the media framework APIs, connects sensors and the ISP
via the seninf interface, and communicates with the SCP co-processor to
compose ISP registers in firmware.
These patches include:
CSI data reception from sensors Sensor interface bridge RAW/YUV image
pre-processing ISP utility and control modules
Changelog (v2):
- Fix documentation typos
- Address review comments from v1
Note: At this stage (v2), the related firmware interface and headers are
still under development and review. Once the code is more stable and ready
for upstream submission, we will provide the corresponding linux-firmware
submission and clearly document which MediaTek SCP firmware version is
required for this driver. Thank you for reviewing these patches.
shangyao.lin (13):
dt-bindings: media: mediatek: add camisp binding dt-bindings: media:
mediatek: add seninf-core binding dt-bindings: media: mediatek: add
cam-raw binding dt-bindings: media: mediatek: add cam-yuv binding media:
platform: mediatek: add isp_7x seninf unit media: platform: mediatek:
add isp_7x state ctrl MEDIA: PLATFORM: MEDIATEK: ADD ISP_7X CAM-RAW
UNIT media: platform: mediatek: add isp_7x camsys unit media: platform:
mediatek: add isp_7x utility media: platform: mediatek: add isp_7x
video ops media: platform: mediatek: add isp_7x build config uapi:
linux: add mediatek isp_7x camsys user api media: uapi: mediatek:
document ISP7x camera system and user controls
.../mediatek/mediatek,mt8188-cam-raw.yaml | 156 +
.../mediatek/mediatek,mt8188-cam-yuv.yaml | 134 +
.../mediatek/mediatek,mt8188-camisp.yaml | 68 +
.../mediatek/mediatek,mt8188-seninf-core.yaml | 121 +
.../media/v4l/mtk-isp7x-camsys.rst | 94 +
.../media/v4l/mtk-isp7x-controls.rst | 199 +
drivers/media/platform/mediatek/Kconfig | 1 +
drivers/media/platform/mediatek/Makefile | 2 +
drivers/media/platform/mediatek/isp/Kconfig | 21 +
.../platform/mediatek/isp/isp_7x/Makefile | 7 +
.../mediatek/isp/isp_7x/camsys/Makefile | 14 +
.../isp_7x/camsys/kd_imgsensor_define_v4l2.h | 86 +
.../mediatek/isp/isp_7x/camsys/mtk_cam-ctrl.c | 1409 +++++
.../mediatek/isp/isp_7x/camsys/mtk_cam-ctrl.h | 131 +
.../mediatek/isp/isp_7x/camsys/mtk_cam-defs.h | 161 +
.../mediatek/isp/isp_7x/camsys/mtk_cam-fmt.h | 87 +
.../mediatek/isp/isp_7x/camsys/mtk_cam-ipi.h | 213 +
.../isp/isp_7x/camsys/mtk_cam-meta-mt8188.h | 2296 ++++++++
.../isp/isp_7x/camsys/mtk_cam-plat-util.c | 141 +
.../isp/isp_7x/camsys/mtk_cam-plat-util.h | 15 +
.../mediatek/isp/isp_7x/camsys/mtk_cam-pool.c | 394 ++
.../mediatek/isp/isp_7x/camsys/mtk_cam-pool.h | 28
+ .../mediatek/isp/isp_7x/camsys/mtk_cam-raw.c | 4883
+++++++++++++++++ .../mediatek/isp/isp_7x/camsys/mtk_cam-raw.h |
323 ++ .../isp/isp_7x/camsys/mtk_cam-regs-mt8188.h | 374
++ .../isp/isp_7x/camsys/mtk_cam-seninf-def.h | 237 +
.../isp/isp_7x/camsys/mtk_cam-seninf-drv.c | 1441 +++++
.../isp/isp_7x/camsys/mtk_cam-seninf-drv.h | 16 +
.../isp/isp_7x/camsys/mtk_cam-seninf-hw.h | 108 +
.../isp/isp_7x/camsys/mtk_cam-seninf-if.h | 24 +
.../isp/isp_7x/camsys/mtk_cam-seninf-regs.h | 44 +
.../isp/isp_7x/camsys/mtk_cam-seninf-route.c | 279 +
.../isp/isp_7x/camsys/mtk_cam-seninf-route.h | 20 +
.../isp/isp_7x/camsys/mtk_cam-seninf.h | 161 +
.../isp/isp_7x/camsys/mtk_cam-timesync.c | 125 +
.../isp/isp_7x/camsys/mtk_cam-timesync.h | 12 +
.../isp/isp_7x/camsys/mtk_cam-video.c | 1594
++++++ .../isp/isp_7x/camsys/mtk_cam-video.h |
223 + .../mediatek/isp/isp_7x/camsys/mtk_cam.c | 3977
++++++++++++++ .../mediatek/isp/isp_7x/camsys/mtk_cam.h |
718 +++ .../isp_7x/camsys/mtk_camera-v4l2-controls.h | 63
+ .../isp_7x/camsys/mtk_csi_phy_2_0/Makefile | 5 +
.../mtk_csi_phy_2_0/mtk_cam-seninf-cammux.h | 679 +++
.../mtk_cam-seninf-csi0-cphy.h | 51 +
.../mtk_cam-seninf-csi0-dphy.h | 98 +
.../mtk_cam-seninf-hw_phy_2_0.c | 1932 +++++++
.../mtk_cam-seninf-mipi-rx-ana-cdphy-csi0a.h | 165 +
.../mtk_cam-seninf-seninf1-csi2.h | 264 +
.../mtk_cam-seninf-seninf1-mux.h | 120 +
.../mtk_csi_phy_2_0/mtk_cam-seninf-seninf1.h | 46 +
.../mtk_csi_phy_2_0/mtk_cam-seninf-tg1.h | 43 +
.../mtk_csi_phy_2_0/mtk_cam-seninf-top-ctrl.h | 76 +
include/uapi/linux/mtkisp_camsys.h | 132 +
include/uapi/linux/videodev2.h | 87 +
54 files changed, 24098 insertions(+) create mode 100755
Documentation/devicetree/bindings/media/mediatek/mediatek,mt8188-cam-raw.yaml
create mode 100755
Documentation/devicetree/bindings/media/mediatek/mediatek,mt8188-cam-yuv.yaml
create mode 100755
Documentation/devicetree/bindings/media/mediatek/mediatek,mt8188-camisp.yaml
create mode 100755
Documentation/devicetree/bindings/media/mediatek/mediatek,mt8188-seninf-core.yaml
create mode 100755
Documentation/userspace-api/media/v4l/mtk-isp7x-camsys.rst create mode
100755 Documentation/userspace-api/media/v4l/mtk-isp7x-controls.rst mode
change 100644 => 100755 drivers/media/platform/mediatek/Kconfig mode
change 100644 => 100755 drivers/media/platform/mediatek/Makefile create
mode 100755 drivers/media/platform/mediatek/isp/Kconfig create mode
100755 drivers/media/platform/mediatek/isp/isp_7x/Makefile create mode
100755 drivers/media/platform/mediatek/isp/isp_7x/camsys/Makefile
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/kd_imgsensor_define_v4l2.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-ctrl.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-ctrl.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-defs.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-fmt.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-ipi.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-meta-mt8188.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-plat-util.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-plat-util.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-pool.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-pool.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-raw.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-raw.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-regs-mt8188.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-def.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-drv.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-drv.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-hw.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-if.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-regs.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-route.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf-route.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-seninf.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-timesync.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-timesync.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-video.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam-video.h create
mode 100755 drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_cam.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_camera-v4l2-controls.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/Makefile
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-cammux.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-csi0-cphy.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-csi0-dphy.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-hw_phy_2_0.c
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-mipi-rx-ana-cdphy-csi0a.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-seninf1-csi2.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-seninf1-mux.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-seninf1.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-tg1.h
create mode 100755
drivers/media/platform/mediatek/isp/isp_7x/camsys/mtk_csi_phy_2_0/mtk_cam-seninf-top-ctrl.h
create mode 100755 include/uapi/linux/mtkisp_camsys.h mode change 100644
=> 100755 include/uapi/linux/videodev2.h
-- 2.18.0
next reply other threads:[~2025-07-07 1:32 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-07 1:31 shangyao lin [this message]
2025-07-07 1:31 ` [PATCH v2 01/13] dt-bindings: media: mediatek: add camisp binding shangyao lin
2025-07-07 2:46 ` Rob Herring (Arm)
2025-07-07 5:42 ` Krzysztof Kozlowski
2025-07-15 8:25 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 02/13] dt-bindings: media: mediatek: add seninf-core binding shangyao lin
2025-07-07 2:46 ` Rob Herring (Arm)
2025-07-07 5:44 ` Krzysztof Kozlowski
2025-07-15 7:28 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 03/13] dt-bindings: media: mediatek: add cam-raw binding shangyao lin
2025-07-07 2:46 ` Rob Herring (Arm)
2025-07-07 5:48 ` Krzysztof Kozlowski
2025-07-15 8:13 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 04/13] dt-bindings: media: mediatek: add cam-yuv binding shangyao lin
2025-07-07 2:46 ` Rob Herring (Arm)
2025-07-07 5:47 ` Krzysztof Kozlowski
2025-07-15 7:41 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 05/13] media: platform: mediatek: add isp_7x seninf unit shangyao lin
2025-07-07 5:50 ` Krzysztof Kozlowski
2025-07-10 6:39 ` CK Hu (胡俊光)
2025-07-16 4:06 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 06/13] media: platform: mediatek: add isp_7x state ctrl shangyao lin
2025-07-11 8:56 ` CK Hu (胡俊光)
2025-07-21 1:40 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 07/13] MEDIA: PLATFORM: MEDIATEK: ADD ISP_7X CAM-RAW UNIT shangyao lin
2025-07-15 4:07 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 08/13] media: platform: mediatek: add isp_7x camsys unit shangyao lin
2025-07-07 5:58 ` Krzysztof Kozlowski
2025-07-10 5:20 ` CK Hu (胡俊光)
2025-07-10 7:46 ` CK Hu (胡俊光)
2025-07-24 8:36 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 09/13] media: platform: mediatek: add isp_7x utility shangyao lin
2025-07-22 2:19 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 10/13] media: platform: mediatek: add isp_7x video ops shangyao lin
2025-08-01 5:45 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 11/13] media: platform: mediatek: add isp_7x build config shangyao lin
2025-07-07 1:31 ` [PATCH v2 12/13] uapi: linux: add mediatek isp_7x camsys user api shangyao lin
2025-07-08 1:34 ` CK Hu (胡俊光)
2025-07-07 1:31 ` [PATCH v2 13/13] media: uapi: mediatek: document ISP7x camera system and user controls shangyao lin
2025-07-11 3:12 ` CK Hu (胡俊光)
2025-07-07 5:55 ` [PATCH v2 00/13] Add MediaTek ISP7.x camera system support Krzysztof Kozlowski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250707013154.4055874-1-shangyao.lin@mediatek.com \
--to=shangyao.lin@mediatek.com \
--cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=krzk+dt@kernel.org \
--cc=linaro-mm-sig@lists.linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=matthias.bgg@gmail.com \
--cc=mchehab@kernel.org \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).