blob: 6091a12fb7077d4582c4a7a63842b9efd57f34d2 [file] [log] [blame]
Hannes Schmelzereaba7df2019-02-06 13:25:59 +01001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright (C) 2019 B&R Industrial Automation GmbH
4 * http://www.br-automation.com
5 *
6 */
7/dts-v1/;
8
9#include "am33xx.dtsi"
10
11/ {
12 model = "BRXRE1 Panel";
13 compatible = "ti,am33xx";
14
15 fset: factory-settings {
16 bl-version = " ";
17 order-no = " ";
18 cpu-order-no = " ";
19 hw-revision = " ";
20 serial-no = <0>;
21 device-id = <0xE681>;
22 parent-id = <0xE681>;
23 hw-variant = <0x3>;
24 hw-platform = <0x0>;
25 fram-offset = <0x1000>;
26 fram-size = <0x3000>;
27 cache-disable = <0x0>;
28 cpu-clock = <0x0>;
29 };
30 chosen {
31 #address-cells = <1>;
32 #size-cells = <1>;
33
34 bootargs = "console=ttyO0,115200 earlyprintk";
35 stdout-path = &uart0;
36
37 framebuffer: framebuffer@8fbe0000 {
38 display = <&lcdscreen0>;
39 compatible = "simple-framebuffer";
40 status = "okay";
41 reg = <0x8fbef000 (1024 * 600 * 4)>;
42 width = <1024>;
43 height = <600>;
44 stride = <(1024 * 4)>;
45 format = "a8r8g8b8";
46 clocks = <&dpll_disp_m2_ck>, <&dpll_per_m2_ck>;
47 };
48 };
49
50 aliases {
51 fset = &fset;
52 mmc = &mmc2;
53 spi0 = &spi0;
54 spi1 = &spi1;
55 touch0 = &burtouch0;
56 screen0 = &lcdscreen0;
57 };
58
59 memory {
60 device_type = "memory";
61 reg = <0x80000000 0x10000000>; /* 256 MB */
62 };
63
64 panel {
65 compatible = "ti,tilcdc,panel";
66 status = "okay";
67 };
68
69 vmmcsd_fixed: fixedregulator@0 {
70 compatible = "regulator-fixed";
71 regulator-name = "vmmcsd_fixed";
72 regulator-min-microvolt = <3300000>;
73 regulator-max-microvolt = <3300000>;
74 };
75
76 lcdscreen0: lcdscreen@0 {
77 status = "okay";
78 compatible = "ti,tilcdc,panel";
79
80 backlight = <&tps_bl>;
81
Dario Binacchi72e0a0e2020-02-22 14:05:46 +010082 u-boot,dm-pre-reloc;
83
Hannes Schmelzereaba7df2019-02-06 13:25:59 +010084 panel-info {
85 ac-bias = <255>;
86 ac-bias-intrpt = <0>;
87 dma-burst-sz = <16>;
88 bpp = <32>;
89 fdd = <0x80>;
90 sync-edge = <0>;
91 sync-ctrl = <1>;
92 raster-order = <0>;
93 fifo-th = <0>;
94 };
95
96 display-timings {
97 native-mode = <&timing0>;
98 timing0: lcd {
99 clock-frequency = <9142857>;
100 hactive = <480>;
101 vactive = <272>;
102 hfront-porch = <8>;
103 hback-porch = <43>;
104 hsync-len = <2>;
105 vfront-porch = <4>;
106 vback-porch = <2>;
107 vsync-len = <10>;
108 hsync-active = <1>;
109 vsync-active = <1>;
110 pupdelay = <10>;
111 pondelay = <10>;
112 };
113 };
114 };
115};
116
117&uart0 { /* console uart */
118 u-boot,dm-spl;
119 status = "okay";
120};
121
122&uart2 {
123 status = "okay";
124};
125
126&uart3 {
127 status = "okay";
128};
129
130&uart4 {
131 status = "okay";
132};
133
134&i2c0 {
135 u-boot,dm-spl;
136 status = "okay";
137 clock-frequency = <100000>;
138
139 tps: tps@24 { /* PMIC controller */
140 u-boot,dm-spl;
141 reg = <0x24>;
142 compatible = "ti,tps65217";
143
144 tps_bl: backlight {
145 compatible = "ti,tps65217-bl";
146 isel = <1>; /* 1 - ISET1, 2 ISET2 */
147 fdim = <1000>; /* TPS65217_BL_FDIM_1kHZ */
148 default-brightness = <50>;
149 };
150 };
151 resetc: rstpsc@75 { /* reset controller */
152 compatible = "bur,rstpsc";
153 reg = <0x75>;
154
155 cooling-min-state = <0>;
156 cooling-max-state = <1>; /* reset gets fired */
157 #cooling-cells = <2>; /* min followed by max */
158 };
159 rtc0: rv3029c2@56 {
160 status = "okay";
161 #thermal-sensor-cells = <0>;
162 compatible = "rv3029c2";
163 reg = <0x56>;
164 };
165};
166
167&spi0 {
168 status = "okay";
169};
170
171&spi1 {
172 status = "okay";
173};
174
175&edma {
176 status = "okay";
177};
178
179&cppi41dma {
180 status = "okay";
181};
182
183&usb {
184 status = "okay";
185};
186
187&usb_ctrl_mod {
188 status = "okay";
189};
190
191&usb0_phy {
192 status = "okay";
193};
194
195&usb1_phy {
196 status = "okay";
197};
198
199&usb0 {
200 status = "okay";
201 dr_mode = "host";
202};
203
204&usb1 {
205 status = "okay";
206 dr_mode = "host";
207};
208
209&davinci_mdio {
210 status = "okay";
Grygorii Strashko3b3e8a32019-08-31 10:30:34 +0300211
212 ethphy0: ethernet-phy@1 {
213 reg = <1>;
214 };
215
216 ethphy1: ethernet-phy@2 {
217 reg = <2>;
218 };
Hannes Schmelzereaba7df2019-02-06 13:25:59 +0100219};
220
221&mac {
222 status = "okay";
223};
224
225&cpsw_emac0 {
Hannes Schmelzer05767702019-12-13 08:12:45 +0100226 phy_id = <&davinci_mdio>, <1>;
Grygorii Strashko3b3e8a32019-08-31 10:30:34 +0300227 phy-handle = <&ethphy0>;
Hannes Schmelzereaba7df2019-02-06 13:25:59 +0100228 phy-mode = "mii";
229};
230
231&cpsw_emac1 {
Hannes Schmelzer05767702019-12-13 08:12:45 +0100232 phy_id = <&davinci_mdio>, <2>;
Grygorii Strashko3b3e8a32019-08-31 10:30:34 +0300233 phy-handle = <&ethphy1>;
Hannes Schmelzereaba7df2019-02-06 13:25:59 +0100234 phy-mode = "mii";
235};
236
237&mmc1 {
238 u-boot,dm-pre-reloc;
239 vmmc-supply = <&vmmcsd_fixed>;
240 bus-width = <0x4>;
241 ti,non-removable;
242 ti,needs-special-hs-handling;
243 ti,vcc-aux-disable-is-sleep;
244 status = "okay";
245};
246
247&mmc2 {
248 u-boot,dm-pre-reloc;
249 vmmc-supply = <&vmmcsd_fixed>;
250 bus-width = <0x8>;
251 ti,non-removable;
252 ti,needs-special-hs-handling;
253 ti,vcc-aux-disable-is-sleep;
254 status = "okay";
255};
256
257&lcdc {
258 status = "okay";
259 ti,no-reset-on-init;
260 ti,no-idle-on-init;
261};
262
263&elm {
264 status = "okay";
265};
266
267&sham {
268 status = "okay";
269};
270
271&aes {
272 status = "okay";
273};
274
275&gpio0 {
276 u-boot,dm-spl;
277 ti,no-reset-on-init;
278};
279
280&gpio1 {
281 u-boot,dm-spl;
282 ti,no-reset-on-init;
283};
284
285&gpio2 {
286 u-boot,dm-spl;
287 ti,no-reset-on-init;
288};
289
290&gpio3 {
291 u-boot,dm-spl;
292 ti,no-reset-on-init;
293};
294
295&timer1 { /* today unused */
296 status = "okay";
297 ti,no-reset-on-init;
298 ti,no-idle-on-init;
299};
300
301&timer2 { /* used for vxworks primary timer device */
302 status = "okay";
303 ti,no-reset-on-init;
304 ti,no-idle-on-init;
305};
306
307&timer3 { /* used sysdelay and hal tsc counter*/
308 status = "okay";
309 ti,no-reset-on-init;
310 ti,no-idle-on-init;
311};
312
313&timer4 { /* used for PWM beeper */
314 status = "okay";
315 ti,no-reset-on-init;
316 ti,no-idle-on-init;
317};
318
319&timer5 { /* used for PWM backlight */
320 status = "okay";
321 ti,no-reset-on-init;
322 ti,no-idle-on-init;
323};
324
325&timer6 { /* used for cpsw end device */
326 status = "okay";
327 ti,no-reset-on-init;
328 ti,no-idle-on-init;
329};
330
331&timer7 { /* used for cpsw end device */
332 status = "okay";
333 ti,no-reset-on-init;
334 ti,no-idle-on-init;
335};
336
337&wdt2 {
338 status = "okay";
339 ti,no-reset-on-init;
340 ti,no-idle-on-init;
341};
342
343&epwmss0 {
344 status = "okay";
345};
346
347&tscadc {
348 status = "okay";
349
350 tsc {
351 burtouch0: burtouch@0 {
352 status = "okay";
353 compatible = "bur,DdVxSfTouchXXX";
354 bur,hwtree = "IF7";
355 bur,KX0 = <0x0>;
356 bur,KX1 = <0x0>;
357 bur,KX2 = <0x0>;
358 bur,KY0 = <0x0>;
359 bur,KY1 = <0x0>;
360 bur,KY2 = <0x0>;
361 };
362 };
363};
364
365&dcan0 {
366 status = "okay";
367};
368
369&dcan1 {
370 status = "okay";
371};
372
373&sham {
374 status = "disabled";
375};
376
377&aes {
378 status = "disabled";
379};
380
381&rng {
382 status = "disabled";
383};