Loading...
1/*
2 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 2 as
6 * published by the Free Software Foundation.
7 */
8/dts-v1/;
9
10#include "dra74x.dtsi"
11#include "dra7-evm-common.dtsi"
12#include "dra74x-mmc-iodelay.dtsi"
13
14/ {
15 model = "TI DRA742";
16 compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7";
17
18 memory@0 {
19 device_type = "memory";
20 reg = <0x0 0x80000000 0x0 0x60000000>; /* 1536 MB */
21 };
22
23 evm_1v8_sw: fixedregulator-evm_1v8 {
24 compatible = "regulator-fixed";
25 regulator-name = "evm_1v8";
26 vin-supply = <&smps9_reg>;
27 regulator-min-microvolt = <1800000>;
28 regulator-max-microvolt = <1800000>;
29 };
30
31 evm_3v3_sd: fixedregulator-sd {
32 compatible = "regulator-fixed";
33 regulator-name = "evm_3v3_sd";
34 regulator-min-microvolt = <3300000>;
35 regulator-max-microvolt = <3300000>;
36 enable-active-high;
37 gpio = <&pcf_gpio_21 5 GPIO_ACTIVE_HIGH>;
38 };
39
40 evm_3v3_sw: fixedregulator-evm_3v3_sw {
41 compatible = "regulator-fixed";
42 regulator-name = "evm_3v3_sw";
43 vin-supply = <&sysen1>;
44 regulator-min-microvolt = <3300000>;
45 regulator-max-microvolt = <3300000>;
46 };
47
48 aic_dvdd: fixedregulator-aic_dvdd {
49 /* TPS77018DBVT */
50 compatible = "regulator-fixed";
51 regulator-name = "aic_dvdd";
52 vin-supply = <&evm_3v3_sw>;
53 regulator-min-microvolt = <1800000>;
54 regulator-max-microvolt = <1800000>;
55 };
56
57 extcon_usb2: extcon_usb2 {
58 compatible = "linux,extcon-usb-gpio";
59 id-gpio = <&pcf_gpio_21 2 GPIO_ACTIVE_HIGH>;
60 };
61
62 vtt_fixed: fixedregulator-vtt {
63 compatible = "regulator-fixed";
64 regulator-name = "vtt_fixed";
65 regulator-min-microvolt = <1350000>;
66 regulator-max-microvolt = <1350000>;
67 regulator-always-on;
68 regulator-boot-on;
69 enable-active-high;
70 vin-supply = <&sysen2>;
71 gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
72 };
73
74};
75
76&dra7_pmx_core {
77 dcan1_pins_default: dcan1_pins_default {
78 pinctrl-single,pins = <
79 DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
80 DRA7XX_CORE_IOPAD(0x3818, PULL_UP | MUX_MODE1) /* wakeup0.dcan1_rx */
81 >;
82 };
83
84 dcan1_pins_sleep: dcan1_pins_sleep {
85 pinctrl-single,pins = <
86 DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */
87 DRA7XX_CORE_IOPAD(0x3818, MUX_MODE15 | PULL_UP) /* wakeup0.off */
88 >;
89 };
90};
91
92&i2c1 {
93 status = "okay";
94 clock-frequency = <400000>;
95
96 tps659038: tps659038@58 {
97 compatible = "ti,tps659038";
98 reg = <0x58>;
99 ti,palmas-override-powerhold;
100 ti,system-power-controller;
101
102 tps659038_pmic {
103 compatible = "ti,tps659038-pmic";
104
105 regulators {
106 smps123_reg: smps123 {
107 /* VDD_MPU */
108 regulator-name = "smps123";
109 regulator-min-microvolt = < 850000>;
110 regulator-max-microvolt = <1250000>;
111 regulator-always-on;
112 regulator-boot-on;
113 };
114
115 smps45_reg: smps45 {
116 /* VDD_DSPEVE */
117 regulator-name = "smps45";
118 regulator-min-microvolt = < 850000>;
119 regulator-max-microvolt = <1250000>;
120 regulator-always-on;
121 regulator-boot-on;
122 };
123
124 smps6_reg: smps6 {
125 /* VDD_GPU - over VDD_SMPS6 */
126 regulator-name = "smps6";
127 regulator-min-microvolt = <850000>;
128 regulator-max-microvolt = <1250000>;
129 regulator-always-on;
130 regulator-boot-on;
131 };
132
133 smps7_reg: smps7 {
134 /* CORE_VDD */
135 regulator-name = "smps7";
136 regulator-min-microvolt = <850000>;
137 regulator-max-microvolt = <1150000>;
138 regulator-always-on;
139 regulator-boot-on;
140 };
141
142 smps8_reg: smps8 {
143 /* VDD_IVAHD */
144 regulator-name = "smps8";
145 regulator-min-microvolt = < 850000>;
146 regulator-max-microvolt = <1250000>;
147 regulator-always-on;
148 regulator-boot-on;
149 };
150
151 smps9_reg: smps9 {
152 /* VDDS1V8 */
153 regulator-name = "smps9";
154 regulator-min-microvolt = <1800000>;
155 regulator-max-microvolt = <1800000>;
156 regulator-always-on;
157 regulator-boot-on;
158 };
159
160 ldo1_reg: ldo1 {
161 /* LDO1_OUT --> SDIO */
162 regulator-name = "ldo1";
163 regulator-min-microvolt = <1800000>;
164 regulator-max-microvolt = <3300000>;
165 regulator-always-on;
166 regulator-boot-on;
167 };
168
169 ldo2_reg: ldo2 {
170 /* VDD_RTCIO */
171 /* LDO2 -> VDDSHV5, LDO2 also goes to CAN_PHY_3V3 */
172 regulator-name = "ldo2";
173 regulator-min-microvolt = <3300000>;
174 regulator-max-microvolt = <3300000>;
175 regulator-always-on;
176 regulator-boot-on;
177 };
178
179 ldo3_reg: ldo3 {
180 /* VDDA_1V8_PHY */
181 regulator-name = "ldo3";
182 regulator-min-microvolt = <1800000>;
183 regulator-max-microvolt = <1800000>;
184 regulator-always-on;
185 regulator-boot-on;
186 };
187
188 ldo9_reg: ldo9 {
189 /* VDD_RTC */
190 regulator-name = "ldo9";
191 regulator-min-microvolt = <1050000>;
192 regulator-max-microvolt = <1050000>;
193 regulator-always-on;
194 regulator-boot-on;
195 regulator-allow-bypass;
196 };
197
198 ldoln_reg: ldoln {
199 /* VDDA_1V8_PLL */
200 regulator-name = "ldoln";
201 regulator-min-microvolt = <1800000>;
202 regulator-max-microvolt = <1800000>;
203 regulator-always-on;
204 regulator-boot-on;
205 };
206
207 ldousb_reg: ldousb {
208 /* VDDA_3V_USB: VDDA_USBHS33 */
209 regulator-name = "ldousb";
210 regulator-min-microvolt = <3300000>;
211 regulator-max-microvolt = <3300000>;
212 regulator-boot-on;
213 };
214
215 /* REGEN1 is unused */
216
217 regen2: regen2 {
218 /* Needed for PMIC internal resources */
219 regulator-name = "regen2";
220 regulator-boot-on;
221 regulator-always-on;
222 };
223
224 /* REGEN3 is unused */
225
226 sysen1: sysen1 {
227 /* PMIC_REGEN_3V3 */
228 regulator-name = "sysen1";
229 regulator-boot-on;
230 regulator-always-on;
231 };
232
233 sysen2: sysen2 {
234 /* PMIC_REGEN_DDR */
235 regulator-name = "sysen2";
236 regulator-boot-on;
237 regulator-always-on;
238 };
239 };
240 };
241 };
242
243 pcf_lcd: gpio@20 {
244 compatible = "ti,pcf8575", "nxp,pcf8575";
245 reg = <0x20>;
246 gpio-controller;
247 #gpio-cells = <2>;
248 interrupt-parent = <&gpio6>;
249 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
250 interrupt-controller;
251 #interrupt-cells = <2>;
252 };
253
254 pcf_gpio_21: gpio@21 {
255 compatible = "ti,pcf8575", "nxp,pcf8575";
256 reg = <0x21>;
257 lines-initial-states = <0x1408>;
258 gpio-controller;
259 #gpio-cells = <2>;
260 interrupt-parent = <&gpio6>;
261 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
262 interrupt-controller;
263 #interrupt-cells = <2>;
264 };
265
266 tlv320aic3106: tlv320aic3106@19 {
267 #sound-dai-cells = <0>;
268 compatible = "ti,tlv320aic3106";
269 reg = <0x19>;
270 adc-settle-ms = <40>;
271 ai3x-micbias-vg = <1>; /* 2.0V */
272 status = "okay";
273
274 /* Regulators */
275 AVDD-supply = <&evm_3v3_sw>;
276 IOVDD-supply = <&evm_3v3_sw>;
277 DRVDD-supply = <&evm_3v3_sw>;
278 DVDD-supply = <&aic_dvdd>;
279 };
280};
281
282&i2c2 {
283 status = "okay";
284 clock-frequency = <400000>;
285
286 pcf_hdmi: gpio@26 {
287 compatible = "ti,pcf8575", "nxp,pcf8575";
288 reg = <0x26>;
289 gpio-controller;
290 #gpio-cells = <2>;
291 p1 {
292 /* vin6_sel_s0: high: VIN6, low: audio */
293 gpio-hog;
294 gpios = <1 GPIO_ACTIVE_HIGH>;
295 output-low;
296 line-name = "vin6_sel_s0";
297 };
298 };
299};
300
301&mmc1 {
302 status = "okay";
303 vmmc-supply = <&evm_3v3_sd>;
304 vqmmc-supply = <&ldo1_reg>;
305 bus-width = <4>;
306 /*
307 * SDCD signal is not being used here - using the fact that GPIO mode
308 * is always hardwired.
309 */
310 cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
311 pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50-rev11", "sdr104-rev11", "ddr50", "sdr104";
312 pinctrl-0 = <&mmc1_pins_default>;
313 pinctrl-1 = <&mmc1_pins_hs>;
314 pinctrl-2 = <&mmc1_pins_sdr12>;
315 pinctrl-3 = <&mmc1_pins_sdr25>;
316 pinctrl-4 = <&mmc1_pins_sdr50>;
317 pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev11_conf>;
318 pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev11_conf>;
319 pinctrl-7 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev20_conf>;
320 pinctrl-8 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>;
321};
322
323&mmc2 {
324 status = "okay";
325 vmmc-supply = <&evm_1v8_sw>;
326 vqmmc-supply = <&evm_1v8_sw>;
327 bus-width = <8>;
328 pinctrl-names = "default", "hs", "ddr_1_8v-rev11", "ddr_1_8v", "hs200_1_8v-rev11", "hs200_1_8v";
329 pinctrl-0 = <&mmc2_pins_default>;
330 pinctrl-1 = <&mmc2_pins_hs>;
331 pinctrl-2 = <&mmc2_pins_ddr_1_8v_rev11 &mmc2_iodelay_ddr_1_8v_rev11_conf>;
332 pinctrl-3 = <&mmc2_pins_ddr_rev20>;
333 pinctrl-4 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev11_conf>;
334 pinctrl-5 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev20_conf>;
335};
336
337&cpu0 {
338 vdd-supply = <&smps123_reg>;
339};
340
341&omap_dwc3_2 {
342 extcon = <&extcon_usb2>;
343};
344
345&elm {
346 status = "okay";
347};
348
349&gpmc {
350 /*
351 * For the existing IOdelay configuration via U-Boot we don't
352 * support NAND on dra7-evm. Keep it disabled. Enabling it
353 * requires a different configuration by U-Boot.
354 */
355 status = "disabled";
356 ranges = <0 0 0x08000000 0x01000000>; /* minimum GPMC partition = 16MB */
357 nand@0,0 {
358 compatible = "ti,omap2-nand";
359 reg = <0 0 4>; /* device IO registers */
360 interrupt-parent = <&gpmc>;
361 interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
362 <1 IRQ_TYPE_NONE>; /* termcount */
363 rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 pin */
364 ti,nand-xfer-type = "prefetch-dma";
365 ti,nand-ecc-opt = "bch8";
366 ti,elm-id = <&elm>;
367 nand-bus-width = <16>;
368 gpmc,device-width = <2>;
369 gpmc,sync-clk-ps = <0>;
370 gpmc,cs-on-ns = <0>;
371 gpmc,cs-rd-off-ns = <80>;
372 gpmc,cs-wr-off-ns = <80>;
373 gpmc,adv-on-ns = <0>;
374 gpmc,adv-rd-off-ns = <60>;
375 gpmc,adv-wr-off-ns = <60>;
376 gpmc,we-on-ns = <10>;
377 gpmc,we-off-ns = <50>;
378 gpmc,oe-on-ns = <4>;
379 gpmc,oe-off-ns = <40>;
380 gpmc,access-ns = <40>;
381 gpmc,wr-access-ns = <80>;
382 gpmc,rd-cycle-ns = <80>;
383 gpmc,wr-cycle-ns = <80>;
384 gpmc,bus-turnaround-ns = <0>;
385 gpmc,cycle2cycle-delay-ns = <0>;
386 gpmc,clk-activation-ns = <0>;
387 gpmc,wr-data-mux-bus-ns = <0>;
388 /* MTD partition table */
389 /* All SPL-* partitions are sized to minimal length
390 * which can be independently programmable. For
391 * NAND flash this is equal to size of erase-block */
392 #address-cells = <1>;
393 #size-cells = <1>;
394 partition@0 {
395 label = "NAND.SPL";
396 reg = <0x00000000 0x000020000>;
397 };
398 partition@1 {
399 label = "NAND.SPL.backup1";
400 reg = <0x00020000 0x00020000>;
401 };
402 partition@2 {
403 label = "NAND.SPL.backup2";
404 reg = <0x00040000 0x00020000>;
405 };
406 partition@3 {
407 label = "NAND.SPL.backup3";
408 reg = <0x00060000 0x00020000>;
409 };
410 partition@4 {
411 label = "NAND.u-boot-spl-os";
412 reg = <0x00080000 0x00040000>;
413 };
414 partition@5 {
415 label = "NAND.u-boot";
416 reg = <0x000c0000 0x00100000>;
417 };
418 partition@6 {
419 label = "NAND.u-boot-env";
420 reg = <0x001c0000 0x00020000>;
421 };
422 partition@7 {
423 label = "NAND.u-boot-env.backup1";
424 reg = <0x001e0000 0x00020000>;
425 };
426 partition@8 {
427 label = "NAND.kernel";
428 reg = <0x00200000 0x00800000>;
429 };
430 partition@9 {
431 label = "NAND.file-system";
432 reg = <0x00a00000 0x0f600000>;
433 };
434 };
435};
436
437&usb2_phy1 {
438 phy-supply = <&ldousb_reg>;
439};
440
441&usb2_phy2 {
442 phy-supply = <&ldousb_reg>;
443};
444
445&gpio7 {
446 ti,no-reset-on-init;
447 ti,no-idle-on-init;
448};
449
450&mac {
451 status = "okay";
452 dual_emac;
453};
454
455&cpsw_emac0 {
456 phy_id = <&davinci_mdio>, <2>;
457 phy-mode = "rgmii";
458 dual_emac_res_vlan = <1>;
459};
460
461&cpsw_emac1 {
462 phy_id = <&davinci_mdio>, <3>;
463 phy-mode = "rgmii";
464 dual_emac_res_vlan = <2>;
465};
466
467&dcan1 {
468 status = "ok";
469 pinctrl-names = "default", "sleep", "active";
470 pinctrl-0 = <&dcan1_pins_sleep>;
471 pinctrl-1 = <&dcan1_pins_sleep>;
472 pinctrl-2 = <&dcan1_pins_default>;
473};
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
4 */
5/dts-v1/;
6
7#include "dra74x.dtsi"
8#include "dra7-evm-common.dtsi"
9#include "dra74x-mmc-iodelay.dtsi"
10
11/ {
12 model = "TI DRA742";
13 compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7";
14
15 memory@0 {
16 device_type = "memory";
17 reg = <0x0 0x80000000 0x0 0x60000000>; /* 1536 MB */
18 };
19
20 evm_12v0: fixedregulator-evm_12v0 {
21 /* main supply */
22 compatible = "regulator-fixed";
23 regulator-name = "evm_12v0";
24 regulator-min-microvolt = <12000000>;
25 regulator-max-microvolt = <12000000>;
26 regulator-always-on;
27 regulator-boot-on;
28 };
29
30 evm_1v8_sw: fixedregulator-evm_1v8 {
31 compatible = "regulator-fixed";
32 regulator-name = "evm_1v8";
33 vin-supply = <&smps9_reg>;
34 regulator-min-microvolt = <1800000>;
35 regulator-max-microvolt = <1800000>;
36 };
37
38 reserved-memory {
39 #address-cells = <2>;
40 #size-cells = <2>;
41 ranges;
42
43 ipu2_memory_region: ipu2-memory@95800000 {
44 compatible = "shared-dma-pool";
45 reg = <0x0 0x95800000 0x0 0x3800000>;
46 reusable;
47 status = "okay";
48 };
49
50 dsp1_memory_region: dsp1-memory@99000000 {
51 compatible = "shared-dma-pool";
52 reg = <0x0 0x99000000 0x0 0x4000000>;
53 reusable;
54 status = "okay";
55 };
56
57 ipu1_memory_region: ipu1-memory@9d000000 {
58 compatible = "shared-dma-pool";
59 reg = <0x0 0x9d000000 0x0 0x2000000>;
60 reusable;
61 status = "okay";
62 };
63
64 dsp2_memory_region: dsp2-memory@9f000000 {
65 compatible = "shared-dma-pool";
66 reg = <0x0 0x9f000000 0x0 0x800000>;
67 reusable;
68 status = "okay";
69 };
70 };
71
72 evm_3v3_sd: fixedregulator-sd {
73 compatible = "regulator-fixed";
74 regulator-name = "evm_3v3_sd";
75 regulator-min-microvolt = <3300000>;
76 regulator-max-microvolt = <3300000>;
77 enable-active-high;
78 gpio = <&pcf_gpio_21 5 GPIO_ACTIVE_HIGH>;
79 };
80
81 evm_3v3_sw: fixedregulator-evm_3v3_sw {
82 compatible = "regulator-fixed";
83 regulator-name = "evm_3v3_sw";
84 vin-supply = <&sysen1>;
85 regulator-min-microvolt = <3300000>;
86 regulator-max-microvolt = <3300000>;
87 };
88
89 aic_dvdd: fixedregulator-aic_dvdd {
90 /* TPS77018DBVT */
91 compatible = "regulator-fixed";
92 regulator-name = "aic_dvdd";
93 vin-supply = <&evm_3v3_sw>;
94 regulator-min-microvolt = <1800000>;
95 regulator-max-microvolt = <1800000>;
96 };
97
98 vsys_3v3: fixedregulator-vsys3v3 {
99 /* Output of Cntlr A of TPS43351-Q1 on dra7-evm */
100 compatible = "regulator-fixed";
101 regulator-name = "vsys_3v3";
102 regulator-min-microvolt = <3300000>;
103 regulator-max-microvolt = <3300000>;
104 vin-supply = <&evm_12v0>;
105 regulator-always-on;
106 regulator-boot-on;
107 };
108
109 evm_5v0: fixedregulator-evm_5v0 {
110 /* Output of Cntlr B of TPS43351-Q1 on dra7-evm */
111 compatible = "regulator-fixed";
112 regulator-name = "evm_5v0";
113 regulator-min-microvolt = <5000000>;
114 regulator-max-microvolt = <5000000>;
115 vin-supply = <&evm_12v0>;
116 regulator-always-on;
117 regulator-boot-on;
118 };
119
120 evm_3v6: fixedregulator-evm_3v6 {
121 compatible = "regulator-fixed";
122 regulator-name = "evm_3v6";
123 regulator-min-microvolt = <3600000>;
124 regulator-max-microvolt = <3600000>;
125 vin-supply = <&evm_5v0>;
126 regulator-always-on;
127 regulator-boot-on;
128 };
129
130 vmmcwl_fixed: fixedregulator-mmcwl {
131 compatible = "regulator-fixed";
132 regulator-name = "vmmcwl_fixed";
133 regulator-min-microvolt = <1800000>;
134 regulator-max-microvolt = <1800000>;
135 gpio = <&gpio5 8 0>;
136 startup-delay-us = <70000>;
137 enable-active-high;
138 };
139
140 vtt_fixed: fixedregulator-vtt {
141 compatible = "regulator-fixed";
142 regulator-name = "vtt_fixed";
143 regulator-min-microvolt = <1350000>;
144 regulator-max-microvolt = <1350000>;
145 regulator-always-on;
146 regulator-boot-on;
147 enable-active-high;
148 vin-supply = <&sysen2>;
149 gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
150 };
151
152};
153
154&dra7_pmx_core {
155 dcan1_pins_default: dcan1_pins_default {
156 pinctrl-single,pins = <
157 DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
158 DRA7XX_CORE_IOPAD(0x3818, PULL_UP | MUX_MODE1) /* wakeup0.dcan1_rx */
159 >;
160 };
161
162 dcan1_pins_sleep: dcan1_pins_sleep {
163 pinctrl-single,pins = <
164 DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */
165 DRA7XX_CORE_IOPAD(0x3818, MUX_MODE15 | PULL_UP) /* wakeup0.off */
166 >;
167 };
168};
169
170&i2c1 {
171 status = "okay";
172 clock-frequency = <400000>;
173
174 tps659038: tps659038@58 {
175 compatible = "ti,tps659038";
176 reg = <0x58>;
177 ti,palmas-override-powerhold;
178 ti,system-power-controller;
179
180 tps659038_pmic {
181 compatible = "ti,tps659038-pmic";
182
183 regulators {
184 smps123_reg: smps123 {
185 /* VDD_MPU */
186 regulator-name = "smps123";
187 regulator-min-microvolt = < 850000>;
188 regulator-max-microvolt = <1250000>;
189 regulator-always-on;
190 regulator-boot-on;
191 };
192
193 smps45_reg: smps45 {
194 /* VDD_DSPEVE */
195 regulator-name = "smps45";
196 regulator-min-microvolt = < 850000>;
197 regulator-max-microvolt = <1250000>;
198 regulator-always-on;
199 regulator-boot-on;
200 };
201
202 smps6_reg: smps6 {
203 /* VDD_GPU - over VDD_SMPS6 */
204 regulator-name = "smps6";
205 regulator-min-microvolt = <850000>;
206 regulator-max-microvolt = <1250000>;
207 regulator-always-on;
208 regulator-boot-on;
209 };
210
211 smps7_reg: smps7 {
212 /* CORE_VDD */
213 regulator-name = "smps7";
214 regulator-min-microvolt = <850000>;
215 regulator-max-microvolt = <1150000>;
216 regulator-always-on;
217 regulator-boot-on;
218 };
219
220 smps8_reg: smps8 {
221 /* VDD_IVAHD */
222 regulator-name = "smps8";
223 regulator-min-microvolt = < 850000>;
224 regulator-max-microvolt = <1250000>;
225 regulator-always-on;
226 regulator-boot-on;
227 };
228
229 smps9_reg: smps9 {
230 /* VDDS1V8 */
231 regulator-name = "smps9";
232 regulator-min-microvolt = <1800000>;
233 regulator-max-microvolt = <1800000>;
234 regulator-always-on;
235 regulator-boot-on;
236 };
237
238 ldo1_reg: ldo1 {
239 /* LDO1_OUT --> SDIO */
240 regulator-name = "ldo1";
241 regulator-min-microvolt = <1800000>;
242 regulator-max-microvolt = <3300000>;
243 regulator-always-on;
244 regulator-boot-on;
245 };
246
247 ldo2_reg: ldo2 {
248 /* VDD_RTCIO */
249 /* LDO2 -> VDDSHV5, LDO2 also goes to CAN_PHY_3V3 */
250 regulator-name = "ldo2";
251 regulator-min-microvolt = <3300000>;
252 regulator-max-microvolt = <3300000>;
253 regulator-always-on;
254 regulator-boot-on;
255 };
256
257 ldo3_reg: ldo3 {
258 /* VDDA_1V8_PHY */
259 regulator-name = "ldo3";
260 regulator-min-microvolt = <1800000>;
261 regulator-max-microvolt = <1800000>;
262 regulator-always-on;
263 regulator-boot-on;
264 };
265
266 ldo9_reg: ldo9 {
267 /* VDD_RTC */
268 regulator-name = "ldo9";
269 regulator-min-microvolt = <1050000>;
270 regulator-max-microvolt = <1050000>;
271 regulator-always-on;
272 regulator-boot-on;
273 regulator-allow-bypass;
274 };
275
276 ldoln_reg: ldoln {
277 /* VDDA_1V8_PLL */
278 regulator-name = "ldoln";
279 regulator-min-microvolt = <1800000>;
280 regulator-max-microvolt = <1800000>;
281 regulator-always-on;
282 regulator-boot-on;
283 };
284
285 ldousb_reg: ldousb {
286 /* VDDA_3V_USB: VDDA_USBHS33 */
287 regulator-name = "ldousb";
288 regulator-min-microvolt = <3300000>;
289 regulator-max-microvolt = <3300000>;
290 regulator-boot-on;
291 };
292
293 /* REGEN1 is unused */
294
295 regen2: regen2 {
296 /* Needed for PMIC internal resources */
297 regulator-name = "regen2";
298 regulator-boot-on;
299 regulator-always-on;
300 };
301
302 /* REGEN3 is unused */
303
304 sysen1: sysen1 {
305 /* PMIC_REGEN_3V3 */
306 regulator-name = "sysen1";
307 regulator-boot-on;
308 regulator-always-on;
309 };
310
311 sysen2: sysen2 {
312 /* PMIC_REGEN_DDR */
313 regulator-name = "sysen2";
314 regulator-boot-on;
315 regulator-always-on;
316 };
317 };
318 };
319 };
320
321 pcf_lcd: gpio@20 {
322 compatible = "nxp,pcf8575";
323 reg = <0x20>;
324 gpio-controller;
325 #gpio-cells = <2>;
326 interrupt-parent = <&gpio6>;
327 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
328 interrupt-controller;
329 #interrupt-cells = <2>;
330 };
331
332 pcf_gpio_21: gpio@21 {
333 compatible = "nxp,pcf8575";
334 reg = <0x21>;
335 lines-initial-states = <0x1408>;
336 gpio-controller;
337 #gpio-cells = <2>;
338 interrupt-parent = <&gpio6>;
339 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
340 interrupt-controller;
341 #interrupt-cells = <2>;
342 };
343
344 tlv320aic3106: tlv320aic3106@19 {
345 #sound-dai-cells = <0>;
346 compatible = "ti,tlv320aic3106";
347 reg = <0x19>;
348 adc-settle-ms = <40>;
349 ai3x-micbias-vg = <1>; /* 2.0V */
350 status = "okay";
351
352 /* Regulators */
353 AVDD-supply = <&evm_3v3_sw>;
354 IOVDD-supply = <&evm_3v3_sw>;
355 DRVDD-supply = <&evm_3v3_sw>;
356 DVDD-supply = <&aic_dvdd>;
357 };
358};
359
360&i2c2 {
361 status = "okay";
362 clock-frequency = <400000>;
363
364 pcf_hdmi: gpio@26 {
365 compatible = "nxp,pcf8575";
366 reg = <0x26>;
367 gpio-controller;
368 #gpio-cells = <2>;
369 hdmi-audio-hog {
370 /* vin6_sel_s0: high: VIN6, low: audio */
371 gpio-hog;
372 gpios = <1 GPIO_ACTIVE_HIGH>;
373 output-low;
374 line-name = "vin6_sel_s0";
375 };
376 };
377};
378
379&mmc1 {
380 status = "okay";
381 vmmc-supply = <&evm_3v3_sd>;
382 vqmmc-supply = <&ldo1_reg>;
383 bus-width = <4>;
384 /*
385 * SDCD signal is not being used here - using the fact that GPIO mode
386 * is always hardwired.
387 */
388 cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
389 pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50-rev11", "sdr104-rev11", "ddr50", "sdr104";
390 pinctrl-0 = <&mmc1_pins_default>;
391 pinctrl-1 = <&mmc1_pins_hs>;
392 pinctrl-2 = <&mmc1_pins_sdr12>;
393 pinctrl-3 = <&mmc1_pins_sdr25>;
394 pinctrl-4 = <&mmc1_pins_sdr50>;
395 pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev11_conf>;
396 pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev11_conf>;
397 pinctrl-7 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev20_conf>;
398 pinctrl-8 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>;
399};
400
401&mmc2 {
402 status = "okay";
403 vmmc-supply = <&evm_1v8_sw>;
404 vqmmc-supply = <&evm_1v8_sw>;
405 bus-width = <8>;
406 non-removable;
407 pinctrl-names = "default", "hs", "ddr_1_8v-rev11", "ddr_1_8v", "hs200_1_8v-rev11", "hs200_1_8v";
408 pinctrl-0 = <&mmc2_pins_default>;
409 pinctrl-1 = <&mmc2_pins_hs>;
410 pinctrl-2 = <&mmc2_pins_ddr_1_8v_rev11 &mmc2_iodelay_ddr_1_8v_rev11_conf>;
411 pinctrl-3 = <&mmc2_pins_ddr_rev20>;
412 pinctrl-4 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev11_conf>;
413 pinctrl-5 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev20_conf>;
414};
415
416&mmc4 {
417 status = "okay";
418 vmmc-supply = <&evm_3v6>;
419 vqmmc-supply = <&vmmcwl_fixed>;
420 pinctrl-names = "default-rev11", "default", "hs-rev11", "hs", "sdr12-rev11", "sdr12", "sdr25-rev11", "sdr25";
421 pinctrl-0 = <&mmc4_pins_default &mmc4_iodelay_ds_rev11_conf>;
422 pinctrl-1 = <&mmc4_pins_default &mmc4_iodelay_ds_rev20_conf>;
423 pinctrl-2 = <&mmc4_pins_hs &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
424 pinctrl-3 = <&mmc4_pins_hs &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
425 pinctrl-4 = <&mmc4_pins_sdr12 &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
426 pinctrl-5 = <&mmc4_pins_sdr12 &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
427 pinctrl-6 = <&mmc4_pins_sdr25 &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
428 pinctrl-7 = <&mmc4_pins_sdr25 &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
429};
430
431&cpu0 {
432 vdd-supply = <&smps123_reg>;
433};
434
435&elm {
436 status = "okay";
437};
438
439&gpmc {
440 /*
441 * For the existing IOdelay configuration via U-Boot we don't
442 * support NAND on dra7-evm. Keep it disabled. Enabling it
443 * requires a different configuration by U-Boot.
444 */
445 status = "disabled";
446 ranges = <0 0 0x08000000 0x01000000>; /* minimum GPMC partition = 16MB */
447 nand@0,0 {
448 compatible = "ti,omap2-nand";
449 reg = <0 0 4>; /* device IO registers */
450 interrupt-parent = <&gpmc>;
451 interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
452 <1 IRQ_TYPE_NONE>; /* termcount */
453 rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 pin */
454 ti,nand-xfer-type = "prefetch-dma";
455 ti,nand-ecc-opt = "bch8";
456 ti,elm-id = <&elm>;
457 nand-bus-width = <16>;
458 gpmc,device-width = <2>;
459 gpmc,sync-clk-ps = <0>;
460 gpmc,cs-on-ns = <0>;
461 gpmc,cs-rd-off-ns = <80>;
462 gpmc,cs-wr-off-ns = <80>;
463 gpmc,adv-on-ns = <0>;
464 gpmc,adv-rd-off-ns = <60>;
465 gpmc,adv-wr-off-ns = <60>;
466 gpmc,we-on-ns = <10>;
467 gpmc,we-off-ns = <50>;
468 gpmc,oe-on-ns = <4>;
469 gpmc,oe-off-ns = <40>;
470 gpmc,access-ns = <40>;
471 gpmc,wr-access-ns = <80>;
472 gpmc,rd-cycle-ns = <80>;
473 gpmc,wr-cycle-ns = <80>;
474 gpmc,bus-turnaround-ns = <0>;
475 gpmc,cycle2cycle-delay-ns = <0>;
476 gpmc,clk-activation-ns = <0>;
477 gpmc,wr-data-mux-bus-ns = <0>;
478 /* MTD partition table */
479 /* All SPL-* partitions are sized to minimal length
480 * which can be independently programmable. For
481 * NAND flash this is equal to size of erase-block */
482 #address-cells = <1>;
483 #size-cells = <1>;
484 partition@0 {
485 label = "NAND.SPL";
486 reg = <0x00000000 0x00020000>;
487 };
488 partition@1 {
489 label = "NAND.SPL.backup1";
490 reg = <0x00020000 0x00020000>;
491 };
492 partition@2 {
493 label = "NAND.SPL.backup2";
494 reg = <0x00040000 0x00020000>;
495 };
496 partition@3 {
497 label = "NAND.SPL.backup3";
498 reg = <0x00060000 0x00020000>;
499 };
500 partition@4 {
501 label = "NAND.u-boot-spl-os";
502 reg = <0x00080000 0x00040000>;
503 };
504 partition@5 {
505 label = "NAND.u-boot";
506 reg = <0x000c0000 0x00100000>;
507 };
508 partition@6 {
509 label = "NAND.u-boot-env";
510 reg = <0x001c0000 0x00020000>;
511 };
512 partition@7 {
513 label = "NAND.u-boot-env.backup1";
514 reg = <0x001e0000 0x00020000>;
515 };
516 partition@8 {
517 label = "NAND.kernel";
518 reg = <0x00200000 0x00800000>;
519 };
520 partition@9 {
521 label = "NAND.file-system";
522 reg = <0x00a00000 0x0f600000>;
523 };
524 };
525};
526
527&usb2_phy1 {
528 phy-supply = <&ldousb_reg>;
529};
530
531&usb2_phy2 {
532 phy-supply = <&ldousb_reg>;
533};
534
535&gpio7_target {
536 ti,no-reset-on-init;
537 ti,no-idle-on-init;
538};
539
540&mac_sw {
541 status = "okay";
542};
543
544&cpsw_port1 {
545 phy-handle = <ðphy0>;
546 phy-mode = "rgmii";
547 ti,dual-emac-pvid = <1>;
548};
549
550&cpsw_port2 {
551 phy-handle = <ðphy1>;
552 phy-mode = "rgmii";
553 ti,dual-emac-pvid = <2>;
554};
555
556&davinci_mdio_sw {
557 ethphy0: ethernet-phy@2 {
558 reg = <2>;
559 };
560
561 ethphy1: ethernet-phy@3 {
562 reg = <3>;
563 };
564};
565
566&dcan1 {
567 status = "okay";
568 pinctrl-names = "default", "sleep", "active";
569 pinctrl-0 = <&dcan1_pins_sleep>;
570 pinctrl-1 = <&dcan1_pins_sleep>;
571 pinctrl-2 = <&dcan1_pins_default>;
572};
573
574&ipu2 {
575 status = "okay";
576 memory-region = <&ipu2_memory_region>;
577};
578
579&ipu1 {
580 status = "okay";
581 memory-region = <&ipu1_memory_region>;
582};
583
584&dsp1 {
585 status = "okay";
586 memory-region = <&dsp1_memory_region>;
587};
588
589&dsp2 {
590 status = "okay";
591 memory-region = <&dsp2_memory_region>;
592};