[PATCH v2 5/5] arm64: dts: freescale: imx8mp-sb-ucm: Add DSI panel overlay

Laurent Pinchart laurent.pinchart at ideasonboard.com
Sun Mar 17 09:48:50 PDT 2024


The SB-UCM-iMX8MPLUS kit is shipped with an external DSI panel. Add a
corresponding DT overlay.

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 arch/arm64/boot/dts/freescale/Makefile        |  4 +
 .../imx8mp-sb-ucm-panel-kd050hdfia020.dtso    | 81 +++++++++++++++++++
 2 files changed, 85 insertions(+)
 create mode 100644 arch/arm64/boot/dts/freescale/imx8mp-sb-ucm-panel-kd050hdfia020.dtso

diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
index 02efa97fc464..d7432ce6a7bb 100644
--- a/arch/arm64/boot/dts/freescale/Makefile
+++ b/arch/arm64/boot/dts/freescale/Makefile
@@ -165,6 +165,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-icore-mx8mp-edimm2.2.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-msc-sm2s-ep1.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-phyboard-pollux-rdk.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-sb-ucm.dtb
+
+imx8mp-sb-ucm-panel-kd050hdfia020-dtbs := imx8mp-sb-ucm.dtb imx8mp-sb-ucm-panel-kd050hdfia020-dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx8mp-sb-ucm-panel-kd050hdfia020-dtb
+
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revb-hdmi.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revb-lt6.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revb-mi1010ait-1cp1.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-sb-ucm-panel-kd050hdfia020.dtso b/arch/arm64/boot/dts/freescale/imx8mp-sb-ucm-panel-kd050hdfia020.dtso
new file mode 100644
index 000000000000..fdad943c1554
--- /dev/null
+++ b/arch/arm64/boot/dts/freescale/imx8mp-sb-ucm-panel-kd050hdfia020.dtso
@@ -0,0 +1,81 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright 2021 CompuLab
+ *
+ * Device tree overlay for KD050HDFIA020-C020A panel connector to Compulab
+ * SB-UCM-iMX8PLUS.
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+
+&dsi_backlight {
+	status = "okay";
+};
+
+&i2c5 {
+	status = "okay";
+
+	touch at 5d {
+		compatible = "goodix,gt911";
+		reg = <0x5d>;
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_dsi_touch>;
+
+		interrupt-parent = <&gpio4>;
+		interrupts = <12 IRQ_TYPE_LEVEL_HIGH>;
+
+                irq-gpios = <&gpio4 12 GPIO_ACTIVE_HIGH>;
+		reset-gpios = <&pca9555 5 GPIO_ACTIVE_HIGH>;
+        };
+};
+
+&lcdif1 {
+	status = "okay";
+};
+
+&mipi_dsi {
+	#address-cells = <1>;
+	#size-cells = <0>;
+	samsung,esc-clock-frequency = <20000000>;
+	status = "okay";
+
+	panel at 0 {
+		compatible = "startek,kd050hdfia020", "ilitek,ili9881c";
+		reg = <0>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_dsi_panel>;
+
+		reset-gpio = <&pca9555 4 GPIO_ACTIVE_LOW>;
+		power-supply = <&reg_3v3_per>;
+
+		backlight = <&dsi_backlight>;
+
+		port {
+			panel_in: endpoint {
+				remote-endpoint = <&mipi_dsi_out>;
+				data-lanes = <1 2 3 4>;
+			};
+		};
+	};
+
+	ports {
+		port at 1 {
+			reg = <1>;
+
+			mipi_dsi_out: endpoint {
+				remote-endpoint = <&panel_in>;
+				data-lanes = <1 2 3 4>;
+				lane-polarities = <0 0 0 0 0>;
+			};
+		};
+	};
+};
+
+&pwm1 {
+	status = "okay";
+};
-- 
Regards,

Laurent Pinchart




More information about the linux-arm-kernel mailing list