From: Maud Spierings <maudspieri...@gocontroll.com>

Add the BOE av123z7m-n17 variant of the Moduline Display, this variant
comes with a 12.3" 1920x720 display.

Signed-off-by: Maud Spierings <maudspieri...@gocontroll.com>

---
Currently the backlight driver is not available, this will be upstreamed
in a future patch series. It is a Maxim max25014atg.
---
 ...tx8p-ml81-moduline-display-106-av123z7m-n17.dts | 133 +++++++++++++++++++++
 1 file changed, 133 insertions(+)

diff --git 
a/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av123z7m-n17.dts
 
b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av123z7m-n17.dts
new file mode 100644
index 
0000000000000000000000000000000000000000..129c69598f38566460efb271628c1d1e10eb2a85
--- /dev/null
+++ 
b/arch/arm64/boot/dts/freescale/imx8mp-tx8p-ml81-moduline-display-106-av123z7m-n17.dts
@@ -0,0 +1,133 @@
+// SPDX-License-Identifier: (GPL-2.0 OR MIT)
+/*
+ * Copyright 2025 GOcontroll B.V.
+ * Author: Maud Spierings <maudspieri...@gocontroll.com>
+ */
+
+/dts-v1/;
+
+#include "imx8mp-tx8p-ml81-moduline-display-106.dtsi"
+
+/ {
+       model = "GOcontroll Moduline Display with BOE av123z7m-n17 display";
+
+       panel {
+               compatible = "boe,av123z7m-n17";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_panel>;
+               enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
+               reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
+               power-supply = <&reg_3v3_per>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+                               dual-lvds-odd-pixels;
+
+                               panel_in0: endpoint {
+                                       remote-endpoint = <&lvds1_out>;
+                               };
+                       };
+
+                       port@1 {
+                               reg = <1>;
+                               dual-lvds-even-pixels;
+
+                               panel_in1: endpoint {
+                                       remote-endpoint = <&lvds0_out>;
+                               };
+                       };
+               };
+       };
+};
+
+&i2c4 {
+       bridge@2d { /* sn65dsi85 */
+               compatible = "ti,sn65dsi84";
+               reg = <0x2d>;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_lvds_bridge>;
+               enable-gpios = <&gpio4 14 GPIO_ACTIVE_HIGH>;
+               vcc-supply = <&reg_1v8_per>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+
+                               dsi_lvds_bridge_in: endpoint {
+                                       remote-endpoint = <&mipi_dsi_out>;
+                                       data-lanes = <1 2 3 4>;
+                               };
+                       };
+
+                       port@2 {
+                               reg = <2>;
+
+                               lvds0_out: endpoint {
+                                       remote-endpoint = <&panel_in1>;
+                               };
+                       };
+
+                       port@3 {
+                               reg = <3>;
+
+                               lvds1_out: endpoint {
+                                       remote-endpoint = <&panel_in0>;
+                               };
+                       };
+               };
+       };
+
+       /* max25014 @ 0x6f */
+};
+
+&lcdif1 {
+       status = "okay";
+};
+
+&mipi_dsi {
+       samsung,esc-clock-frequency = <12000000>;
+       /*
+        * burst has to be at least 2x dsi clock that the sn65dsi85 expects
+        * display pixelclock * bpp / lanes / 2 = dsi clock
+        * 88.000.000 * 24 / 4 / 2 = 264.000.000
+        * range gets rounded up to 265.000.000 - 270.000.000
+        * 267.500.000 * 2 = 535.000.000
+        */
+       samsung,burst-clock-frequency = <535000000>;
+       status = "okay";
+
+       ports {
+               port@1 {
+                       mipi_dsi_out: endpoint {
+                               remote-endpoint = < &dsi_lvds_bridge_in>;
+                               data-lanes = <1 2 3 4>;
+                       };
+               };
+       };
+};
+
+&iomuxc {
+       pinctrl_lvds_bridge: lvdsbridgegrp {
+               fsl,pins = <
+                       MX8MP_IOMUXC_SAI1_TXD2__GPIO4_IO14 /* COM pin 113 */
+                       MX8MP_DSE_X1
+               >;
+       };
+
+       pinctrl_panel: panelgrp {
+               fsl,pins = <
+                       MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 /* COM pin 157 */
+                       MX8MP_DSE_X1
+                       MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 /* COM pin 159 */
+                       MX8MP_DSE_X1
+               >;
+       };
+};

-- 
2.48.1


Reply via email to