]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
arm64: dts: freescale: Add the BOE av101hdt-a10 variant of the Moduline Display
authorMaud Spierings <maudspierings@gocontroll.com>
Tue, 20 May 2025 06:34:56 +0000 (08:34 +0200)
committerShawn Guo <shawnguo@kernel.org>
Fri, 20 Jun 2025 01:29:01 +0000 (09:29 +0800)
Add the BOE av101hdt-a10 variant of the Moduline Display, this variant
comes with a 10.1 1280x720 display with a touchscreen (not working in
mainline).

Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Maud Spierings <maudspierings@gocontroll.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm64/boot/dts/freescale/Makefile
arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dtso [new file with mode: 0644]

index 0b473a23d12008ff79d6467d9e1c7ab2c4d6a9a6..ae9eb1ef08ee3839120d13d8e45e3617917f8daa 100644 (file)
@@ -229,6 +229,11 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-skov-revc-tian-g07017.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-toradex-smarc-dev.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mp-ras314.dtb
+
+imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10-dtbs += imx8mp-tx8p-ml81-moduline-display-106.dtb \
+       imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dtbo
+dtb-$(CONFIG_ARCH_MXC) += imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dtb
+
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-var-som-symphony.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-venice-gw71xx-2x.dtb
 dtb-$(CONFIG_ARCH_MXC) += imx8mp-venice-gw72xx-2x.dtb
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dtso b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av101hdt-a10.dtso
new file mode 100644 (file)
index 0000000..e3965ca
--- /dev/null
@@ -0,0 +1,94 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2025 GOcontroll B.V.
+ * Author: Maud Spierings <maudspierings@gocontroll.com>
+ */
+
+#include <dt-bindings/clock/imx8mp-clock.h>
+#include <dt-bindings/gpio/gpio.h>
+
+#include "imx8mp-pinfunc.h"
+
+/dts-v1/;
+/plugin/;
+
+&{/} {
+       model = "GOcontroll Moduline Display with BOE av101hdt-a10 display";
+
+       panel {
+               compatible = "boe,av101hdt-a10";
+               enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
+               pinctrl-0 = <&pinctrl_panel>;
+               pinctrl-names = "default";
+               power-supply = <&reg_3v3_per>;
+               reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
+
+               port {
+                       panel_lvds_in: endpoint {
+                               remote-endpoint = <&ldb_lvds_ch0>;
+                       };
+               };
+       };
+
+       reg_vbus: regulator-vbus {
+               compatible = "regulator-fixed";
+               power-supply = <&reg_6v4>;
+               regulator-always-on;
+               regulator-max-microvolt = <5000000>;
+               regulator-min-microvolt = <5000000>;
+               regulator-name = "usb-c-vbus";
+       };
+};
+
+&iomuxc {
+       pinctrl_panel: panelgrp {
+               fsl,pins = <
+                       MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07
+                               MX8MP_DSE_X1
+                       MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09
+                               MX8MP_DSE_X1
+               >;
+       };
+};
+
+&lcdif2 {
+       status = "okay";
+};
+
+&lvds_bridge {
+       assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>, <&clk IMX8MP_VIDEO_PLL1>;
+       /* IMX8MP_VIDEO_PLL1 = IMX8MP_CLK_MEDIA_DISP2_PIX * 2 * 7 */
+       assigned-clock-rates = <0>, <1054620000>;
+       status = "okay";
+
+       ports {
+               port@1 {
+                       ldb_lvds_ch0: endpoint {
+                               remote-endpoint = <&panel_lvds_in>;
+                       };
+               };
+       };
+};
+
+&usb_dwc3_1 {
+       dr_mode = "host";
+
+       connector {
+               compatible = "usb-c-connector";
+               data-role = "host";
+               pd-disable;
+               vbus-supply = <&reg_vbus>;
+
+               port {
+                       high_speed_ep: endpoint {
+                               remote-endpoint = <&usb1_hs_ep>;
+                       };
+               };
+       };
+
+       port {
+               usb1_hs_ep: endpoint {
+                       remote-endpoint = <&high_speed_ep>;
+               };
+       };
+};