1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
8 #include "dra7-evm-common.dtsi"
9 #include "dra74x-mmc-iodelay.dtsi"
13 compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7";
16 device_type = "memory";
17 reg = <0x0 0x80000000 0x0 0x60000000>; /* 1536 MB */
20 evm_12v0: fixedregulator-evm_12v0 {
22 compatible = "regulator-fixed";
23 regulator-name = "evm_12v0";
24 regulator-min-microvolt = <12000000>;
25 regulator-max-microvolt = <12000000>;
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>;
38 evm_3v3_sd: fixedregulator-sd {
39 compatible = "regulator-fixed";
40 regulator-name = "evm_3v3_sd";
41 regulator-min-microvolt = <3300000>;
42 regulator-max-microvolt = <3300000>;
44 gpio = <&pcf_gpio_21 5 GPIO_ACTIVE_HIGH>;
47 evm_3v3_sw: fixedregulator-evm_3v3_sw {
48 compatible = "regulator-fixed";
49 regulator-name = "evm_3v3_sw";
50 vin-supply = <&sysen1>;
51 regulator-min-microvolt = <3300000>;
52 regulator-max-microvolt = <3300000>;
55 aic_dvdd: fixedregulator-aic_dvdd {
57 compatible = "regulator-fixed";
58 regulator-name = "aic_dvdd";
59 vin-supply = <&evm_3v3_sw>;
60 regulator-min-microvolt = <1800000>;
61 regulator-max-microvolt = <1800000>;
64 evm_3v3: fixedregulator-evm3v3 {
65 /* Output of Cntlr A of TPS43351-Q1 on dra7-evm */
66 compatible = "regulator-fixed";
67 regulator-name = "evm_3v3";
68 regulator-min-microvolt = <3300000>;
69 regulator-max-microvolt = <3300000>;
70 vin-supply = <&evm_12v0>;
75 evm_5v0: fixedregulator-evm_5v0 {
76 /* Output of Cntlr B of TPS43351-Q1 on dra7-evm */
77 compatible = "regulator-fixed";
78 regulator-name = "evm_5v0";
79 regulator-min-microvolt = <5000000>;
80 regulator-max-microvolt = <5000000>;
81 vin-supply = <&evm_12v0>;
86 evm_3v6: fixedregulator-evm_3v6 {
87 compatible = "regulator-fixed";
88 regulator-name = "evm_3v6";
89 regulator-min-microvolt = <3600000>;
90 regulator-max-microvolt = <3600000>;
91 vin-supply = <&evm_5v0>;
96 vmmcwl_fixed: fixedregulator-mmcwl {
97 compatible = "regulator-fixed";
98 regulator-name = "vmmcwl_fixed";
99 regulator-min-microvolt = <1800000>;
100 regulator-max-microvolt = <1800000>;
102 startup-delay-us = <70000>;
106 vtt_fixed: fixedregulator-vtt {
107 compatible = "regulator-fixed";
108 regulator-name = "vtt_fixed";
109 regulator-min-microvolt = <1350000>;
110 regulator-max-microvolt = <1350000>;
114 vin-supply = <&sysen2>;
115 gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
121 dcan1_pins_default: dcan1_pins_default {
122 pinctrl-single,pins = <
123 DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
124 DRA7XX_CORE_IOPAD(0x3818, PULL_UP | MUX_MODE1) /* wakeup0.dcan1_rx */
128 dcan1_pins_sleep: dcan1_pins_sleep {
129 pinctrl-single,pins = <
130 DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */
131 DRA7XX_CORE_IOPAD(0x3818, MUX_MODE15 | PULL_UP) /* wakeup0.off */
138 clock-frequency = <400000>;
140 tps659038: tps659038@58 {
141 compatible = "ti,tps659038";
143 ti,palmas-override-powerhold;
144 ti,system-power-controller;
147 compatible = "ti,tps659038-pmic";
150 smps123_reg: smps123 {
152 regulator-name = "smps123";
153 regulator-min-microvolt = < 850000>;
154 regulator-max-microvolt = <1250000>;
161 regulator-name = "smps45";
162 regulator-min-microvolt = < 850000>;
163 regulator-max-microvolt = <1250000>;
169 /* VDD_GPU - over VDD_SMPS6 */
170 regulator-name = "smps6";
171 regulator-min-microvolt = <850000>;
172 regulator-max-microvolt = <1250000>;
179 regulator-name = "smps7";
180 regulator-min-microvolt = <850000>;
181 regulator-max-microvolt = <1150000>;
188 regulator-name = "smps8";
189 regulator-min-microvolt = < 850000>;
190 regulator-max-microvolt = <1250000>;
197 regulator-name = "smps9";
198 regulator-min-microvolt = <1800000>;
199 regulator-max-microvolt = <1800000>;
205 /* LDO1_OUT --> SDIO */
206 regulator-name = "ldo1";
207 regulator-min-microvolt = <1800000>;
208 regulator-max-microvolt = <3300000>;
215 /* LDO2 -> VDDSHV5, LDO2 also goes to CAN_PHY_3V3 */
216 regulator-name = "ldo2";
217 regulator-min-microvolt = <3300000>;
218 regulator-max-microvolt = <3300000>;
225 regulator-name = "ldo3";
226 regulator-min-microvolt = <1800000>;
227 regulator-max-microvolt = <1800000>;
234 regulator-name = "ldo9";
235 regulator-min-microvolt = <1050000>;
236 regulator-max-microvolt = <1050000>;
239 regulator-allow-bypass;
244 regulator-name = "ldoln";
245 regulator-min-microvolt = <1800000>;
246 regulator-max-microvolt = <1800000>;
252 /* VDDA_3V_USB: VDDA_USBHS33 */
253 regulator-name = "ldousb";
254 regulator-min-microvolt = <3300000>;
255 regulator-max-microvolt = <3300000>;
259 /* REGEN1 is unused */
262 /* Needed for PMIC internal resources */
263 regulator-name = "regen2";
268 /* REGEN3 is unused */
272 regulator-name = "sysen1";
279 regulator-name = "sysen2";
288 compatible = "ti,pcf8575", "nxp,pcf8575";
292 interrupt-parent = <&gpio6>;
293 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
294 interrupt-controller;
295 #interrupt-cells = <2>;
298 pcf_gpio_21: gpio@21 {
299 compatible = "ti,pcf8575", "nxp,pcf8575";
301 lines-initial-states = <0x1408>;
304 interrupt-parent = <&gpio6>;
305 interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
306 interrupt-controller;
307 #interrupt-cells = <2>;
310 tlv320aic3106: tlv320aic3106@19 {
311 #sound-dai-cells = <0>;
312 compatible = "ti,tlv320aic3106";
314 adc-settle-ms = <40>;
315 ai3x-micbias-vg = <1>; /* 2.0V */
319 AVDD-supply = <&evm_3v3_sw>;
320 IOVDD-supply = <&evm_3v3_sw>;
321 DRVDD-supply = <&evm_3v3_sw>;
322 DVDD-supply = <&aic_dvdd>;
328 clock-frequency = <400000>;
331 compatible = "ti,pcf8575", "nxp,pcf8575";
336 /* vin6_sel_s0: high: VIN6, low: audio */
338 gpios = <1 GPIO_ACTIVE_HIGH>;
340 line-name = "vin6_sel_s0";
347 vmmc-supply = <&evm_3v3_sd>;
348 vqmmc-supply = <&ldo1_reg>;
351 * SDCD signal is not being used here - using the fact that GPIO mode
352 * is always hardwired.
354 cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
355 pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50-rev11", "sdr104-rev11", "ddr50", "sdr104";
356 pinctrl-0 = <&mmc1_pins_default>;
357 pinctrl-1 = <&mmc1_pins_hs>;
358 pinctrl-2 = <&mmc1_pins_sdr12>;
359 pinctrl-3 = <&mmc1_pins_sdr25>;
360 pinctrl-4 = <&mmc1_pins_sdr50>;
361 pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev11_conf>;
362 pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev11_conf>;
363 pinctrl-7 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev20_conf>;
364 pinctrl-8 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>;
369 vmmc-supply = <&evm_1v8_sw>;
370 vqmmc-supply = <&evm_1v8_sw>;
373 pinctrl-names = "default", "hs", "ddr_1_8v-rev11", "ddr_1_8v", "hs200_1_8v-rev11", "hs200_1_8v";
374 pinctrl-0 = <&mmc2_pins_default>;
375 pinctrl-1 = <&mmc2_pins_hs>;
376 pinctrl-2 = <&mmc2_pins_ddr_1_8v_rev11 &mmc2_iodelay_ddr_1_8v_rev11_conf>;
377 pinctrl-3 = <&mmc2_pins_ddr_rev20>;
378 pinctrl-4 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev11_conf>;
379 pinctrl-5 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev20_conf>;
384 vmmc-supply = <&evm_3v6>;
385 vqmmc-supply = <&vmmcwl_fixed>;
386 pinctrl-names = "default-rev11", "default", "hs-rev11", "hs", "sdr12-rev11", "sdr12", "sdr25-rev11", "sdr25";
387 pinctrl-0 = <&mmc4_pins_default &mmc4_iodelay_ds_rev11_conf>;
388 pinctrl-1 = <&mmc4_pins_default &mmc4_iodelay_ds_rev20_conf>;
389 pinctrl-2 = <&mmc4_pins_hs &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
390 pinctrl-3 = <&mmc4_pins_hs &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
391 pinctrl-4 = <&mmc4_pins_sdr12 &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
392 pinctrl-5 = <&mmc4_pins_sdr12 &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
393 pinctrl-6 = <&mmc4_pins_sdr25 &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
394 pinctrl-7 = <&mmc4_pins_sdr25 &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
398 vdd-supply = <&smps123_reg>;
407 * For the existing IOdelay configuration via U-Boot we don't
408 * support NAND on dra7-evm. Keep it disabled. Enabling it
409 * requires a different configuration by U-Boot.
412 ranges = <0 0 0x08000000 0x01000000>; /* minimum GPMC partition = 16MB */
414 compatible = "ti,omap2-nand";
415 reg = <0 0 4>; /* device IO registers */
416 interrupt-parent = <&gpmc>;
417 interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
418 <1 IRQ_TYPE_NONE>; /* termcount */
419 rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 pin */
420 ti,nand-xfer-type = "prefetch-dma";
421 ti,nand-ecc-opt = "bch8";
423 nand-bus-width = <16>;
424 gpmc,device-width = <2>;
425 gpmc,sync-clk-ps = <0>;
427 gpmc,cs-rd-off-ns = <80>;
428 gpmc,cs-wr-off-ns = <80>;
429 gpmc,adv-on-ns = <0>;
430 gpmc,adv-rd-off-ns = <60>;
431 gpmc,adv-wr-off-ns = <60>;
432 gpmc,we-on-ns = <10>;
433 gpmc,we-off-ns = <50>;
435 gpmc,oe-off-ns = <40>;
436 gpmc,access-ns = <40>;
437 gpmc,wr-access-ns = <80>;
438 gpmc,rd-cycle-ns = <80>;
439 gpmc,wr-cycle-ns = <80>;
440 gpmc,bus-turnaround-ns = <0>;
441 gpmc,cycle2cycle-delay-ns = <0>;
442 gpmc,clk-activation-ns = <0>;
443 gpmc,wr-data-mux-bus-ns = <0>;
444 /* MTD partition table */
445 /* All SPL-* partitions are sized to minimal length
446 * which can be independently programmable. For
447 * NAND flash this is equal to size of erase-block */
448 #address-cells = <1>;
452 reg = <0x00000000 0x000020000>;
455 label = "NAND.SPL.backup1";
456 reg = <0x00020000 0x00020000>;
459 label = "NAND.SPL.backup2";
460 reg = <0x00040000 0x00020000>;
463 label = "NAND.SPL.backup3";
464 reg = <0x00060000 0x00020000>;
467 label = "NAND.u-boot-spl-os";
468 reg = <0x00080000 0x00040000>;
471 label = "NAND.u-boot";
472 reg = <0x000c0000 0x00100000>;
475 label = "NAND.u-boot-env";
476 reg = <0x001c0000 0x00020000>;
479 label = "NAND.u-boot-env.backup1";
480 reg = <0x001e0000 0x00020000>;
483 label = "NAND.kernel";
484 reg = <0x00200000 0x00800000>;
487 label = "NAND.file-system";
488 reg = <0x00a00000 0x0f600000>;
494 phy-supply = <&ldousb_reg>;
498 phy-supply = <&ldousb_reg>;
512 phy-handle = <ðphy0>;
514 dual_emac_res_vlan = <1>;
518 phy-handle = <ðphy1>;
520 dual_emac_res_vlan = <2>;
524 ethphy0: ethernet-phy@2 {
528 ethphy1: ethernet-phy@3 {
535 pinctrl-names = "default", "sleep", "active";
536 pinctrl-0 = <&dcan1_pins_sleep>;
537 pinctrl-1 = <&dcan1_pins_sleep>;
538 pinctrl-2 = <&dcan1_pins_default>;