[PATCH 0/2] arm64: dts: imx93-kontron: Add support for Kontron i.MX93 DL

COOLING6d

7 messages, 4 authors, 6d ago · open the first message on its own page

[PATCH 0/2] arm64: dts: imx93-kontron: Add support for Kontron i.MX93 DL

From: Frieder Schrempf <hidden>
Date: 2026-09-10 15:20:21

This adds support for the 7" LVDS panel on Kontron i.MX93 DL
devices.

Signed-off-by: Frieder Schrempf <redacted>
---
Mikhail Vaniulin (2):
      clk: imx: fracn-gppll: Add 350 MHz support
      arm64: dts: imx93-kontron: Add support for Kontron i.MX93 DL

 arch/arm64/boot/dts/freescale/Makefile             |   4 +
 .../arm64/boot/dts/freescale/imx93-kontron-dl.dtso | 104 +++++++++++++++++++++
 drivers/clk/imx/clk-fracn-gppll.c                  |   1 +
 3 files changed, 109 insertions(+)
---
base-commit: df2908090cda368b01ff43709f51890076c56157
change-id: 20260910-upstreaming-v7-3-imx93-displayline-b4580e542c85

Best regards,
--  
Frieder Schrempf [off-list ref]

[PATCH 2/2] arm64: dts: imx93-kontron: Add support for Kontron i.MX93 DL

From: Frieder Schrempf <hidden>
Date: 2026-09-10 15:20:21

From: Mikhail Vaniulin <redacted>

This provides an overlay to enable the 7" LVDS panel on Kontron
i.MX93 DL devices.

Signed-off-by: Mikhail Vaniulin <redacted>
Signed-off-by: Frieder Schrempf <redacted>
---
 arch/arm64/boot/dts/freescale/Makefile             |   4 +
 .../arm64/boot/dts/freescale/imx93-kontron-dl.dtso | 104 +++++++++++++++++++++
 2 files changed, 108 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 95ae85ab4adf..2f0d3378c050 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -653,6 +653,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-frdm-pixpaper.dtb
 
 dtb-$(CONFIG_ARCH_MXC) += imx93-14x14-evk.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-bl-osm-s.dtb
+
+imx93-kontron-dl-dtbs += imx93-kontron-bl-osm-s.dtb imx93-kontron-dl.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-dl.dtb
+
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin.dtb
 
diff --git a/arch/arm64/boot/dts/freescale/imx93-kontron-dl.dtso b/arch/arm64/boot/dts/freescale/imx93-kontron-dl.dtso
new file mode 100644
index 000000000000..2d962823dfeb
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx93-kontron-dl.dtso
@@ -0,0 +1,104 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * Copyright (C) 2024 Kontron Electronics GmbH
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+
+&{/} {
+	model = "Kontron DL i.MX93 OSM-S";
+	compatible = "kontron,imx93-bl-osm-s", "kontron,imx93-osm-s", "fsl,imx93";
+
+	backlight: backlight {
+		compatible = "pwm-backlight";
+		pwms = <&tpm3 3 50000 0>;
+		brightness-levels = <0 100>;
+		num-interpolated-steps = <100>;
+		default-brightness-level = <100>;
+	};
+
+	panel {
+		compatible = "jenson,bl-jt60050-01a", "panel-lvds";
+		backlight = <&backlight>;
+		data-mapping = "vesa-24";
+		enable-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>;
+		power-supply = <&reg_vcc_panel>;
+		height-mm = <86>;
+		width-mm = <154>;
+
+		panel-timing {
+			clock-frequency = <50000000>;
+			hactive = <1024>;
+			hback-porch = <160>;
+			hfront-porch = <160>;
+			hsync-len = <1>;
+			vactive = <600>;
+			vback-porch = <23>;
+			vfront-porch = <12>;
+			vsync-len = <1>;
+		};
+
+		port {
+			panel_in_lvds0: endpoint {
+				remote-endpoint = <&ldb_lvds_ch0>;
+			};
+		};
+	};
+};
+
+&gpio3 {
+	panel-rst-hog {
+		gpio-hog;
+		gpios = <26 GPIO_ACTIVE_LOW>;
+		output-low;
+		line-name = "panel-reset";
+	};
+
+	panel-stby-hog {
+		gpio-hog;
+		gpios = <27 GPIO_ACTIVE_HIGH>;
+		output-high;
+		line-name = "panel-standby";
+	};
+};
+
+&lcdif {
+	status = "okay";
+};
+
+&ldb_lvds_ch0 {
+	remote-endpoint = <&panel_in_lvds0>;
+};
+
+&lpi2c2 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	touchscreen@5d {
+		compatible = "goodix,gt928";
+		reg = <0x5d>;
+		interrupt-parent = <&gpio2>;
+		interrupts = <22 IRQ_TYPE_LEVEL_LOW>;
+		irq-gpios = <&gpio2 22 GPIO_ACTIVE_HIGH>;
+		AVDD28-supply = <&reg_vcc_panel>;
+		VDDIO-supply = <&reg_vcc_panel>;
+		reset-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
+	};
+};
+
+&lvds_bridge {
+	status = "okay";
+};
+
+&media_blk_ctrl {
+	status = "okay";
+};
+
+&tpm3 {
+	status = "okay";
+};
-- 
2.55.0

[PATCH 1/2] clk: imx: fracn-gppll: Add 350 MHz support

From: Frieder Schrempf <hidden>
Date: 2026-09-10 15:20:22

From: Mikhail Vaniulin <redacted>

Add the 350 MHz frequency support that can be used for display with
pixelclk of 50 MHz. The divider of 7 is important for LVDS output on
i.MX93. It is also usable for parallel output.

Signed-off-by: Mikhail Vaniulin <redacted>
Signed-off-by: Frieder Schrempf <redacted>
---
 drivers/clk/imx/clk-fracn-gppll.c | 1 +
 1 file changed, 1 insertion(+)
diff --git a/drivers/clk/imx/clk-fracn-gppll.c b/drivers/clk/imx/clk-fracn-gppll.c
index 4048c16c0578..4d83907553c4 100644
--- a/drivers/clk/imx/clk-fracn-gppll.c
+++ b/drivers/clk/imx/clk-fracn-gppll.c
@@ -89,6 +89,7 @@ static const struct imx_fracn_gppll_rate_table fracn_tbl[] = {
 	PLL_FRACN_GP(445333333U, 167, 0, 1, 0, 9),
 	PLL_FRACN_GP(400000000U, 200, 0, 1, 0, 12),
 	PLL_FRACN_GP(393216000U, 163, 84, 100, 0, 10),
+	PLL_FRACN_GP(350000000U, 175, 0, 1, 0, 12),
 	PLL_FRACN_GP(333333333U, 125, 0, 1, 1, 9),
 	PLL_FRACN_GP(332600000U, 138, 584, 1000, 0, 10),
 	PLL_FRACN_GP(300000000U, 150, 0, 1, 0, 12),
-- 
2.55.0

Re: [PATCH 2/2] arm64: dts: imx93-kontron: Add support for Kontron i.MX93 DL

From: Frank Li <hidden>
Date: 2026-09-10 16:37:20

On Thu, Sep 10, 2026 at 05:19:07PM +0200, Frieder Schrempf wrote:
From: Mikhail Vaniulin <redacted>

This provides an overlay to enable the 7" LVDS panel on Kontron
i.MX93 DL devices.

Signed-off-by: Mikhail Vaniulin <redacted>
Signed-off-by: Frieder Schrempf <redacted>
---
Can you use similar method to share 7" lvds for other boards also

https://lore.kernel.org/imx/20260910-verdin-imx8mp-hmp-camera-ready-v1-0-3c9349ecdb9f@toradex.com/T/#t

Frank
quoted hunk
 arch/arm64/boot/dts/freescale/Makefile             |   4 +
 .../arm64/boot/dts/freescale/imx93-kontron-dl.dtso | 104 +++++++++++++++++++++
 2 files changed, 108 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 95ae85ab4adf..2f0d3378c050 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -653,6 +653,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx93-11x11-frdm-pixpaper.dtb

 dtb-$(CONFIG_ARCH_MXC) += imx93-14x14-evk.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-bl-osm-s.dtb
+
+imx93-kontron-dl-dtbs += imx93-kontron-bl-osm-s.dtb imx93-kontron-dl.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx93-kontron-dl.dtb
+
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-nash.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx93-phyboard-segin.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx93-kontron-dl.dtso b/arch/arm64/boot/dts/freescale/imx93-kontron-dl.dtso
new file mode 100644
index 000000000000..2d962823dfeb
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx93-kontron-dl.dtso
@@ -0,0 +1,104 @@
+// SPDX-License-Identifier: GPL-2.0+ OR MIT
+/*
+ * Copyright (C) 2024 Kontron Electronics GmbH
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+
+&{/} {
+	model = "Kontron DL i.MX93 OSM-S";
+	compatible = "kontron,imx93-bl-osm-s", "kontron,imx93-osm-s", "fsl,imx93";
+
+	backlight: backlight {
+		compatible = "pwm-backlight";
+		pwms = <&tpm3 3 50000 0>;
+		brightness-levels = <0 100>;
+		num-interpolated-steps = <100>;
+		default-brightness-level = <100>;
+	};
+
+	panel {
+		compatible = "jenson,bl-jt60050-01a", "panel-lvds";
+		backlight = <&backlight>;
+		data-mapping = "vesa-24";
+		enable-gpios = <&gpio2 29 GPIO_ACTIVE_HIGH>;
+		power-supply = <&reg_vcc_panel>;
+		height-mm = <86>;
+		width-mm = <154>;
+
+		panel-timing {
+			clock-frequency = <50000000>;
+			hactive = <1024>;
+			hback-porch = <160>;
+			hfront-porch = <160>;
+			hsync-len = <1>;
+			vactive = <600>;
+			vback-porch = <23>;
+			vfront-porch = <12>;
+			vsync-len = <1>;
+		};
+
+		port {
+			panel_in_lvds0: endpoint {
+				remote-endpoint = <&ldb_lvds_ch0>;
+			};
+		};
+	};
+};
+
+&gpio3 {
+	panel-rst-hog {
+		gpio-hog;
+		gpios = <26 GPIO_ACTIVE_LOW>;
+		output-low;
+		line-name = "panel-reset";
+	};
+
+	panel-stby-hog {
+		gpio-hog;
+		gpios = <27 GPIO_ACTIVE_HIGH>;
+		output-high;
+		line-name = "panel-standby";
+	};
+};
+
+&lcdif {
+	status = "okay";
+};
+
+&ldb_lvds_ch0 {
+	remote-endpoint = <&panel_in_lvds0>;
+};
+
+&lpi2c2 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	status = "okay";
+
+	touchscreen@5d {
+		compatible = "goodix,gt928";
+		reg = <0x5d>;
+		interrupt-parent = <&gpio2>;
+		interrupts = <22 IRQ_TYPE_LEVEL_LOW>;
+		irq-gpios = <&gpio2 22 GPIO_ACTIVE_HIGH>;
+		AVDD28-supply = <&reg_vcc_panel>;
+		VDDIO-supply = <&reg_vcc_panel>;
+		reset-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
+	};
+};
+
+&lvds_bridge {
+	status = "okay";
+};
+
+&media_blk_ctrl {
+	status = "okay";
+};
+
+&tpm3 {
+	status = "okay";
+};

--
2.55.0

RE: [PATCH 1/2] clk: imx: fracn-gppll: Add 350 MHz support

From: Peng Fan (OSS) <hidden>
Date: 2026-09-11 02:02:14

Subject: [PATCH 1/2] clk: imx: fracn-gppll: Add 350 MHz support

From: Mikhail Vaniulin <redacted>

Add the 350 MHz frequency support that can be used for display with
pixelclk of 50 MHz. The divider of 7 is important for LVDS output on
i.MX93. It is also usable for parallel output.

Signed-off-by: Mikhail Vaniulin <redacted>
Signed-off-by: Frieder Schrempf <redacted>
Reviewed-by: Peng Fan <peng.fan@nxp.com>

NXP Confidential

Re: [PATCH 1/2] clk: imx: fracn-gppll: Add 350 MHz support

From: Frank Li <hidden>
Date: 2026-09-11 15:14:48

On Fri, Sep 11, 2026 at 02:02:06AM +0000, Peng Fan (OSS) wrote:
quoted
Subject: [PATCH 1/2] clk: imx: fracn-gppll: Add 350 MHz support

From: Mikhail Vaniulin <redacted>

Add the 350 MHz frequency support that can be used for display with
pixelclk of 50 MHz. The divider of 7 is important for LVDS output on
i.MX93. It is also usable for parallel output.

Signed-off-by: Mikhail Vaniulin <redacted>
Signed-off-by: Frieder Schrempf <redacted>
Reviewed-by: Peng Fan <peng.fan@nxp.com>

NXP Confidential
Please avoid use "NXP Confidential", this is public mail list. Anyone
can see it.

Frank

Re: [PATCH 2/2] arm64: dts: imx93-kontron: Add support for Kontron i.MX93 DL

From: Frieder Schrempf <hidden>
Date: 2026-09-14 14:29:24

On 10.09.26 18:37, Frank Li wrote:
On Thu, Sep 10, 2026 at 05:19:07PM +0200, Frieder Schrempf wrote:
quoted
From: Mikhail Vaniulin <redacted>

This provides an overlay to enable the 7" LVDS panel on Kontron
i.MX93 DL devices.

Signed-off-by: Mikhail Vaniulin <redacted>
Signed-off-by: Frieder Schrempf <redacted>
---
Can you use similar method to share 7" lvds for other boards also

https://lore.kernel.org/imx/20260910-verdin-imx8mp-hmp-camera-ready-v1-0-3c9349ecdb9f@toradex.com/T/#t
I can try to unify this using a nexus connector node and unified labels.
But it looks like there is at least one dependency not yet applied in
[1] for this to actually work.

Can we apply this now and I will rework this once the driver core
changes have been merged? Or do you rather want me to wait until it has
landed?

[1]
https://lore.kernel.org/all/20260910-fw-devlink-nexus-ready-v2-0-17ac82dbe226@toradex.com/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help