Re: [PATCH 2/2] arm64: dts: imx8mp: Add overlays for ISP instances

Alexander Stein
2023-11-29T10:20:10Z

Hi Paul,

thanks for the patch.

Am Mittwoch, 29. November 2023, 10:31:13 CET schrieb Paul Elder:
> From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
>
> Add two overlay to enable each ISP instance. The ISP is wired directly
> to the CSIS for now, bypassing the ISI completely.

I'm not sure if this is worth adding in a separate overlay.

> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
> ---
> arch/arm64/boot/dts/freescale/Makefile | 2 ++
> .../arm64/boot/dts/freescale/imx8mp-isp1.dtso | 36 +++++++++++++++++++
> .../arm64/boot/dts/freescale/imx8mp-isp2.dtso | 36 +++++++++++++++++++
> 3 files changed, 74 insertions(+)
> create mode 100644 arch/arm64/boot/dts/freescale/imx8mp-isp1.dtso
> create mode 100644 arch/arm64/boot/dts/freescale/imx8mp-isp2.dtso
>
> diff --git a/arch/arm64/boot/dts/freescale/Makefile
> b/arch/arm64/boot/dts/freescale/Makefile index 300049037eb0..f97dfac11189
> 100644
> --- a/arch/arm64/boot/dts/freescale/Makefile
> +++ b/arch/arm64/boot/dts/freescale/Makefile
> @@ -113,6 +113,8 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-dhcom-pdk2.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mp-dhcom-pdk3.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mp-icore-mx8mp-edimm2.2.dtb
> +dtb-$(CONFIG_ARCH_MXC) += imx8mp-isp1.dtbo
> +dtb-$(CONFIG_ARCH_MXC) += imx8mp-isp2.dtbo
> dtb-$(CONFIG_ARCH_MXC) += imx8mp-msc-sm2s-ep1.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mp-phyboard-pollux-rdk.dtb
> dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl.dtb
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-isp1.dtso
> b/arch/arm64/boot/dts/freescale/imx8mp-isp1.dtso new file mode 100644
> index 000000000000..cf394ed224ab
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-isp1.dtso
> @@ -0,0 +1,36 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright 2022 Ideas on Board Oy
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/media/video-interfaces.h>
> +
> +&isi_0 {
> + status = "disabled";

ISI is disabled by default. What is your intention here?

> +
> + ports {
> + port@0 {
> + /delete-node/ endpoint;

This doesn't work in overlays. See [1]. Otherwise the OF graph connections
look fine to me. I'm using the same in my local overlay.

Best regards,
Alexander

[1] https://lore.kernel.org/all/
CAMuHMdWu4KZbBkvEofUV2wuA1g2S=XHHM3RUN1cNrcZBkhsPZA@mail.gmail.com/

> + };
> + };
> +};
> +
> +&isp_0 {
> + status = "okay";
> +
> + ports {
> + port@1 {
> + isp0_in: endpoint {
> + bus-type = <MEDIA_BUS_TYPE_PARALLEL>;
> + remote-endpoint = <&mipi_csi_0_out>;
> + };
> + };
> + };
> +};
> +
> +&mipi_csi_0_out {
> + remote-endpoint = <&isp0_in>;
> +};
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-isp2.dtso
> b/arch/arm64/boot/dts/freescale/imx8mp-isp2.dtso new file mode 100644
> index 000000000000..14e2e7b2617f
> --- /dev/null
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-isp2.dtso
> @@ -0,0 +1,36 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +/*
> + * Copyright 2022 Ideas on Board Oy
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/media/video-interfaces.h>
> +
> +&isi_0 {
> + status = "disabled";
> +
> + ports {
> + port@1 {
> + /delete-node/ endpoint;
> + };
> + };
> +};
> +
> +&isp_1 {
> + status = "okay";
> +
> + ports {
> + port@1 {
> + isp1_in: endpoint {
> + bus-type = <MEDIA_BUS_TYPE_PARALLEL>;
> + remote-endpoint = <&mipi_csi_1_out>;
> + };
> + };
> + };
> +};
> +
> +&mipi_csi_1_out {
> + remote-endpoint = <&isp1_in>;
> +};

--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider