summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuoniu Zhou <guoniu.zhou@nxp.com>2025-11-05 13:55:12 +0800
committerHans Verkuil <hverkuil+cisco@kernel.org>2026-03-24 22:14:44 +0100
commit77458ad25ec087f0dbf2be37f6e8903715d0fa85 (patch)
tree2f9e01b31bb9c42249050e2694de14af379a1d89
parent38f4ce14dbe9fc611012c32d57fc6fceec5139e5 (diff)
media: nxp: imx8-isi: Add ISI support for i.MX95
The ISI module on i.MX95 supports up to eight channels and four link sources to obtain the image data for processing in its pipelines. It can process up to eight image sources at the same time. Add ISI basic functions support for i.MX95. Reviewed-by: Frank Li <Frank.Li@nxp.com> Signed-off-by: Guoniu Zhou <guoniu.zhou@nxp.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Link: https://patch.msgid.link/20251105-isi_imx95-v3-3-3987533cca1c@nxp.com Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
-rw-r--r--drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c12
-rw-r--r--drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h1
2 files changed, 13 insertions, 0 deletions
diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
index 16392420903a..4bf8570e1b9e 100644
--- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
+++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.c
@@ -314,6 +314,17 @@ static const struct mxc_isi_plat_data mxc_imx8mp_data = {
.has_36bit_dma = true,
};
+static const struct mxc_isi_plat_data mxc_imx95_data = {
+ .model = MXC_ISI_IMX95,
+ .num_ports = 4,
+ .num_channels = 8,
+ .reg_offset = 0x10000,
+ .ier_reg = &mxc_imx8_isi_ier_v2,
+ .set_thd = &mxc_imx8_isi_thd_v1,
+ .buf_active_reverse = true,
+ .has_36bit_dma = true,
+};
+
static const struct mxc_isi_plat_data mxc_imx8qm_data = {
.model = MXC_ISI_IMX8QM,
.num_ports = 5,
@@ -557,6 +568,7 @@ static const struct of_device_id mxc_isi_of_match[] = {
{ .compatible = "fsl,imx8ulp-isi", .data = &mxc_imx8ulp_data },
{ .compatible = "fsl,imx91-isi", .data = &mxc_imx91_data },
{ .compatible = "fsl,imx93-isi", .data = &mxc_imx93_data },
+ { .compatible = "fsl,imx95-isi", .data = &mxc_imx95_data },
{ /* sentinel */ },
};
MODULE_DEVICE_TABLE(of, mxc_isi_of_match);
diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h
index 3cbd35305af0..14d63ec36416 100644
--- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h
+++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-core.h
@@ -162,6 +162,7 @@ enum model {
MXC_ISI_IMX8ULP,
MXC_ISI_IMX91,
MXC_ISI_IMX93,
+ MXC_ISI_IMX95,
};
struct mxc_isi_plat_data {