blob: a3c9b346721d4fa3422c703b7204ba70e6466f21 [file] [log] [blame]
Adam Ford8c282b72017-09-17 20:43:44 -05001/*
2 * Device Tree for DA850 EVM board
3 *
4 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation, version 2.
9 */
10/dts-v1/;
11#include "da850.dtsi"
12#include <dt-bindings/gpio/gpio.h>
13
14/ {
15 compatible = "ti,da850-evm", "ti,da850";
16 model = "DA850/AM1808/OMAP-L138 EVM";
17
Adam Fordc7d414a2018-08-17 08:56:15 -050018 chosen {
19 stdout-path = &serial2;
20 };
Adam Ford8c282b72017-09-17 20:43:44 -050021
Adam Fordc7d414a2018-08-17 08:56:15 -050022 aliases {
23 serial0 = &serial0;
24 serial1 = &serial1;
25 serial2 = &serial2;
26 ethernet0 = &eth0;
27 spi0 = &spi1;
Adam Ford8c282b72017-09-17 20:43:44 -050028 };
Adam Fordc7d414a2018-08-17 08:56:15 -050029
Adam Ford59b452a2018-12-03 08:29:44 -060030 backlight: backlight-pwm {
31 pinctrl-names = "default";
32 pinctrl-0 = <&ecap2_pins>;
33 power-supply = <&backlight_lcd>;
34 compatible = "pwm-backlight";
35 /*
36 * The PWM here corresponds to production hardware. The
37 * schematic needs to be 1015171 (15 March 2010), Rev A
38 * or newer.
39 */
40 pwms = <&ecap2 0 50000 0>;
41 brightness-levels = <0 10 20 30 40 50 60 70 80 90 99>;
42 default-brightness-level = <7>;
43 };
44
45 panel {
46 compatible = "ti,tilcdc,panel";
47 pinctrl-names = "default";
48 pinctrl-0 = <&lcd_pins>;
49 /*
50 * The vpif and the LCD are mutually exclusive.
51 * To enable VPIF, change the status below to 'disabled' then
52 * then change the status of the vpif below to 'okay'
53 */
54 status = "okay";
55 enable-gpios = <&gpio 40 GPIO_ACTIVE_HIGH>; /* lcd_panel_pwr */
56
57 panel-info {
58 ac-bias = <255>;
59 ac-bias-intrpt = <0>;
60 dma-burst-sz = <16>;
61 bpp = <16>;
62 fdd = <0x80>;
63 sync-edge = <0>;
64 sync-ctrl = <1>;
65 raster-order = <0>;
66 fifo-th = <0>;
67 };
68
69 display-timings {
70 native-mode = <&timing0>;
71 timing0: 480x272 {
72 clock-frequency = <9000000>;
73 hactive = <480>;
74 vactive = <272>;
75 hfront-porch = <3>;
76 hback-porch = <2>;
77 hsync-len = <42>;
78 vback-porch = <3>;
79 vfront-porch = <4>;
80 vsync-len = <11>;
81 hsync-active = <0>;
82 vsync-active = <0>;
83 de-active = <1>;
84 pixelclk-active = <1>;
85 };
86 };
87 };
88
Adam Ford8c282b72017-09-17 20:43:44 -050089 vbat: fixedregulator0 {
90 compatible = "regulator-fixed";
91 regulator-name = "vbat";
92 regulator-min-microvolt = <5000000>;
93 regulator-max-microvolt = <5000000>;
94 regulator-boot-on;
95 };
96
Adam Ford59b452a2018-12-03 08:29:44 -060097 backlight_lcd: backlight-regulator {
98 compatible = "regulator-fixed";
99 regulator-name = "lcd_backlight_pwr";
100 regulator-min-microvolt = <3300000>;
101 regulator-max-microvolt = <3300000>;
102 gpio = <&gpio 47 GPIO_ACTIVE_HIGH>; /* lcd_backlight_pwr */
103 enable-active-high;
104 };
105
Adam Ford8c282b72017-09-17 20:43:44 -0500106 sound {
107 compatible = "simple-audio-card";
108 simple-audio-card,name = "DA850/OMAP-L138 EVM";
109 simple-audio-card,widgets =
110 "Line", "Line In",
111 "Line", "Line Out";
112 simple-audio-card,routing =
113 "LINE1L", "Line In",
114 "LINE1R", "Line In",
115 "Line Out", "LLOUT",
116 "Line Out", "RLOUT";
117 simple-audio-card,format = "dsp_b";
118 simple-audio-card,bitclock-master = <&link0_codec>;
119 simple-audio-card,frame-master = <&link0_codec>;
120 simple-audio-card,bitclock-inversion;
121
122 simple-audio-card,cpu {
123 sound-dai = <&mcasp0>;
124 system-clock-frequency = <24576000>;
125 };
126
127 link0_codec: simple-audio-card,codec {
128 sound-dai = <&tlv320aic3106>;
129 system-clock-frequency = <24576000>;
130 };
131 };
132};
133
Adam Ford59b452a2018-12-03 08:29:44 -0600134&ecap2 {
135 status = "okay";
136};
137
138&ref_clk {
139 clock-frequency = <24000000>;
140};
141
Adam Fordc7d414a2018-08-17 08:56:15 -0500142&pmx_core {
143 status = "okay";
144
145 mcasp0_pins: pinmux_mcasp0_pins {
146 pinctrl-single,bits = <
147 /*
148 * AHCLKX, ACLKX, AFSX, AHCLKR, ACLKR,
149 * AFSR, AMUTE
150 */
151 0x00 0x11111111 0xffffffff
152 /* AXR11, AXR12 */
153 0x04 0x00011000 0x000ff000
154 >;
155 };
156 nand_pins: nand_pins {
157 pinctrl-single,bits = <
158 /* EMA_WAIT[0], EMA_OE, EMA_WE, EMA_CS[4], EMA_CS[3] */
159 0x1c 0x10110110 0xf0ff0ff0
160 /*
161 * EMA_D[0], EMA_D[1], EMA_D[2],
162 * EMA_D[3], EMA_D[4], EMA_D[5],
163 * EMA_D[6], EMA_D[7]
164 */
165 0x24 0x11111111 0xffffffff
166 /* EMA_A[1], EMA_A[2] */
167 0x30 0x01100000 0x0ff00000
168 >;
169 };
170};
171
Adam Ford59b452a2018-12-03 08:29:44 -0600172&sata {
173 status = "okay";
174};
175
Adam Fordc7d414a2018-08-17 08:56:15 -0500176&serial0 {
177 status = "okay";
178};
179
180&serial1 {
181 status = "okay";
182};
183
184&serial2 {
185 status = "okay";
186};
187
188&rtc0 {
189 status = "okay";
190};
191
Adam Ford59b452a2018-12-03 08:29:44 -0600192&lcdc {
193 status = "okay";
194};
195
Adam Fordc7d414a2018-08-17 08:56:15 -0500196&i2c0 {
197 status = "okay";
198 clock-frequency = <100000>;
199 pinctrl-names = "default";
200 pinctrl-0 = <&i2c0_pins>;
201
202 tps: tps@48 {
203 reg = <0x48>;
204 };
205 tlv320aic3106: tlv320aic3106@18 {
206 #sound-dai-cells = <0>;
207 compatible = "ti,tlv320aic3106";
208 reg = <0x18>;
209 status = "okay";
210
211 /* Regulators */
212 IOVDD-supply = <&vdcdc2_reg>;
213 /* Derived from VBAT: Baseboard 3.3V / 1.8V */
214 AVDD-supply = <&vbat>;
215 DRVDD-supply = <&vbat>;
216 DVDD-supply = <&vbat>;
217 };
218 tca6416: gpio@20 {
219 compatible = "ti,tca6416";
220 reg = <0x20>;
221 gpio-controller;
222 #gpio-cells = <2>;
223 };
Adam Ford59b452a2018-12-03 08:29:44 -0600224 tca6416_bb: gpio@21 {
225 compatible = "ti,tca6416";
226 reg = <0x21>;
227 gpio-controller;
228 #gpio-cells = <2>;
229 };
Adam Fordc7d414a2018-08-17 08:56:15 -0500230};
231
232&wdt {
233 status = "okay";
234};
235
236&mmc0 {
237 max-frequency = <50000000>;
238 bus-width = <4>;
239 status = "okay";
240 pinctrl-names = "default";
241 pinctrl-0 = <&mmc0_pins>;
242 cd-gpios = <&gpio 64 GPIO_ACTIVE_LOW>;
243 wp-gpios = <&gpio 65 GPIO_ACTIVE_HIGH>;
244};
245
246&spi1 {
247 status = "okay";
248 pinctrl-names = "default";
249 pinctrl-0 = <&spi1_pins &spi1_cs0_pin>;
250 flash: m25p80@0 {
251 #address-cells = <1>;
252 #size-cells = <1>;
253 compatible = "m25p64";
254 spi-max-frequency = <30000000>;
255 m25p,fast-read;
256 reg = <0>;
257 partition@0 {
258 label = "U-Boot-SPL";
259 reg = <0x00000000 0x00010000>;
260 read-only;
261 };
262 partition@1 {
263 label = "U-Boot";
264 reg = <0x00010000 0x00080000>;
265 read-only;
266 };
267 partition@2 {
268 label = "U-Boot-Env";
269 reg = <0x00090000 0x00010000>;
270 read-only;
271 };
272 partition@3 {
273 label = "Kernel";
274 reg = <0x000a0000 0x00280000>;
275 };
276 partition@4 {
277 label = "Filesystem";
278 reg = <0x00320000 0x00400000>;
279 };
280 partition@5 {
281 label = "MAC-Address";
282 reg = <0x007f0000 0x00010000>;
283 read-only;
284 };
285 };
286};
287
288&mdio {
289 status = "okay";
290 pinctrl-names = "default";
291 pinctrl-0 = <&mdio_pins>;
292 bus_freq = <2200000>;
293};
294
295&eth0 {
296 status = "okay";
297 pinctrl-names = "default";
298 pinctrl-0 = <&mii_pins>;
299};
300
301&gpio {
302 status = "okay";
303};
304
Adam Ford8c282b72017-09-17 20:43:44 -0500305/include/ "tps6507x.dtsi"
306
307&tps {
308 vdcdc1_2-supply = <&vbat>;
309 vdcdc3-supply = <&vbat>;
310 vldo1_2-supply = <&vbat>;
311
312 regulators {
313 vdcdc1_reg: regulator@0 {
314 regulator-name = "VDCDC1_3.3V";
315 regulator-min-microvolt = <3150000>;
316 regulator-max-microvolt = <3450000>;
317 regulator-always-on;
318 regulator-boot-on;
319 };
320
321 vdcdc2_reg: regulator@1 {
322 regulator-name = "VDCDC2_3.3V";
323 regulator-min-microvolt = <1710000>;
324 regulator-max-microvolt = <3450000>;
325 regulator-always-on;
326 regulator-boot-on;
327 ti,defdcdc_default = <1>;
328 };
329
330 vdcdc3_reg: regulator@2 {
331 regulator-name = "VDCDC3_1.2V";
332 regulator-min-microvolt = <950000>;
333 regulator-max-microvolt = <1350000>;
334 regulator-always-on;
335 regulator-boot-on;
336 ti,defdcdc_default = <1>;
337 };
338
339 ldo1_reg: regulator@3 {
340 regulator-name = "LDO1_1.8V";
341 regulator-min-microvolt = <1710000>;
342 regulator-max-microvolt = <1890000>;
343 regulator-always-on;
344 regulator-boot-on;
345 };
346
347 ldo2_reg: regulator@4 {
348 regulator-name = "LDO2_1.2V";
349 regulator-min-microvolt = <1140000>;
350 regulator-max-microvolt = <1320000>;
351 regulator-always-on;
352 regulator-boot-on;
353 };
354 };
355};
356
357&mcasp0 {
358 #sound-dai-cells = <0>;
359 status = "okay";
360 pinctrl-names = "default";
361 pinctrl-0 = <&mcasp0_pins>;
362
363 op-mode = <0>; /* MCASP_IIS_MODE */
364 tdm-slots = <2>;
365 /* 4 serializer */
366 serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
367 0 0 0 0
368 0 0 0 0
369 0 0 0 1
370 2 0 0 0
371 >;
372 tx-num-evt = <32>;
373 rx-num-evt = <32>;
374};
375
376&edma0 {
377 ti,edma-reserved-slot-ranges = <32 50>;
378};
379
380&edma1 {
381 ti,edma-reserved-slot-ranges = <32 90>;
382};
383
384&aemif {
385 pinctrl-names = "default";
386 pinctrl-0 = <&nand_pins>;
387 status = "ok";
388 cs3 {
389 #address-cells = <2>;
390 #size-cells = <1>;
391 clock-ranges;
392 ranges;
393
394 ti,cs-chipselect = <3>;
395
396 nand@2000000,0 {
397 compatible = "ti,davinci-nand";
398 #address-cells = <1>;
399 #size-cells = <1>;
400 reg = <0 0x02000000 0x02000000
401 1 0x00000000 0x00008000>;
402
403 ti,davinci-chipselect = <1>;
404 ti,davinci-mask-ale = <0>;
405 ti,davinci-mask-cle = <0>;
406 ti,davinci-mask-chipsel = <0>;
407 ti,davinci-ecc-mode = "hw";
408 ti,davinci-ecc-bits = <4>;
409 ti,davinci-nand-use-bbt;
410 };
411 };
412};
413
Adam Fordc7d414a2018-08-17 08:56:15 -0500414&usb_phy {
415 status = "okay";
416};
417
418&usb0 {
419 status = "okay";
420};
421
422&usb1 {
423 status = "okay";
424};
425
Adam Ford8c282b72017-09-17 20:43:44 -0500426&vpif {
427 pinctrl-names = "default";
428 pinctrl-0 = <&vpif_capture_pins>, <&vpif_display_pins>;
Adam Ford59b452a2018-12-03 08:29:44 -0600429 /*
430 * The vpif and the LCD are mutually exclusive.
431 * To enable VPIF, disable the ti,tilcdc,panel then
432 * change the status below to 'okay'
433 */
434 status = "disabled";
Adam Ford8c282b72017-09-17 20:43:44 -0500435};