ARM: dts: synquacer: Add device trees for DeveloperBox
[platform/kernel/u-boot.git] / arch / arm / dts / am335x-brxre1.dts
1 // 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
82                 panel-info {
83                         ac-bias         = <255>;
84                         ac-bias-intrpt  = <0>;
85                         dma-burst-sz    = <16>;
86                         bpp             = <32>;
87                         fdd             = <0x80>;
88                         sync-edge       = <0>;
89                         sync-ctrl       = <1>;
90                         raster-order    = <0>;
91                         fifo-th         = <0>;
92                 };
93
94                 display-timings {
95                         native-mode = <&timing0>;
96                         timing0: lcd {
97                                 clock-frequency = <9142857>;
98                                 hactive         = <480>;
99                                 vactive         = <272>;
100                                 hfront-porch    = <8>;
101                                 hback-porch     = <43>;
102                                 hsync-len       = <2>;
103                                 vfront-porch    = <4>;
104                                 vback-porch     = <2>;
105                                 vsync-len       = <10>;
106                                 hsync-active    = <1>;
107                                 vsync-active    = <1>;
108                                 pupdelay        = <10>;
109                                 pondelay        = <10>;
110                         };
111                 };
112         };
113 };
114
115 &uart0 {                /* console uart */
116         u-boot,dm-spl;
117         status = "okay";
118 };
119
120 &uart2 {
121         status = "okay";
122 };
123
124 &uart3 {
125         status = "okay";
126 };
127
128 &uart4 {
129         status = "okay";
130 };
131
132 &i2c0 {
133         u-boot,dm-spl;
134         status = "okay";
135         clock-frequency = <100000>;
136
137         tps: tps@24 {           /* PMIC controller */
138                 u-boot,dm-spl;
139                 reg = <0x24>;
140                 compatible = "ti,tps65217";
141
142                 tps_bl: backlight {
143                         compatible = "ti,tps65217-bl";
144                         isel = <1>;     /* 1 - ISET1, 2 ISET2 */
145                         fdim = <1000>;  /* TPS65217_BL_FDIM_1kHZ */
146                         default-brightness = <50>;
147                 };
148         };
149         resetc: rstpsc@75 { /* reset controller */
150                 compatible = "bur,rstpsc";
151                 reg = <0x75>;
152
153                 cooling-min-state = <0>;
154                 cooling-max-state = <1>;        /* reset gets fired */
155                 #cooling-cells = <2>;           /* min followed by max */
156         };
157         rtc0: rv3029c2@56 {
158                 status = "okay";
159                 #thermal-sensor-cells = <0>;
160                 compatible = "rv3029c2";
161                 reg = <0x56>;
162         };
163 };
164
165 &spi0 {
166         status = "okay";
167 };
168
169 &spi1 {
170         status = "okay";
171 };
172
173 &edma {
174         status = "okay";
175 };
176
177 &cppi41dma  {
178         status = "okay";
179 };
180
181 &usb {
182         status = "okay";
183 };
184
185 &usb_ctrl_mod {
186         status = "okay";
187 };
188
189 &usb0_phy {
190         status = "okay";
191 };
192
193 &usb1_phy {
194         status = "okay";
195 };
196
197 &usb0 {
198         status = "okay";
199         dr_mode = "host";
200 };
201
202 &usb1 {
203         status = "okay";
204         dr_mode = "host";
205 };
206
207 &davinci_mdio {
208         status = "okay";
209
210         ethphy0: ethernet-phy@1 {
211                 reg = <1>;
212         };
213
214         ethphy1: ethernet-phy@2 {
215                 reg = <2>;
216         };
217 };
218
219 &mac {
220         status = "okay";
221 };
222
223 &cpsw_emac0 {
224         phy_id = <&davinci_mdio>, <1>;
225         phy-handle = <&ethphy0>;
226         phy-mode = "mii";
227 };
228
229 &cpsw_emac1 {
230         phy_id = <&davinci_mdio>, <2>;
231         phy-handle = <&ethphy1>;
232         phy-mode = "mii";
233 };
234
235 &mmc1 {
236         u-boot,dm-pre-reloc;
237         vmmc-supply = <&vmmcsd_fixed>;
238         bus-width = <0x4>;
239         ti,non-removable;
240         ti,needs-special-hs-handling;
241         ti,vcc-aux-disable-is-sleep;
242         status = "okay";
243 };
244
245 &mmc2 {
246         u-boot,dm-pre-reloc;
247         vmmc-supply = <&vmmcsd_fixed>;
248         bus-width = <0x8>;
249         ti,non-removable;
250         ti,needs-special-hs-handling;
251         ti,vcc-aux-disable-is-sleep;
252         status = "okay";
253 };
254
255 &l4_per {
256
257         segment@300000 {
258
259                 target-module@e000 {
260                         u-boot,dm-pre-reloc;
261
262                         lcdc: lcdc@0 {
263                                 u-boot,dm-pre-reloc;
264                                 status = "okay";
265                                 ti,no-reset-on-init;
266                                 ti,no-idle-on-init;
267                         };
268                 };
269         };
270 };
271
272 &elm {
273         status = "okay";
274 };
275
276 &sham {
277         status = "okay";
278 };
279
280 &aes {
281         status = "okay";
282 };
283
284 &gpio0 {
285         u-boot,dm-spl;
286         ti,no-reset-on-init;
287 };
288
289 &gpio1 {
290         u-boot,dm-spl;
291         ti,no-reset-on-init;
292 };
293
294 &gpio2 {
295         u-boot,dm-spl;
296         ti,no-reset-on-init;
297 };
298
299 &gpio3 {
300         u-boot,dm-spl;
301         ti,no-reset-on-init;
302 };
303
304 &timer1 {               /* today unused */
305         status = "okay";
306         ti,no-reset-on-init;
307         ti,no-idle-on-init;
308 };
309
310 &timer2 {               /* used for vxworks primary timer device */
311         status = "okay";
312         ti,no-reset-on-init;
313         ti,no-idle-on-init;
314 };
315
316 &timer3 {               /* used sysdelay and hal tsc counter*/
317         status = "okay";
318         ti,no-reset-on-init;
319         ti,no-idle-on-init;
320 };
321
322 &timer4 {               /* used for PWM beeper */
323         status = "okay";
324         ti,no-reset-on-init;
325         ti,no-idle-on-init;
326 };
327
328 &timer5 {               /* used for PWM backlight */
329         status = "okay";
330         ti,no-reset-on-init;
331         ti,no-idle-on-init;
332 };
333
334 &timer6 {               /* used for cpsw end device */
335         status = "okay";
336         ti,no-reset-on-init;
337         ti,no-idle-on-init;
338 };
339
340 &timer7 {               /* used for cpsw end device */
341         status = "okay";
342         ti,no-reset-on-init;
343         ti,no-idle-on-init;
344 };
345
346 &wdt2 {
347         status = "okay";
348         ti,no-reset-on-init;
349         ti,no-idle-on-init;
350 };
351
352 &epwmss0 {
353         status = "okay";
354 };
355
356 &tscadc {
357         status = "okay";
358
359         tsc {
360                 burtouch0: burtouch@0 {
361                         status = "okay";
362                         compatible = "bur,DdVxSfTouchXXX";
363                         bur,hwtree = "IF7";
364                         bur,KX0 = <0x0>;
365                         bur,KX1 = <0x0>;
366                         bur,KX2 = <0x0>;
367                         bur,KY0 = <0x0>;
368                         bur,KY1 = <0x0>;
369                         bur,KY2 = <0x0>;
370                 };
371         };
372 };
373
374 &dcan0 {
375         status = "okay";
376 };
377
378 &dcan1 {
379         status = "okay";
380 };
381
382 &sham {
383         status = "disabled";
384 };
385
386 &aes {
387         status = "disabled";
388 };
389
390 &rng {
391         status = "disabled";
392 };