Merge branch 'master' of git://git.denx.de/u-boot
[oweals/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                 u-boot,dm-pre-reloc;
83
84                 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";
211
212         ethphy0: ethernet-phy@1 {
213                 reg = <1>;
214         };
215
216         ethphy1: ethernet-phy@2 {
217                 reg = <2>;
218         };
219 };
220
221 &mac {
222         status = "okay";
223 };
224
225 &cpsw_emac0 {
226         phy_id = <&davinci_mdio>, <1>;
227         phy-handle = <&ethphy0>;
228         phy-mode = "mii";
229 };
230
231 &cpsw_emac1 {
232         phy_id = <&davinci_mdio>, <2>;
233         phy-handle = <&ethphy1>;
234         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 };