[PATCH 13/13] arm64: dts: rockchip: add dm-m10r800-v3s overlay for roc-rk3576-pc
Heiko Stuebner
heiko at sntech.de
Mon Jul 7 16:49:06 UTC 2025
Add DT-overlay for the DM-M10R800-V3S display module when connected to
the ROC-RK3576-PC board. It contains a bestar,bsd1218-a101kl68 display
and a Goodix GT911 touchscreen in one enclosed case.
Signed-off-by: Heiko Stuebner <heiko at sntech.de>
---
arch/arm64/boot/dts/rockchip/Makefile | 5 +
.../rk3576-roc-pc-dm-m10r800-v3s.dtso | 134 ++++++++++++++++++
2 files changed, 139 insertions(+)
create mode 100644 arch/arm64/boot/dts/rockchip/rk3576-roc-pc-dm-m10r800-v3s.dtso
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index 4bf84622db47..f320dd2b5f6f 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -145,6 +145,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-wolfvision-pf5-io-expander.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-armsom-sige5.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-evb1-v10.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-roc-pc.dtb
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-roc-pc-dm-m10r800-v3s.dtbo
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-rock-4d.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3582-radxa-e52c.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-armsom-sige7.dtb
@@ -225,6 +226,10 @@ rk3568-wolfvision-pf5-vz-2-uhd-dtbs := rk3568-wolfvision-pf5.dtb \
rk3568-wolfvision-pf5-display-vz.dtbo \
rk3568-wolfvision-pf5-io-expander.dtbo
+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3576-roc-pc-dm-m10r800-v3s.dtb
+rk3576-roc-pc-dm-m10r800-v3s-dtbs := rk3576-roc-pc.dtb \
+ rk3576-roc-pc-dm-m10r800-v3s.dtbo
+
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-edgeble-neu6a-wifi.dtb
rk3588-edgeble-neu6a-wifi-dtbs := rk3588-edgeble-neu6a-io.dtb \
rk3588-edgeble-neu6a-wifi.dtbo
diff --git a/arch/arm64/boot/dts/rockchip/rk3576-roc-pc-dm-m10r800-v3s.dtso b/arch/arm64/boot/dts/rockchip/rk3576-roc-pc-dm-m10r800-v3s.dtso
new file mode 100644
index 000000000000..2817cc585c3a
--- /dev/null
+++ b/arch/arm64/boot/dts/rockchip/rk3576-roc-pc-dm-m10r800-v3s.dtso
@@ -0,0 +1,134 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (C) 2025 Heiko Stuebner <heiko at sntech.de>
+ *
+ * DM-M10R800-V3S display module for ROC-RK3576-PC
+ * https://en.t-firefly.com/doc/download/303.html
+ *
+ * DT-overlay for the DM-M10R800-V3S display module when connected to a
+ * ROC-RK3576-PC board. It contains a bestar,bsd1218-a101kl68 display
+ * and a Goodix GT911 touchscreen in one enclosed case.
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/pinctrl/rockchip.h>
+#include <dt-bindings/soc/rockchip,vop2.h>
+
+&{/} {
+ backlight: backlight {
+ compatible = "pwm-backlight";
+ enable-gpios = <&gpio3 RK_PA2 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&mipi_bl_en>;
+ pwms = <&pwm1_6ch_1 0 50000 1>;
+ };
+
+ vcc_tp: regulator-vcc-tp {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc-tp";
+ regulator-min-microvolt = <3000000>;
+ regulator-max-microvolt = <3000000>;
+ vin-supply = <&vcc5v0_device_s0>;
+ };
+};
+
+&dsi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ panel at 0 {
+ compatible = "bestar,bsd1218-a101kl68", "ilitek,ili9881c";
+ reg = <0>;
+ backlight = <&backlight>;
+ power-supply = <&vcc3v3_lcd_s0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&lcd_reset_l>;
+ reset-gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_LOW>;
+
+ port {
+ mipi_panel_in: endpoint {
+ remote-endpoint = <&dsi_out_panel>;
+ };
+ };
+ };
+};
+
+&dsi_in {
+ dsi_in_vp1: endpoint {
+ remote-endpoint = <&vp1_out_dsi>;
+ };
+};
+
+&dsi_out {
+ dsi_out_panel: endpoint {
+ remote-endpoint = <&mipi_panel_in>;
+ };
+};
+
+&i2c0 {
+ /* GT911 is limited to 400KHz */
+ clock-frequency = <400000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0m1_xfer>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+
+ touchscreen at 14 {
+ compatible = "goodix,gt911";
+ reg = <0x14>;
+ interrupt-parent = <&gpio0>;
+ interrupts = <RK_PC6 IRQ_TYPE_LEVEL_LOW>;
+ irq-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&touch_int>, <&touch_reset>;
+ reset-gpios = <&gpio0 RK_PD0 GPIO_ACTIVE_HIGH>;
+ AVDD28-supply = <&vcc_tp>;
+ VDDIO-supply = <&vcc3v3_lcd_s0>;
+ };
+};
+
+&mipidcphy {
+ status = "okay";
+};
+
+&pinctrl {
+ dsi {
+ lcd_reset_l: lcd-reset-l {
+ rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+
+ mipi_bl_en: mipi-bl-en {
+ rockchip,pins = <3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
+ touch {
+ touch_int: touch-int {
+ rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_up>;
+ };
+
+ touch_reset: touch-reset {
+ rockchip,pins = <0 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+};
+
+&pwm1_6ch_1 {
+ status = "okay";
+};
+
+&vp1 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ vp1_out_dsi: endpoint at ROCKCHIP_VOP2_EP_MIPI0 {
+ reg = <ROCKCHIP_VOP2_EP_MIPI0>;
+ remote-endpoint = <&dsi_in_vp1>;
+ };
+};
--
2.47.2
More information about the dri-devel
mailing list