Linux 5.6.13
[linux/fpc-iii.git] / arch / arm / boot / dts / da850-evm.dts
blobf2e7609e5346afc6145379b9adcb2d4080f35157
1 // SPDX-License-Identifier: GPL-2.0-only
2 /*
3  * Device Tree for DA850 EVM board
4  *
5  * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
6  */
7 /dts-v1/;
8 #include "da850.dtsi"
9 #include <dt-bindings/gpio/gpio.h>
11 / {
12         compatible = "ti,da850-evm", "ti,da850";
13         model = "DA850/AM1808/OMAP-L138 EVM";
15         chosen {
16                 stdout-path = &serial2;
17         };
19         aliases {
20                 serial0 = &serial0;
21                 serial1 = &serial1;
22                 serial2 = &serial2;
23                 ethernet0 = &eth0;
24                 spi0 = &spi1;
25         };
27         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         };
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 */
54                 panel-info {
55                         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>;
64                 };
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         };
86         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         };
94         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         };
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         };
116         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         };
125         sound {
126                 compatible = "simple-audio-card";
127                 simple-audio-card,name = "DA850-OMAPL138 EVM";
128                 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;
141                 simple-audio-card,cpu {
142                         sound-dai = <&mcasp0>;
143                         system-clock-frequency = <24576000>;
144                 };
146                 link0_codec: simple-audio-card,codec {
147                         sound-dai = <&tlv320aic3106>;
148                         system-clock-frequency = <24576000>;
149                 };
150         };
153 &ecap2 {
154         status = "okay";
157 &ref_clk {
158         clock-frequency = <24000000>;
161 &pmx_core {
162         status = "okay";
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         };
191 &cpu {
192         cpu-supply = <&vdcdc3_reg>;
196  * The standard da850-evm kits and SOM's are 375MHz so enable this operating
197  * point by default. Higher frequencies must be enabled for custom boards with
198  * other variants of the SoC.
199  */
200 &opp_375 {
201         status = "okay";
204 &sata {
205         status = "okay";
208 &serial0 {
209         status = "okay";
212 &serial1 {
213         status = "okay";
216 &serial2 {
217         status = "okay";
220 &rtc0 {
221         status = "okay";
224 &lcdc {
225         status = "okay";
228 &i2c0 {
229         status = "okay";
230         clock-frequency = <100000>;
231         pinctrl-names = "default";
232         pinctrl-0 = <&i2c0_pins>;
234         tps: tps@48 {
235                 reg = <0x48>;
236         };
237         tlv320aic3106: tlv320aic3106@18 {
238                 #sound-dai-cells = <0>;
239                 compatible = "ti,tlv320aic3106";
240                 reg = <0x18>;
241                 status = "okay";
243                 /* Regulators */
244                 IOVDD-supply = <&vdcdc2_reg>;
245                 AVDD-supply = <&baseboard_3v3>;
246                 DRVDD-supply = <&baseboard_3v3>;
247                 DVDD-supply = <&baseboard_1v8>;
248         };
249         tca6416: gpio@20 {
250                 compatible = "ti,tca6416";
251                 reg = <0x20>;
252                 gpio-controller;
253                 #gpio-cells = <2>;
254         };
255         tca6416_bb: gpio@21 {
256                 compatible = "ti,tca6416";
257                 reg = <0x21>;
258                 gpio-controller;
259                 #gpio-cells = <2>;
260         };
263 &wdt {
264         status = "okay";
267 &mmc0 {
268         max-frequency = <50000000>;
269         bus-width = <4>;
270         status = "okay";
271         pinctrl-names = "default";
272         pinctrl-0 = <&mmc0_pins>;
273         cd-gpios = <&gpio 64 GPIO_ACTIVE_LOW>;
274         wp-gpios = <&gpio 65 GPIO_ACTIVE_HIGH>;
277 &spi1 {
278         status = "okay";
279         pinctrl-names = "default";
280         pinctrl-0 = <&spi1_pins &spi1_cs0_pin>;
281         flash: m25p80@0 {
282                 #address-cells = <1>;
283                 #size-cells = <1>;
284                 compatible = "jedec,spi-nor";
285                 spi-max-frequency = <30000000>;
286                 m25p,fast-read;
287                 reg = <0>;
288                 partition@0 {
289                         label = "U-Boot-SPL";
290                         reg = <0x00000000 0x00010000>;
291                         read-only;
292                 };
293                 partition@1 {
294                         label = "U-Boot";
295                         reg = <0x00010000 0x00080000>;
296                         read-only;
297                 };
298                 partition@2 {
299                         label = "U-Boot-Env";
300                         reg = <0x00090000 0x00010000>;
301                         read-only;
302                 };
303                 partition@3 {
304                         label = "Kernel";
305                         reg = <0x000a0000 0x00280000>;
306                 };
307                 partition@4 {
308                         label = "Filesystem";
309                         reg = <0x00320000 0x00400000>;
310                 };
311                 partition@5 {
312                         label = "MAC-Address";
313                         reg = <0x007f0000 0x00010000>;
314                         read-only;
315                 };
316         };
319 &mdio {
320         status = "okay";
321         pinctrl-names = "default";
322         pinctrl-0 = <&mdio_pins>;
323         bus_freq = <2200000>;
326 &eth0 {
327         status = "okay";
328         pinctrl-names = "default";
329         pinctrl-0 = <&mii_pins>;
332 &gpio {
333         status = "okay";
336 /include/ "tps6507x.dtsi"
338 &tps {
339         vdcdc1_2-supply = <&vbat>;
340         vdcdc3-supply = <&vbat>;
341         vldo1_2-supply = <&vbat>;
343         regulators {
344                 vdcdc1_reg: regulator@0 {
345                         regulator-name = "VDCDC1_3.3V";
346                         regulator-min-microvolt = <3150000>;
347                         regulator-max-microvolt = <3450000>;
348                         regulator-always-on;
349                         regulator-boot-on;
350                 };
352                 vdcdc2_reg: regulator@1 {
353                         regulator-name = "VDCDC2_3.3V";
354                         regulator-min-microvolt = <1710000>;
355                         regulator-max-microvolt = <3450000>;
356                         regulator-always-on;
357                         regulator-boot-on;
358                         ti,defdcdc_default = <1>;
359                 };
361                 vdcdc3_reg: regulator@2 {
362                         regulator-name = "VDCDC3_1.2V";
363                         regulator-min-microvolt = <950000>;
364                         regulator-max-microvolt = <1350000>;
365                         regulator-always-on;
366                         regulator-boot-on;
367                         ti,defdcdc_default = <1>;
368                 };
370                 ldo1_reg: regulator@3 {
371                         regulator-name = "LDO1_1.8V";
372                         regulator-min-microvolt = <1710000>;
373                         regulator-max-microvolt = <1890000>;
374                         regulator-always-on;
375                         regulator-boot-on;
376                 };
378                 ldo2_reg: regulator@4 {
379                         regulator-name = "LDO2_1.2V";
380                         regulator-min-microvolt = <1140000>;
381                         regulator-max-microvolt = <1320000>;
382                         regulator-always-on;
383                         regulator-boot-on;
384                 };
385         };
388 &mcasp0 {
389         #sound-dai-cells = <0>;
390         status = "okay";
391         pinctrl-names = "default";
392         pinctrl-0 = <&mcasp0_pins>;
394         op-mode = <0>;          /* MCASP_IIS_MODE */
395         tdm-slots = <2>;
396         /* 4 serializer */
397         serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
398                 0 0 0 0
399                 0 0 0 0
400                 0 0 0 1
401                 2 0 0 0
402         >;
403         tx-num-evt = <32>;
404         rx-num-evt = <32>;
407 &edma0 {
408         ti,edma-reserved-slot-ranges = <32 50>;
411 &edma1 {
412         ti,edma-reserved-slot-ranges = <32 90>;
415 &aemif {
416         pinctrl-names = "default";
417         pinctrl-0 = <&nand_pins>;
418         status = "ok";
419         cs3 {
420                 #address-cells = <2>;
421                 #size-cells = <1>;
422                 clock-ranges;
423                 ranges;
425                 ti,cs-chipselect = <3>;
427                 nand@2000000,0 {
428                         compatible = "ti,davinci-nand";
429                         #address-cells = <1>;
430                         #size-cells = <1>;
431                         reg = <0 0x02000000 0x02000000
432                                1 0x00000000 0x00008000>;
434                         ti,davinci-chipselect = <1>;
435                         ti,davinci-mask-ale = <0>;
436                         ti,davinci-mask-cle = <0>;
437                         ti,davinci-mask-chipsel = <0>;
438                         ti,davinci-ecc-mode = "hw";
439                         ti,davinci-ecc-bits = <4>;
440                         ti,davinci-nand-use-bbt;
441                 };
442         };
445 &usb_phy {
446         status = "okay";
449 &usb0 {
450         status = "okay";
453 &usb1 {
454         status = "okay";
457 &vpif {
458         pinctrl-names = "default";
459         pinctrl-0 = <&vpif_capture_pins>, <&vpif_display_pins>;
460         /*
461          * The vpif and the LCD are mutually exclusive.
462          * To enable VPIF, disable the ti,tilcdc,panel then
463          * change the status below to 'okay'
464          */
465         status = "disabled";