1// SPDX-License-Identifier: (GPL-2.0-only OR MIT) 2/* 3 * Copyright 2017 Lothar Waßmann <LW@KARO-electronics.de> 4 */ 5 6/ { 7 aliases { 8 display = &display; 9 }; 10 11 backlight: backlight { 12 compatible = "pwm-backlight"; 13 pwms = <&pwm2 0 500000 PWM_POLARITY_INVERTED>; 14 pinctrl-names = "default"; 15 pinctrl-0 = <&pinctrl_lcd1_pwr>; 16 enable-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; 17 power-supply = <®_3v3>; 18 /* 19 * a poor man's way to create a 1:1 relationship between 20 * the PWM value and the actual duty cycle 21 */ 22 brightness-levels = < 0 1 2 3 4 5 6 7 8 9 23 10 11 12 13 14 15 16 17 18 19 24 20 21 22 23 24 25 26 27 28 29 25 30 31 32 33 34 35 36 37 38 39 26 40 41 42 43 44 45 46 47 48 49 27 50 51 52 53 54 55 56 57 58 59 28 60 61 62 63 64 65 66 67 68 69 29 70 71 72 73 74 75 76 77 78 79 30 80 81 82 83 84 85 86 87 88 89 31 90 91 92 93 94 95 96 97 98 99 32 100>; 33 default-brightness-level = <50>; 34 }; 35 36 lcd_panel: lcd-panel { 37 compatible = "edt,etm0700g0dh6"; 38 pinctrl-names = "default"; 39 pinctrl-0 = <&pinctrl_lcd0_pwr>; 40 enable-gpios = <&gpio3 29 GPIO_ACTIVE_HIGH>; 41 power-supply = <®_3v3>; 42 backlight = <&backlight>; 43 44 port { 45 lcd_panel_in: endpoint { 46 remote-endpoint = <&lcd_out>; 47 }; 48 }; 49 }; 50 51 display: disp0 { 52 compatible = "fsl,imx-parallel-display"; 53 #address-cells = <1>; 54 #size-cells = <0>; 55 pinctrl-names = "default"; 56 pinctrl-0 = <&pinctrl_disp0_1>; 57 status = "okay"; 58 59 port@0 { 60 reg = <0>; 61 62 lcd_in: endpoint { 63 remote-endpoint = <&ipu1_di0_disp0>; 64 }; 65 }; 66 67 port@1 { 68 reg = <1>; 69 70 lcd_out: endpoint { 71 remote-endpoint = <&lcd_panel_in>; 72 }; 73 }; 74 75 display-timings { 76 timing-vga { 77 clock-frequency = <25200000>; 78 hactive = <640>; 79 vactive = <480>; 80 hback-porch = <48>; 81 hsync-len = <96>; 82 hfront-porch = <16>; 83 vback-porch = <31>; 84 vsync-len = <2>; 85 vfront-porch = <12>; 86 hsync-active = <0>; 87 vsync-active = <0>; 88 de-active = <1>; 89 pixelclk-active = <0>; 90 }; 91 92 timing-etv570 { 93 clock-frequency = <25200000>; 94 hactive = <640>; 95 vactive = <480>; 96 hback-porch = <114>; 97 hsync-len = <30>; 98 hfront-porch = <16>; 99 vback-porch = <32>; 100 vsync-len = <3>; 101 vfront-porch = <10>; 102 hsync-active = <0>; 103 vsync-active = <0>; 104 de-active = <1>; 105 pixelclk-active = <0>; 106 }; 107 108 timing-et0350 { 109 clock-frequency = <6413760>; 110 hactive = <320>; 111 vactive = <240>; 112 hback-porch = <34>; 113 hsync-len = <34>; 114 hfront-porch = <20>; 115 vback-porch = <15>; 116 vsync-len = <3>; 117 vfront-porch = <4>; 118 hsync-active = <0>; 119 vsync-active = <0>; 120 de-active = <1>; 121 pixelclk-active = <0>; 122 }; 123 124 timing-et0430 { 125 clock-frequency = <9009000>; 126 hactive = <480>; 127 vactive = <272>; 128 hback-porch = <2>; 129 hsync-len = <41>; 130 hfront-porch = <2>; 131 vback-porch = <2>; 132 vsync-len = <10>; 133 vfront-porch = <2>; 134 hsync-active = <0>; 135 vsync-active = <0>; 136 de-active = <1>; 137 pixelclk-active = <1>; 138 }; 139 140 timing-et0500 { 141 clock-frequency = <33264000>; 142 hactive = <800>; 143 vactive = <480>; 144 hback-porch = <88>; 145 hsync-len = <128>; 146 hfront-porch = <40>; 147 vback-porch = <33>; 148 vsync-len = <2>; 149 vfront-porch = <10>; 150 hsync-active = <0>; 151 vsync-active = <0>; 152 de-active = <1>; 153 pixelclk-active = <0>; 154 }; 155 156 timing-et0700 { /* same as ET0500 */ 157 clock-frequency = <33264000>; 158 hactive = <800>; 159 vactive = <480>; 160 hback-porch = <88>; 161 hsync-len = <128>; 162 hfront-porch = <40>; 163 vback-porch = <33>; 164 vsync-len = <2>; 165 vfront-porch = <10>; 166 hsync-active = <0>; 167 vsync-active = <0>; 168 de-active = <1>; 169 pixelclk-active = <0>; 170 }; 171 172 timing-etq570 { 173 clock-frequency = <6596040>; 174 hactive = <320>; 175 vactive = <240>; 176 hback-porch = <38>; 177 hsync-len = <30>; 178 hfront-porch = <30>; 179 vback-porch = <16>; 180 vsync-len = <3>; 181 vfront-porch = <4>; 182 hsync-active = <0>; 183 vsync-active = <0>; 184 de-active = <1>; 185 pixelclk-active = <0>; 186 }; 187 188 timing-comtft { /* same as ET0700 but with inverted pixel clock */ 189 clock-frequency = <33264000>; 190 hactive = <800>; 191 vactive = <480>; 192 hback-porch = <88>; 193 hsync-len = <128>; 194 hfront-porch = <40>; 195 vback-porch = <33>; 196 vsync-len = <2>; 197 vfront-porch = <10>; 198 hsync-active = <0>; 199 vsync-active = <0>; 200 de-active = <1>; 201 pixelclk-active = <1>; 202 }; 203 }; 204 }; 205}; 206 207&ipu1_di0_disp0 { 208 remote-endpoint = <&lcd_in>; 209}; 210