1// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2/* 3 * Copyright 2025 GOcontroll B.V. 4 * Author: Maud Spierings <maudspierings@gocontroll.com> 5 */ 6 7#include <dt-bindings/gpio/gpio.h> 8 9#include "imx8mp-pinfunc.h" 10 11/dts-v1/; 12/plugin/; 13 14&{/} { 15 model = "GOcontroll Moduline Display with BOE av123z7m-n17 display"; 16 17 panel { 18 compatible = "boe,av123z7m-n17"; 19 enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; 20 pinctrl-0 = <&pinctrl_panel>; 21 pinctrl-names = "default"; 22 power-supply = <®_3v3_per>; 23 reset-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; 24 25 ports { 26 #address-cells = <1>; 27 #size-cells = <0>; 28 29 port@0 { 30 reg = <0>; 31 dual-lvds-odd-pixels; 32 33 panel_in0: endpoint { 34 remote-endpoint = <&lvds1_out>; 35 }; 36 }; 37 38 port@1 { 39 reg = <1>; 40 dual-lvds-even-pixels; 41 42 panel_in1: endpoint { 43 remote-endpoint = <&lvds0_out>; 44 }; 45 }; 46 }; 47 }; 48}; 49 50&i2c4 { 51 #address-cells = <1>; 52 #size-cells = <0>; 53 54 /* sn65dsi85 */ 55 bridge@2d { 56 compatible = "ti,sn65dsi84"; 57 reg = <0x2d>; 58 enable-gpios = <&gpio4 14 GPIO_ACTIVE_HIGH>; 59 pinctrl-0 = <&pinctrl_lvds_bridge>; 60 pinctrl-names = "default"; 61 vcc-supply = <®_1v8_per>; 62 63 ports { 64 #address-cells = <1>; 65 #size-cells = <0>; 66 67 port@0 { 68 reg = <0>; 69 70 dsi_lvds_bridge_in: endpoint { 71 data-lanes = <1 2 3 4>; 72 remote-endpoint = <&mipi_dsi_out>; 73 }; 74 }; 75 76 port@2 { 77 reg = <2>; 78 79 lvds0_out: endpoint { 80 remote-endpoint = <&panel_in1>; 81 }; 82 }; 83 84 port@3 { 85 reg = <3>; 86 87 lvds1_out: endpoint { 88 remote-endpoint = <&panel_in0>; 89 }; 90 }; 91 }; 92 }; 93 94 /* max25014 @ 0x6f */ 95}; 96 97&iomuxc { 98 pinctrl_lvds_bridge: lvdsbridgegrp { 99 fsl,pins = < 100 MX8MP_IOMUXC_SAI1_TXD2__GPIO4_IO14 101 MX8MP_DSE_X1 102 >; 103 }; 104 105 pinctrl_panel: panelgrp { 106 fsl,pins = < 107 MX8MP_IOMUXC_GPIO1_IO07__GPIO1_IO07 108 MX8MP_DSE_X1 109 MX8MP_IOMUXC_GPIO1_IO09__GPIO1_IO09 110 MX8MP_DSE_X1 111 >; 112 }; 113}; 114 115&lcdif1 { 116 status = "okay"; 117}; 118 119&mipi_dsi { 120 /* 121 * burst has to be at least 2x dsi clock that the sn65dsi85 expects 122 * display pixelclock * bpp / lanes / 2 = dsi clock 123 * 88.000.000 * 24 / 4 / 2 = 264.000.000 124 * range gets rounded up to 265.000.000 - 270.000.000 125 * 267.500.000 * 2 = 535.000.000 126 */ 127 samsung,burst-clock-frequency = <535000000>; 128 samsung,esc-clock-frequency = <12000000>; 129 status = "okay"; 130 131 ports { 132 port@1 { 133 mipi_dsi_out: endpoint { 134 data-lanes = <1 2 3 4>; 135 remote-endpoint = < &dsi_lvds_bridge_in>; 136 }; 137 }; 138 }; 139}; 140