blob: 4f1c52bff834f3c6babb467ff99811ae60d980a0 [file] [log] [blame]
Hannes Schmelzer6443d5d2019-07-17 14:29:53 +02001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright 2018 B&R Industrial Automation GmbH
4 * Copyright 2012 Freescale Semiconductor, Inc.
5 * Copyright 2011 Linaro Ltd.
6 *
7 * The code contained herein is licensed under the GNU General Public
8 * License. You may obtain a copy of the GNU General Public License
9 * Version 2 or later at the following locations:
10 *
11 * http://www.opensource.org/licenses/gpl-license.html
12 * http://www.gnu.org/copyleft/gpl.html
13 */
14
15/dts-v1/;
16
17#include "imx6dl.dtsi"
18#include "imx6qdl-u-boot.dtsi"
19#include <dt-bindings/pwm/pwm.h>
20#include <include/dt-bindings/gpio/gpio.h>
21
22/ {
23 model = "PPT50";
24 compatible = "fsl,imx6dl";
25
26 config {
27 u-boot,spl-payload-offset = <0x100000>;
28 };
29
30 fset: factory-settings {
31 bl-version = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
32 order-no = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
33 hw-revision = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
34 serial-no = <0>;
35 device-id = <0x0>;
36 parent-id = <0x0>;
37 hw-variant = <0x0>;
38 };
39
40 aliases {
41 ds1timing0 = &timing0;
42 ds1timing1 = &timing1;
43 ds1bkl = &backlight;
44 fset = &fset;
45 mxcfb0 = &mxcfb0;
46 touch0 = &touch0;
47 touch1 = &touch1;
48 touch2 = &touch2;
49 display_regulator = &display_regulator;
50 ldb = &ldb;
51 mmc0 = &usdhc4;
52 };
53
54 chosen {
55 stdout-path = "serial0:115200n8";
56 };
57
58 mxcfb0: fb@0 {
59 compatible = "fsl,mxc_sdc_fb";
60 disp_dev = "ldb";
61 interface_pix_fmt = "RGB24";
62 default_bpp = <32>;
63 int_clk = <0>;
64 late_init = <0>;
65 rotation = <0>;
66 status = "okay";
67 };
68
69 lcd@0 {
70 compatible = "fsl,lcd";
71 vlcd-supply = <&display_regulator>;
72 ipu_id = <0>;
73 disp_id = <0>;
74 default_ifmt = "RGB24";
75 status = "disabled";
76
77 display-timings {
78 native-mode = <&timing1>;
79 timing1: lcd {
80 };
81 };
82 };
83
84 backlight: backlight {
85 compatible = "pwm-backlight";
86 pwms = <&pwm4 0 5000000>;
87 brightness-levels = <0 1 2 3 4 5 6 7
88 8 9 10 11 12 13 14 15
89 16 17 18 19 20 21 22 23
90 24 25 26 27 28 29 30 31
91 32 33 34 35 36 37 38 39
92 40 41 42 43 44 45 46 47
93 48 49 50 51 52 53 54 55
94 56 57 58 59 60 61 62 63
95 64 65 66 67 68 69 70 71
96 72 73 74 75 76 77 78 79
97 80 81 82 83 84 85 86 87
98 88 89 90 91 92 93 94 95
99 96 97 98 99 100>;
100 default-brightness-level = <0>;
101 status = "okay";
102
103 enable-gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
104 };
105
106 beeper: pwm-beep {
107 compatible = "pwm-beeper";
108 pwms = <&pwm3 0 0 0>;
109 };
110
111 vbus1_regulator: regulator@1 {
112 u-boot,dm-preloc;
113 compatible = "regulator-fixed";
114 regulator-name = "vbus1_regulator";
115 regulator-min-microvolt = <5000000>;
116 regulator-max-microvolt = <5000000>;
117 gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
118 enable-active-high;
119 };
120 vbus2_regulator: regulator@2 {
121 compatible = "regulator-fixed";
122 regulator-name = "vbus2_regulator";
123 regulator-min-microvolt = <5000000>;
124 regulator-max-microvolt = <5000000>;
125 gpio = <&gpio3 31 GPIO_ACTIVE_HIGH>;
126 enable-active-high;
127 };
128 usbhub_regulator: gpio-regulator@3 {
129 compatible = "regulator-gpio";
130 regulator-name = "ushbub_regulator";
131 enable-gpio = <&gpio1 16 GPIO_ACTIVE_HIGH>;
132 enable-active-high;
133 enable-at-boot;
134 states = <0 0 1 1>;
135 };
136 display_regulator: regulator@4 {
137 compatible = "regulator-fixed";
138 regulator-name = "display_regulator";
139 regulator-min-microvolt = <3300000>;
140 regulator-max-microvolt = <3300000>;
141 gpio = <&gpio5 18 GPIO_ACTIVE_HIGH>;
142 enable-active-high;
143 startup-delay-us = <1000>;
144 };
145};
146
147&fec {
148 phy-mode = "rgmii-id";
149 status = "okay";
150
151 fixed-link {
152 speed = <1000>;
153 full-duplex;
154 };
155};
156
157&uart1 {
158 u-boot,dm-spl;
159 u-boot,dm-preloc;
160 status = "okay";
161};
162
163&pwm3 {
164 status = "okay";
165};
166
167&pwm4 {
168 status = "okay";
169};
170
171&ldb {
172 status = "disabled";
173 vldb-supply = <&display_regulator>;
174
175 lvds-channel@0 {
176 fsl,data-mapping = "spwg";
177 fsl,data-width = <24>;
178 primary;
179 status = "okay";
180 crtc = "ipu1-di0";
181
182 display-timings {
183 native-mode = <&timing0>;
184 timing0: lcd {
185 };
186 };
187 };
188};
189
190&usdhc4 {
191 non-removable;
192 bus-width = <8>;
193 status = "okay";
194};
195
196&usbotg {
197 vbus-supply = <&vbus1_regulator>;
198 dr_mode = "host";
199 status = "okay";
200};
201
202&usbh1 {
203 vbus-supply = <&vbus2_regulator>;
204 dr_mode = "host";
205 status = "okay";
206};
207
208&i2c3 {
209 clock-frequency = <400000>;
210 status = "okay";
211
212 touch0: egalax_i2c@2a {
213 compatible = "eeti,egalax_i2c";
214 reg = <0x2a>;
215 interrupt-parent = <&gpio4>;
216 interrupts = <9 2>;
217 int-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
218 };
219
220 touch1: gt911@5d {
221 compatible = "goodix,gt911";
222 reg = <0x5d>;
223 interrupt-parent = <&gpio4>;
224 interrupts = <9 2>;
225 irq-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
226 reset-gpios = <&gpio4 11 GPIO_ACTIVE_HIGH>;
227 status = "disabled";
228 };
229
230 touch2: i2c-hid-dev@2c {
231 compatible = "hid-over-i2c";
232 reg = <0x2c>;
233 hid-descr-addr = <0x0001>;
234 interrupt-parent = <&gpio4>;
235 interrupts = <9 2>;
236 status = "disabled";
237 };
238};
239
240&gpio1 {
241 u-boot,dm-spl;
242 status = "okay";
243};
244
245&gpio2 {
246 u-boot,dm-spl;
247 status = "okay";
248};
249
250&gpio3 {
251 u-boot,dm-spl;
252 status = "okay";
253};
254
255&gpio4 {
256 u-boot,dm-spl;
257 status = "okay";
258};
259
260&usdhc4 {
261 status = "okay";
262};
263
264&ecspi1 {
265 u-boot,dm-spl;
266 cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>, <&gpio3 19 GPIO_ACTIVE_LOW>;
267 status = "okay";
268 spi-max-frequency = <25000000>;
269
270 m25p32@1 {
271 u-boot,dm-spl;
272 #address-cells = <1>;
273 #size-cells = <1>;
274 compatible = "st,m25p", "jedec,spi-nor";
275 spi-max-frequency = <25000000>;
276 reg = <1>;
277 };
278};