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