1// 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};
279