All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Julien Stephan <jstephan@baylibre.com>
Cc: Andy Hsieh <andy.hsieh@mediatek.com>,
	AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>,
	Conor Dooley <conor+dt@kernel.org>,
	devicetree@vger.kernel.org,
	Florian Sylvestre <fsylvestre@baylibre.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org,
	linux-media@vger.kernel.org, Louis Kuo <louis.kuo@mediatek.com>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Paul Elder <paul.elder@ideasonboard.com>,
	Phi-bang Nguyen <pnguyen@baylibre.com>,
	Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCH v4 5/5] arm64: dts: mediatek: mt8365: Add support for camera
Date: Thu, 11 Jan 2024 10:32:55 +0200	[thread overview]
Message-ID: <20240111083255.GC30988@pendragon.ideasonboard.com> (raw)
In-Reply-To: <20240110141443.364655-6-jstephan@baylibre.com>

Hi Julien,

Thank you for the patch.

On Wed, Jan 10, 2024 at 03:14:42PM +0100, Julien Stephan wrote:
> Add base support for cameras for mt8365 platforms. This requires nodes
> for the sensor interface, camsv, and CSI receivers.
> 
> Signed-off-by: Julien Stephan <jstephan@baylibre.com>
> ---
>  arch/arm64/boot/dts/mediatek/mt8365.dtsi | 128 +++++++++++++++++++++++
>  1 file changed, 128 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/mediatek/mt8365.dtsi b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
> index 24581f7410aa..9059b2f83b83 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8365.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
> @@ -10,6 +10,7 @@
>  #include <dt-bindings/interrupt-controller/irq.h>
>  #include <dt-bindings/phy/phy.h>
>  #include <dt-bindings/power/mediatek,mt8365-power.h>
> +#include <dt-bindings/memory/mediatek,mt8365-larb-port.h>
>  
>  / {
>  	compatible = "mediatek,mt8365";
> @@ -703,6 +704,133 @@ ethernet: ethernet@112a0000 {
>  			status = "disabled";
>  		};
>  
> +		camsv1: camsv@15050000 {
> +			compatible = "mediatek,mt8365-camsv";
> +			reg = <0 0x15050000 0 0x0040>,
> +			      <0 0x15050208 0 0x0020>,
> +			      <0 0x15050400 0 0x0100>;
> +			interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_LOW>;
> +			clocks = <&camsys CLK_CAM>,
> +				 <&camsys CLK_CAMTG>,
> +				 <&camsys CLK_CAMSV0>;
> +			clock-names = "cam", "camtg", "camsv";
> +			iommus = <&iommu M4U_PORT_CAM_IMGO>;
> +			mediatek,larb = <&larb2>;
> +			power-domains = <&spm MT8365_POWER_DOMAIN_CAM>;
> +			status = "disabled";
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +				port@0 {
> +					reg = <0>;
> +					camsv1_endpoint: endpoint {
> +						remote-endpoint =
> +							<&seninf_camsv1_endpoint>;

I think you can keep this on a single line. Same below.

> +					};
> +				};
> +			};
> +		};
> +
> +		camsv2: camsv@15050800 {
> +			compatible = "mediatek,mt8365-camsv";
> +			reg = <0 0x15050800 0 0x0040>,
> +			      <0 0x15050228 0 0x0020>,
> +			      <0 0x15050C00 0 0x0100>;

Lower-case hex constants.

> +			interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_LOW>;
> +			clocks = <&camsys CLK_CAM>,
> +				 <&camsys CLK_CAMTG>,
> +				 <&camsys CLK_CAMSV1>;
> +			clock-names = "cam", "camtg", "camsv";
> +			iommus = <&iommu M4U_PORT_CAM_IMGO>;
> +

Nitpicking, camsv doesn't have a blank line here. I'm fine either way,
but please do the same for both nodes.

> +			mediatek,larb = <&larb2>;
> +			power-domains = <&spm MT8365_POWER_DOMAIN_CAM>;
> +			status = "disabled";
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +				port@0 {
> +					reg = <0>;
> +					camsv2_endpoint: endpoint {
> +						remote-endpoint =
> +							<&seninf_camsv2_endpoint>;
> +					};
> +				};
> +			};
> +		};
> +
> +		seninf: seninf@15040000 {

This should go before the two camsv instances to keep nodes sorted by
address. The camsv1, camsv2 and seninf nodes need to be moved further
down for the same reason.

> +			compatible = "mediatek,mt8365-seninf";
> +			reg = <0 0x15040000 0 0x6000>;
> +			interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_LOW>;
> +			clocks = <&camsys CLK_CAM_SENIF>,
> +				 <&topckgen CLK_TOP_SENIF_SEL>;
> +			clock-names = "camsys", "top_mux";
> +
> +			power-domains = <&spm MT8365_POWER_DOMAIN_CAM>;
> +
> +			phys = <&mipi_csi0 PHY_TYPE_DPHY>, <&mipi_csi1>;
> +			phy-names = "csi0", "csi1";
> +
> +			status = "disabled";
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +				};
> +
> +				port@2 {
> +					reg = <2>;
> +				};
> +
> +				port@3 {
> +					reg = <3>;
> +				};
> +
> +				port@4 {
> +					reg = <4>;
> +					seninf_camsv1_endpoint: endpoint {
> +						remote-endpoint =
> +							<&camsv1_endpoint>;
> +					};
> +				};
> +
> +				port@5 {
> +					reg = <5>;
> +					seninf_camsv2_endpoint: endpoint {
> +						remote-endpoint =
> +							<&camsv2_endpoint>;
> +					};
> +				};
> +			};
> +		};
> +
> +		mipi_csi0: mipi-csi0@11c10000 {
> +			compatible = "mediatek,mt8365-csi-rx";
> +			reg = <0 0x11C10000 0 0x2000>;

Lower-case hex constants.

> +			status = "disabled";
> +			num-lanes = <4>;
> +			#phy-cells = <1>;
> +		};
> +
> +		mipi_csi1: mipi-csi1@11c12000 {
> +			compatible = "mediatek,mt8365-csi-rx";
> +			reg = <0 0x11C12000 0 0x2000>;

Lower-case hex constants.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> +			phy-type = <PHY_TYPE_DPHY>;
> +			status = "disabled";
> +			num-lanes = <4>;
> +			#phy-cells = <0>;
> +		};
> +
>  		u3phy: t-phy@11cc0000 {
>  			compatible = "mediatek,mt8365-tphy", "mediatek,generic-tphy-v2";
>  			#address-cells = <1>;

-- 
Regards,

Laurent Pinchart


WARNING: multiple messages have this Message-ID (diff)
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Julien Stephan <jstephan@baylibre.com>
Cc: Andy Hsieh <andy.hsieh@mediatek.com>,
	AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>,
	Conor Dooley <conor+dt@kernel.org>,
	devicetree@vger.kernel.org,
	Florian Sylvestre <fsylvestre@baylibre.com>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org,
	linux-media@vger.kernel.org, Louis Kuo <louis.kuo@mediatek.com>,
	Matthias Brugger <matthias.bgg@gmail.com>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Paul Elder <paul.elder@ideasonboard.com>,
	Phi-bang Nguyen <pnguyen@baylibre.com>,
	Rob Herring <robh+dt@kernel.org>
Subject: Re: [PATCH v4 5/5] arm64: dts: mediatek: mt8365: Add support for camera
Date: Thu, 11 Jan 2024 10:32:55 +0200	[thread overview]
Message-ID: <20240111083255.GC30988@pendragon.ideasonboard.com> (raw)
In-Reply-To: <20240110141443.364655-6-jstephan@baylibre.com>

Hi Julien,

Thank you for the patch.

On Wed, Jan 10, 2024 at 03:14:42PM +0100, Julien Stephan wrote:
> Add base support for cameras for mt8365 platforms. This requires nodes
> for the sensor interface, camsv, and CSI receivers.
> 
> Signed-off-by: Julien Stephan <jstephan@baylibre.com>
> ---
>  arch/arm64/boot/dts/mediatek/mt8365.dtsi | 128 +++++++++++++++++++++++
>  1 file changed, 128 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/mediatek/mt8365.dtsi b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
> index 24581f7410aa..9059b2f83b83 100644
> --- a/arch/arm64/boot/dts/mediatek/mt8365.dtsi
> +++ b/arch/arm64/boot/dts/mediatek/mt8365.dtsi
> @@ -10,6 +10,7 @@
>  #include <dt-bindings/interrupt-controller/irq.h>
>  #include <dt-bindings/phy/phy.h>
>  #include <dt-bindings/power/mediatek,mt8365-power.h>
> +#include <dt-bindings/memory/mediatek,mt8365-larb-port.h>
>  
>  / {
>  	compatible = "mediatek,mt8365";
> @@ -703,6 +704,133 @@ ethernet: ethernet@112a0000 {
>  			status = "disabled";
>  		};
>  
> +		camsv1: camsv@15050000 {
> +			compatible = "mediatek,mt8365-camsv";
> +			reg = <0 0x15050000 0 0x0040>,
> +			      <0 0x15050208 0 0x0020>,
> +			      <0 0x15050400 0 0x0100>;
> +			interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_LOW>;
> +			clocks = <&camsys CLK_CAM>,
> +				 <&camsys CLK_CAMTG>,
> +				 <&camsys CLK_CAMSV0>;
> +			clock-names = "cam", "camtg", "camsv";
> +			iommus = <&iommu M4U_PORT_CAM_IMGO>;
> +			mediatek,larb = <&larb2>;
> +			power-domains = <&spm MT8365_POWER_DOMAIN_CAM>;
> +			status = "disabled";
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +				port@0 {
> +					reg = <0>;
> +					camsv1_endpoint: endpoint {
> +						remote-endpoint =
> +							<&seninf_camsv1_endpoint>;

I think you can keep this on a single line. Same below.

> +					};
> +				};
> +			};
> +		};
> +
> +		camsv2: camsv@15050800 {
> +			compatible = "mediatek,mt8365-camsv";
> +			reg = <0 0x15050800 0 0x0040>,
> +			      <0 0x15050228 0 0x0020>,
> +			      <0 0x15050C00 0 0x0100>;

Lower-case hex constants.

> +			interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_LOW>;
> +			clocks = <&camsys CLK_CAM>,
> +				 <&camsys CLK_CAMTG>,
> +				 <&camsys CLK_CAMSV1>;
> +			clock-names = "cam", "camtg", "camsv";
> +			iommus = <&iommu M4U_PORT_CAM_IMGO>;
> +

Nitpicking, camsv doesn't have a blank line here. I'm fine either way,
but please do the same for both nodes.

> +			mediatek,larb = <&larb2>;
> +			power-domains = <&spm MT8365_POWER_DOMAIN_CAM>;
> +			status = "disabled";
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +				port@0 {
> +					reg = <0>;
> +					camsv2_endpoint: endpoint {
> +						remote-endpoint =
> +							<&seninf_camsv2_endpoint>;
> +					};
> +				};
> +			};
> +		};
> +
> +		seninf: seninf@15040000 {

This should go before the two camsv instances to keep nodes sorted by
address. The camsv1, camsv2 and seninf nodes need to be moved further
down for the same reason.

> +			compatible = "mediatek,mt8365-seninf";
> +			reg = <0 0x15040000 0 0x6000>;
> +			interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_LOW>;
> +			clocks = <&camsys CLK_CAM_SENIF>,
> +				 <&topckgen CLK_TOP_SENIF_SEL>;
> +			clock-names = "camsys", "top_mux";
> +
> +			power-domains = <&spm MT8365_POWER_DOMAIN_CAM>;
> +
> +			phys = <&mipi_csi0 PHY_TYPE_DPHY>, <&mipi_csi1>;
> +			phy-names = "csi0", "csi1";
> +
> +			status = "disabled";
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +				};
> +
> +				port@2 {
> +					reg = <2>;
> +				};
> +
> +				port@3 {
> +					reg = <3>;
> +				};
> +
> +				port@4 {
> +					reg = <4>;
> +					seninf_camsv1_endpoint: endpoint {
> +						remote-endpoint =
> +							<&camsv1_endpoint>;
> +					};
> +				};
> +
> +				port@5 {
> +					reg = <5>;
> +					seninf_camsv2_endpoint: endpoint {
> +						remote-endpoint =
> +							<&camsv2_endpoint>;
> +					};
> +				};
> +			};
> +		};
> +
> +		mipi_csi0: mipi-csi0@11c10000 {
> +			compatible = "mediatek,mt8365-csi-rx";
> +			reg = <0 0x11C10000 0 0x2000>;

Lower-case hex constants.

> +			status = "disabled";
> +			num-lanes = <4>;
> +			#phy-cells = <1>;
> +		};
> +
> +		mipi_csi1: mipi-csi1@11c12000 {
> +			compatible = "mediatek,mt8365-csi-rx";
> +			reg = <0 0x11C12000 0 0x2000>;

Lower-case hex constants.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> +			phy-type = <PHY_TYPE_DPHY>;
> +			status = "disabled";
> +			num-lanes = <4>;
> +			#phy-cells = <0>;
> +		};
> +
>  		u3phy: t-phy@11cc0000 {
>  			compatible = "mediatek,mt8365-tphy", "mediatek,generic-tphy-v2";
>  			#address-cells = <1>;

-- 
Regards,

Laurent Pinchart

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2024-01-11  8:32 UTC|newest]

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-10 14:14 [PATCH v4 0/5] Add Mediatek ISP3.0 Julien Stephan
2024-01-10 14:14 ` Julien Stephan
2024-01-10 14:14 ` [PATCH v4 1/5] dt-bindings: media: add mediatek ISP3.0 sensor interface Julien Stephan
2024-01-10 14:14   ` Julien Stephan
2024-01-11  8:15   ` Laurent Pinchart
2024-01-11  8:15     ` Laurent Pinchart
2024-01-12  7:32   ` Krzysztof Kozlowski
2024-01-12  7:32     ` Krzysztof Kozlowski
2024-06-07  8:52     ` Julien Stephan
2024-06-07  8:52       ` Julien Stephan
2024-06-07 14:41       ` Laurent Pinchart
2024-06-07 14:41         ` Laurent Pinchart
2024-06-10  7:54         ` Krzysztof Kozlowski
2024-06-10  7:54           ` Krzysztof Kozlowski
2024-06-10  8:54           ` Laurent Pinchart
2024-06-10  8:54             ` Laurent Pinchart
2024-06-10 10:18             ` Krzysztof Kozlowski
2024-06-10 10:18               ` Krzysztof Kozlowski
2024-06-10 16:10               ` Conor Dooley
2024-06-10 16:10                 ` Conor Dooley
2024-06-10 16:19                 ` Conor Dooley
2024-06-10 16:19                   ` Conor Dooley
2024-06-10  7:39       ` Krzysztof Kozlowski
2024-06-10  7:39         ` Krzysztof Kozlowski
2024-01-10 14:14 ` [PATCH v4 2/5] dt-bindings: media: add mediatek ISP3.0 camsv Julien Stephan
2024-01-10 14:14   ` Julien Stephan
2024-01-12  7:34   ` Krzysztof Kozlowski
2024-01-12  7:34     ` Krzysztof Kozlowski
2024-01-12  7:41     ` Laurent Pinchart
2024-01-12  7:41       ` Laurent Pinchart
2024-01-12  7:49       ` Krzysztof Kozlowski
2024-01-12  7:49         ` Krzysztof Kozlowski
2024-01-10 14:14 ` [PATCH v4 3/5] media: platform: mediatek: isp_30: add mediatek ISP3.0 sensor interface Julien Stephan
2024-01-10 14:14   ` Julien Stephan
2024-01-11  2:46   ` CK Hu (胡俊光)
2024-01-11  2:46     ` CK Hu (胡俊光)
2024-01-11 12:04   ` AngeloGioacchino Del Regno
2024-01-11 12:04     ` AngeloGioacchino Del Regno
2024-02-12 15:07     ` Julien Stephan
2024-02-12 15:07       ` Julien Stephan
2024-06-10 14:39     ` Julien Stephan
2024-06-10 14:39       ` Julien Stephan
2024-06-12  8:06       ` AngeloGioacchino Del Regno
2024-06-14 10:38         ` Julien Stephan
2024-06-14 12:33           ` Laurent Pinchart
2024-06-14 14:14             ` Julien Stephan
2024-06-14 14:42               ` Laurent Pinchart
2024-06-14 14:54                 ` Julien Stephan
2024-06-15  0:47                   ` Laurent Pinchart
2024-07-04 13:41                     ` Julien Stephan
2024-02-15  9:21   ` Sakari Ailus
2024-02-15  9:21     ` Sakari Ailus
2024-03-20  9:04   ` CK Hu (胡俊光)
2024-03-20  9:04     ` CK Hu (胡俊光)
2024-01-10 14:14 ` [PATCH v4 4/5] media: platform: mediatek: isp_30: add mediatek ISP3.0 camsv Julien Stephan
2024-01-10 14:14   ` Julien Stephan
2024-01-11 12:07   ` AngeloGioacchino Del Regno
2024-01-11 12:07     ` AngeloGioacchino Del Regno
2024-01-12  0:58   ` CK Hu (胡俊光)
2024-01-12  0:58     ` CK Hu (胡俊光)
2024-01-12  1:48   ` CK Hu (胡俊光)
2024-01-12  1:48     ` CK Hu (胡俊光)
2024-01-12  3:55   ` CK Hu (胡俊光)
2024-01-12  3:55     ` CK Hu (胡俊光)
2024-02-15 11:55   ` Sakari Ailus
2024-02-15 11:55     ` Sakari Ailus
2024-03-18  3:50   ` CK Hu (胡俊光)
2024-03-18  3:50     ` CK Hu (胡俊光)
2024-03-18  5:18   ` CK Hu (胡俊光)
2024-03-18  5:18     ` CK Hu (胡俊光)
2024-03-18  5:42   ` CK Hu (胡俊光)
2024-03-18  5:42     ` CK Hu (胡俊光)
2024-03-19  8:47   ` CK Hu (胡俊光)
2024-03-19  8:47     ` CK Hu (胡俊光)
2024-03-20  9:36   ` CK Hu (胡俊光)
2024-03-20  9:36     ` CK Hu (胡俊光)
2024-01-10 14:14 ` [PATCH v4 5/5] arm64: dts: mediatek: mt8365: Add support for camera Julien Stephan
2024-01-10 14:14   ` Julien Stephan
2024-01-11  8:32   ` Laurent Pinchart [this message]
2024-01-11  8:32     ` Laurent Pinchart
2024-01-11  8:08 ` [PATCH v4 0/5] Add Mediatek ISP3.0 Laurent Pinchart
2024-01-11  8:08   ` Laurent Pinchart

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=20240111083255.GC30988@pendragon.ideasonboard.com \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=andy.hsieh@mediatek.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=fsylvestre@baylibre.com \
    --cc=jstephan@baylibre.com \
    --cc=krzysztof.kozlowski+dt@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=louis.kuo@mediatek.com \
    --cc=matthias.bgg@gmail.com \
    --cc=mchehab@kernel.org \
    --cc=paul.elder@ideasonboard.com \
    --cc=pnguyen@baylibre.com \
    --cc=robh+dt@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.