[PATCH] arm64: dts: renesas: Simplify AA1024XD12 display DTO

Marek Vasut posted 1 patch 1 month, 1 week ago
.../renesas/draak-ebisu-panel-aa104xd12.dtso  | 33 +---------
.../boot/dts/renesas/panel-aa104xd12.dtsi     | 64 +++++++++++++------
.../dts/renesas/salvator-panel-aa104xd12.dtso | 33 +---------
3 files changed, 47 insertions(+), 83 deletions(-)
[PATCH] arm64: dts: renesas: Simplify AA1024XD12 display DTO
Posted by Marek Vasut 1 month, 1 week ago
Simplify the AA1024XD12 display DTO, move all the differences into the
panel-aa104xd12.dtsi , rename OF_GRAPH links to generic lvds_panel_out
and lvds_panel_in names, and parametrize the LVDS output in use using
RENESAS_LVDS_OUTPUT macro. No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
---
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Geert Uytterhoeven <geert+renesas@glider.be>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Magnus Damm <magnus.damm@gmail.com>
Cc: Rob Herring <robh@kernel.org>
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-renesas-soc@vger.kernel.org
---
 .../renesas/draak-ebisu-panel-aa104xd12.dtso  | 33 +---------
 .../boot/dts/renesas/panel-aa104xd12.dtsi     | 64 +++++++++++++------
 .../dts/renesas/salvator-panel-aa104xd12.dtso | 33 +---------
 3 files changed, 47 insertions(+), 83 deletions(-)

diff --git a/arch/arm64/boot/dts/renesas/draak-ebisu-panel-aa104xd12.dtso b/arch/arm64/boot/dts/renesas/draak-ebisu-panel-aa104xd12.dtso
index 90767d74e21b2..2ab7e947a05b9 100644
--- a/arch/arm64/boot/dts/renesas/draak-ebisu-panel-aa104xd12.dtso
+++ b/arch/arm64/boot/dts/renesas/draak-ebisu-panel-aa104xd12.dtso
@@ -6,36 +6,5 @@
  * Copyright 2021 Ideas on Board Oy
  */
 
-/dts-v1/;
-/plugin/;
-
-&{/} {
+#define RENESAS_LVDS_OUTPUT	lvds1
 #include "panel-aa104xd12.dtsi"
-};
-
-&{/panel} {
-	backlight = <&backlight>;
-
-	port {
-		panel_in: endpoint {
-			remote-endpoint = <&lvds1_out>;
-		};
-	};
-};
-
-&lvds1 {
-	status = "okay";
-
-	ports {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		port@1 {
-			reg = <1>;
-
-			lvds1_out: endpoint {
-				remote-endpoint = <&panel_in>;
-			};
-		};
-	};
-};
diff --git a/arch/arm64/boot/dts/renesas/panel-aa104xd12.dtsi b/arch/arm64/boot/dts/renesas/panel-aa104xd12.dtsi
index 4b1f0982b9e4a..11113a13a337d 100644
--- a/arch/arm64/boot/dts/renesas/panel-aa104xd12.dtsi
+++ b/arch/arm64/boot/dts/renesas/panel-aa104xd12.dtsi
@@ -5,26 +5,52 @@
  * Copyright (C) 2014 Renesas Electronics Corp.
  */
 
-panel {
-	compatible = "mitsubishi,aa104xd12", "panel-lvds";
-
-	width-mm = <210>;
-	height-mm = <158>;
-	data-mapping = "jeida-18";
-
-	panel-timing {
-		/* 1024x768 @65Hz */
-		clock-frequency = <65000000>;
-		hactive = <1024>;
-		vactive = <768>;
-		hsync-len = <136>;
-		hfront-porch = <20>;
-		hback-porch = <160>;
-		vfront-porch = <3>;
-		vback-porch = <29>;
-		vsync-len = <6>;
+/dts-v1/;
+/plugin/;
+
+&{/} {
+	panel {
+		compatible = "mitsubishi,aa104xd12", "panel-lvds";
+		backlight = <&backlight>;
+
+		width-mm = <210>;
+		height-mm = <158>;
+		data-mapping = "jeida-18";
+
+		panel-timing {
+			/* 1024x768 @65Hz */
+			clock-frequency = <65000000>;
+			hactive = <1024>;
+			vactive = <768>;
+			hsync-len = <136>;
+			hfront-porch = <20>;
+			hback-porch = <160>;
+			vfront-porch = <3>;
+			vback-porch = <29>;
+			vsync-len = <6>;
+		};
+
+		port {
+			lvds_panel_in: endpoint {
+				remote-endpoint = <&lvds_panel_out>;
+			};
+		};
 	};
+};
+
+&RENESAS_LVDS_OUTPUT {
+	status = "okay";
+
+	ports {
+		#address-cells = <1>;
+		#size-cells = <0>;
+
+		port@1 {
+			reg = <1>;
 
-	port {
+			lvds_panel_out: endpoint {
+				remote-endpoint = <&lvds_panel_in>;
+			};
+		};
 	};
 };
diff --git a/arch/arm64/boot/dts/renesas/salvator-panel-aa104xd12.dtso b/arch/arm64/boot/dts/renesas/salvator-panel-aa104xd12.dtso
index 7807c3f80409a..4eb3e06ce52bb 100644
--- a/arch/arm64/boot/dts/renesas/salvator-panel-aa104xd12.dtso
+++ b/arch/arm64/boot/dts/renesas/salvator-panel-aa104xd12.dtso
@@ -6,36 +6,5 @@
  * Copyright 2021 Ideas on Board Oy
  */
 
-/dts-v1/;
-/plugin/;
-
-&{/} {
+#define RENESAS_LVDS_OUTPUT	lvds0
 #include "panel-aa104xd12.dtsi"
-};
-
-&{/panel} {
-	backlight = <&backlight>;
-
-	port {
-		panel_in: endpoint {
-			remote-endpoint = <&lvds0_out>;
-		};
-	};
-};
-
-&lvds0 {
-	status = "okay";
-
-	ports {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		port@1 {
-			reg = <1>;
-
-			lvds0_out: endpoint {
-				remote-endpoint = <&panel_in>;
-			};
-		};
-	};
-};
-- 
2.53.0
Re: [PATCH] arm64: dts: renesas: Simplify AA1024XD12 display DTO
Posted by Geert Uytterhoeven 2 weeks, 1 day ago
Hi Marek,

On Mon, 4 May 2026 at 16:38, Marek Vasut
<marek.vasut+renesas@mailbox.org> wrote:
> Simplify the AA1024XD12 display DTO, move all the differences into the
> panel-aa104xd12.dtsi , rename OF_GRAPH links to generic lvds_panel_out
> and lvds_panel_in names, and parametrize the LVDS output in use using
> RENESAS_LVDS_OUTPUT macro. No functional change.
>
> Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>

Thanks for your patch!

> --- a/arch/arm64/boot/dts/renesas/draak-ebisu-panel-aa104xd12.dtso
> +++ b/arch/arm64/boot/dts/renesas/draak-ebisu-panel-aa104xd12.dtso
> @@ -6,36 +6,5 @@
>   * Copyright 2021 Ideas on Board Oy
>   */
>
> -/dts-v1/;
> -/plugin/;
> -
> -&{/} {
> +#define RENESAS_LVDS_OUTPUT    lvds1

Both Draak and Ebisu actually have two sets of LVDS and backlight
connectors, so you could connect such a panel to lvds0, too.

> --- a/arch/arm64/boot/dts/renesas/panel-aa104xd12.dtsi
> +++ b/arch/arm64/boot/dts/renesas/panel-aa104xd12.dtsi
> @@ -5,26 +5,52 @@

> +&{/} {
> +       panel {
> +               compatible = "mitsubishi,aa104xd12", "panel-lvds";
> +               backlight = <&backlight>;
> +
> +               width-mm = <210>;
> +               height-mm = <158>;
> +               data-mapping = "jeida-18";
> +
> +               panel-timing {
> +                       /* 1024x768 @65Hz */
> +                       clock-frequency = <65000000>;
> +                       hactive = <1024>;
> +                       vactive = <768>;
> +                       hsync-len = <136>;
> +                       hfront-porch = <20>;
> +                       hback-porch = <160>;
> +                       vfront-porch = <3>;
> +                       vback-porch = <29>;
> +                       vsync-len = <6>;
> +               };
> +
> +               port {
> +                       lvds_panel_in: endpoint {
> +                               remote-endpoint = <&lvds_panel_out>;
> +                       };
> +               };
>         };
> +};

With two panels, the channel-independent "lvds_panel_in" and
"lvds_panel_out" labels may become an issue.  I think you can
fix that later using C preprocessor concatenation?

As we don't support the dual-display use case yet anyway:
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
i.e. will queue in renesas-devel for v7.2.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds