162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (C) 2013 Texas Instruments Incorporated - https://www.ti.com/
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci/dts-v1/;
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#include "dra74x.dtsi"
862306a36Sopenharmony_ci#include "dra7-evm-common.dtsi"
962306a36Sopenharmony_ci#include "dra74x-mmc-iodelay.dtsi"
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci/ {
1262306a36Sopenharmony_ci	model = "TI DRA742";
1362306a36Sopenharmony_ci	compatible = "ti,dra7-evm", "ti,dra742", "ti,dra74", "ti,dra7";
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci	memory@0 {
1662306a36Sopenharmony_ci		device_type = "memory";
1762306a36Sopenharmony_ci		reg = <0x0 0x80000000 0x0 0x60000000>; /* 1536 MB */
1862306a36Sopenharmony_ci	};
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	evm_12v0: fixedregulator-evm_12v0 {
2162306a36Sopenharmony_ci		/* main supply */
2262306a36Sopenharmony_ci		compatible = "regulator-fixed";
2362306a36Sopenharmony_ci		regulator-name = "evm_12v0";
2462306a36Sopenharmony_ci		regulator-min-microvolt = <12000000>;
2562306a36Sopenharmony_ci		regulator-max-microvolt = <12000000>;
2662306a36Sopenharmony_ci		regulator-always-on;
2762306a36Sopenharmony_ci		regulator-boot-on;
2862306a36Sopenharmony_ci	};
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci	evm_1v8_sw: fixedregulator-evm_1v8 {
3162306a36Sopenharmony_ci		compatible = "regulator-fixed";
3262306a36Sopenharmony_ci		regulator-name = "evm_1v8";
3362306a36Sopenharmony_ci		vin-supply = <&smps9_reg>;
3462306a36Sopenharmony_ci		regulator-min-microvolt = <1800000>;
3562306a36Sopenharmony_ci		regulator-max-microvolt = <1800000>;
3662306a36Sopenharmony_ci	};
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_ci	reserved-memory {
3962306a36Sopenharmony_ci		#address-cells = <2>;
4062306a36Sopenharmony_ci		#size-cells = <2>;
4162306a36Sopenharmony_ci		ranges;
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci		ipu2_memory_region: ipu2-memory@95800000 {
4462306a36Sopenharmony_ci			compatible = "shared-dma-pool";
4562306a36Sopenharmony_ci			reg = <0x0 0x95800000 0x0 0x3800000>;
4662306a36Sopenharmony_ci			reusable;
4762306a36Sopenharmony_ci			status = "okay";
4862306a36Sopenharmony_ci		};
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci		dsp1_memory_region: dsp1-memory@99000000 {
5162306a36Sopenharmony_ci			compatible = "shared-dma-pool";
5262306a36Sopenharmony_ci			reg = <0x0 0x99000000 0x0 0x4000000>;
5362306a36Sopenharmony_ci			reusable;
5462306a36Sopenharmony_ci			status = "okay";
5562306a36Sopenharmony_ci		};
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_ci		ipu1_memory_region: ipu1-memory@9d000000 {
5862306a36Sopenharmony_ci			compatible = "shared-dma-pool";
5962306a36Sopenharmony_ci			reg = <0x0 0x9d000000 0x0 0x2000000>;
6062306a36Sopenharmony_ci			reusable;
6162306a36Sopenharmony_ci			status = "okay";
6262306a36Sopenharmony_ci		};
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci		dsp2_memory_region: dsp2-memory@9f000000 {
6562306a36Sopenharmony_ci			compatible = "shared-dma-pool";
6662306a36Sopenharmony_ci			reg = <0x0 0x9f000000 0x0 0x800000>;
6762306a36Sopenharmony_ci			reusable;
6862306a36Sopenharmony_ci			status = "okay";
6962306a36Sopenharmony_ci		};
7062306a36Sopenharmony_ci	};
7162306a36Sopenharmony_ci
7262306a36Sopenharmony_ci	evm_3v3_sd: fixedregulator-sd {
7362306a36Sopenharmony_ci		compatible = "regulator-fixed";
7462306a36Sopenharmony_ci		regulator-name = "evm_3v3_sd";
7562306a36Sopenharmony_ci		regulator-min-microvolt = <3300000>;
7662306a36Sopenharmony_ci		regulator-max-microvolt = <3300000>;
7762306a36Sopenharmony_ci		enable-active-high;
7862306a36Sopenharmony_ci		gpio = <&pcf_gpio_21 5 GPIO_ACTIVE_HIGH>;
7962306a36Sopenharmony_ci	};
8062306a36Sopenharmony_ci
8162306a36Sopenharmony_ci	evm_3v3_sw: fixedregulator-evm_3v3_sw {
8262306a36Sopenharmony_ci		compatible = "regulator-fixed";
8362306a36Sopenharmony_ci		regulator-name = "evm_3v3_sw";
8462306a36Sopenharmony_ci		vin-supply = <&sysen1>;
8562306a36Sopenharmony_ci		regulator-min-microvolt = <3300000>;
8662306a36Sopenharmony_ci		regulator-max-microvolt = <3300000>;
8762306a36Sopenharmony_ci	};
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci	aic_dvdd: fixedregulator-aic_dvdd {
9062306a36Sopenharmony_ci		/* TPS77018DBVT */
9162306a36Sopenharmony_ci		compatible = "regulator-fixed";
9262306a36Sopenharmony_ci		regulator-name = "aic_dvdd";
9362306a36Sopenharmony_ci		vin-supply = <&evm_3v3_sw>;
9462306a36Sopenharmony_ci		regulator-min-microvolt = <1800000>;
9562306a36Sopenharmony_ci		regulator-max-microvolt = <1800000>;
9662306a36Sopenharmony_ci	};
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ci	vsys_3v3: fixedregulator-vsys3v3 {
9962306a36Sopenharmony_ci		/* Output of Cntlr A of TPS43351-Q1 on dra7-evm */
10062306a36Sopenharmony_ci		compatible = "regulator-fixed";
10162306a36Sopenharmony_ci		regulator-name = "vsys_3v3";
10262306a36Sopenharmony_ci		regulator-min-microvolt = <3300000>;
10362306a36Sopenharmony_ci		regulator-max-microvolt = <3300000>;
10462306a36Sopenharmony_ci		vin-supply = <&evm_12v0>;
10562306a36Sopenharmony_ci		regulator-always-on;
10662306a36Sopenharmony_ci		regulator-boot-on;
10762306a36Sopenharmony_ci	};
10862306a36Sopenharmony_ci
10962306a36Sopenharmony_ci	evm_5v0: fixedregulator-evm_5v0 {
11062306a36Sopenharmony_ci		/* Output of Cntlr B of TPS43351-Q1 on dra7-evm */
11162306a36Sopenharmony_ci		compatible = "regulator-fixed";
11262306a36Sopenharmony_ci		regulator-name = "evm_5v0";
11362306a36Sopenharmony_ci		regulator-min-microvolt = <5000000>;
11462306a36Sopenharmony_ci		regulator-max-microvolt = <5000000>;
11562306a36Sopenharmony_ci		vin-supply = <&evm_12v0>;
11662306a36Sopenharmony_ci		regulator-always-on;
11762306a36Sopenharmony_ci		regulator-boot-on;
11862306a36Sopenharmony_ci	};
11962306a36Sopenharmony_ci
12062306a36Sopenharmony_ci	evm_3v6: fixedregulator-evm_3v6 {
12162306a36Sopenharmony_ci		compatible = "regulator-fixed";
12262306a36Sopenharmony_ci		regulator-name = "evm_3v6";
12362306a36Sopenharmony_ci		regulator-min-microvolt = <3600000>;
12462306a36Sopenharmony_ci		regulator-max-microvolt = <3600000>;
12562306a36Sopenharmony_ci		vin-supply = <&evm_5v0>;
12662306a36Sopenharmony_ci		regulator-always-on;
12762306a36Sopenharmony_ci		regulator-boot-on;
12862306a36Sopenharmony_ci	};
12962306a36Sopenharmony_ci
13062306a36Sopenharmony_ci	vmmcwl_fixed: fixedregulator-mmcwl {
13162306a36Sopenharmony_ci		compatible = "regulator-fixed";
13262306a36Sopenharmony_ci		regulator-name = "vmmcwl_fixed";
13362306a36Sopenharmony_ci		regulator-min-microvolt = <1800000>;
13462306a36Sopenharmony_ci		regulator-max-microvolt = <1800000>;
13562306a36Sopenharmony_ci		gpio = <&gpio5 8 0>;
13662306a36Sopenharmony_ci		startup-delay-us = <70000>;
13762306a36Sopenharmony_ci		enable-active-high;
13862306a36Sopenharmony_ci	};
13962306a36Sopenharmony_ci
14062306a36Sopenharmony_ci	vtt_fixed: fixedregulator-vtt {
14162306a36Sopenharmony_ci		compatible = "regulator-fixed";
14262306a36Sopenharmony_ci		regulator-name = "vtt_fixed";
14362306a36Sopenharmony_ci		regulator-min-microvolt = <1350000>;
14462306a36Sopenharmony_ci		regulator-max-microvolt = <1350000>;
14562306a36Sopenharmony_ci		regulator-always-on;
14662306a36Sopenharmony_ci		regulator-boot-on;
14762306a36Sopenharmony_ci		enable-active-high;
14862306a36Sopenharmony_ci		vin-supply = <&sysen2>;
14962306a36Sopenharmony_ci		gpio = <&gpio7 11 GPIO_ACTIVE_HIGH>;
15062306a36Sopenharmony_ci	};
15162306a36Sopenharmony_ci
15262306a36Sopenharmony_ci};
15362306a36Sopenharmony_ci
15462306a36Sopenharmony_ci&dra7_pmx_core {
15562306a36Sopenharmony_ci	dcan1_pins_default: dcan1-default-pins {
15662306a36Sopenharmony_ci		pinctrl-single,pins = <
15762306a36Sopenharmony_ci			DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */
15862306a36Sopenharmony_ci			DRA7XX_CORE_IOPAD(0x3818, PULL_UP | MUX_MODE1) /* wakeup0.dcan1_rx */
15962306a36Sopenharmony_ci		>;
16062306a36Sopenharmony_ci	};
16162306a36Sopenharmony_ci
16262306a36Sopenharmony_ci	dcan1_pins_sleep: dcan1-sleep-pins {
16362306a36Sopenharmony_ci		pinctrl-single,pins = <
16462306a36Sopenharmony_ci			DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP)	/* dcan1_tx.off */
16562306a36Sopenharmony_ci			DRA7XX_CORE_IOPAD(0x3818, MUX_MODE15 | PULL_UP)	/* wakeup0.off */
16662306a36Sopenharmony_ci		>;
16762306a36Sopenharmony_ci	};
16862306a36Sopenharmony_ci};
16962306a36Sopenharmony_ci
17062306a36Sopenharmony_ci&i2c1 {
17162306a36Sopenharmony_ci	status = "okay";
17262306a36Sopenharmony_ci	clock-frequency = <400000>;
17362306a36Sopenharmony_ci
17462306a36Sopenharmony_ci	tps659038: tps659038@58 {
17562306a36Sopenharmony_ci		compatible = "ti,tps659038";
17662306a36Sopenharmony_ci		reg = <0x58>;
17762306a36Sopenharmony_ci		ti,palmas-override-powerhold;
17862306a36Sopenharmony_ci		ti,system-power-controller;
17962306a36Sopenharmony_ci
18062306a36Sopenharmony_ci		tps659038_pmic {
18162306a36Sopenharmony_ci			compatible = "ti,tps659038-pmic";
18262306a36Sopenharmony_ci
18362306a36Sopenharmony_ci			regulators {
18462306a36Sopenharmony_ci				smps123_reg: smps123 {
18562306a36Sopenharmony_ci					/* VDD_MPU */
18662306a36Sopenharmony_ci					regulator-name = "smps123";
18762306a36Sopenharmony_ci					regulator-min-microvolt = < 850000>;
18862306a36Sopenharmony_ci					regulator-max-microvolt = <1250000>;
18962306a36Sopenharmony_ci					regulator-always-on;
19062306a36Sopenharmony_ci					regulator-boot-on;
19162306a36Sopenharmony_ci				};
19262306a36Sopenharmony_ci
19362306a36Sopenharmony_ci				smps45_reg: smps45 {
19462306a36Sopenharmony_ci					/* VDD_DSPEVE */
19562306a36Sopenharmony_ci					regulator-name = "smps45";
19662306a36Sopenharmony_ci					regulator-min-microvolt = < 850000>;
19762306a36Sopenharmony_ci					regulator-max-microvolt = <1250000>;
19862306a36Sopenharmony_ci					regulator-always-on;
19962306a36Sopenharmony_ci					regulator-boot-on;
20062306a36Sopenharmony_ci				};
20162306a36Sopenharmony_ci
20262306a36Sopenharmony_ci				smps6_reg: smps6 {
20362306a36Sopenharmony_ci					/* VDD_GPU - over VDD_SMPS6 */
20462306a36Sopenharmony_ci					regulator-name = "smps6";
20562306a36Sopenharmony_ci					regulator-min-microvolt = <850000>;
20662306a36Sopenharmony_ci					regulator-max-microvolt = <1250000>;
20762306a36Sopenharmony_ci					regulator-always-on;
20862306a36Sopenharmony_ci					regulator-boot-on;
20962306a36Sopenharmony_ci				};
21062306a36Sopenharmony_ci
21162306a36Sopenharmony_ci				smps7_reg: smps7 {
21262306a36Sopenharmony_ci					/* CORE_VDD */
21362306a36Sopenharmony_ci					regulator-name = "smps7";
21462306a36Sopenharmony_ci					regulator-min-microvolt = <850000>;
21562306a36Sopenharmony_ci					regulator-max-microvolt = <1150000>;
21662306a36Sopenharmony_ci					regulator-always-on;
21762306a36Sopenharmony_ci					regulator-boot-on;
21862306a36Sopenharmony_ci				};
21962306a36Sopenharmony_ci
22062306a36Sopenharmony_ci				smps8_reg: smps8 {
22162306a36Sopenharmony_ci					/* VDD_IVAHD */
22262306a36Sopenharmony_ci					regulator-name = "smps8";
22362306a36Sopenharmony_ci					regulator-min-microvolt = < 850000>;
22462306a36Sopenharmony_ci					regulator-max-microvolt = <1250000>;
22562306a36Sopenharmony_ci					regulator-always-on;
22662306a36Sopenharmony_ci					regulator-boot-on;
22762306a36Sopenharmony_ci				};
22862306a36Sopenharmony_ci
22962306a36Sopenharmony_ci				smps9_reg: smps9 {
23062306a36Sopenharmony_ci					/* VDDS1V8 */
23162306a36Sopenharmony_ci					regulator-name = "smps9";
23262306a36Sopenharmony_ci					regulator-min-microvolt = <1800000>;
23362306a36Sopenharmony_ci					regulator-max-microvolt = <1800000>;
23462306a36Sopenharmony_ci					regulator-always-on;
23562306a36Sopenharmony_ci					regulator-boot-on;
23662306a36Sopenharmony_ci				};
23762306a36Sopenharmony_ci
23862306a36Sopenharmony_ci				ldo1_reg: ldo1 {
23962306a36Sopenharmony_ci					/* LDO1_OUT --> SDIO  */
24062306a36Sopenharmony_ci					regulator-name = "ldo1";
24162306a36Sopenharmony_ci					regulator-min-microvolt = <1800000>;
24262306a36Sopenharmony_ci					regulator-max-microvolt = <3300000>;
24362306a36Sopenharmony_ci					regulator-always-on;
24462306a36Sopenharmony_ci					regulator-boot-on;
24562306a36Sopenharmony_ci				};
24662306a36Sopenharmony_ci
24762306a36Sopenharmony_ci				ldo2_reg: ldo2 {
24862306a36Sopenharmony_ci					/* VDD_RTCIO */
24962306a36Sopenharmony_ci					/* LDO2 -> VDDSHV5, LDO2 also goes to CAN_PHY_3V3 */
25062306a36Sopenharmony_ci					regulator-name = "ldo2";
25162306a36Sopenharmony_ci					regulator-min-microvolt = <3300000>;
25262306a36Sopenharmony_ci					regulator-max-microvolt = <3300000>;
25362306a36Sopenharmony_ci					regulator-always-on;
25462306a36Sopenharmony_ci					regulator-boot-on;
25562306a36Sopenharmony_ci				};
25662306a36Sopenharmony_ci
25762306a36Sopenharmony_ci				ldo3_reg: ldo3 {
25862306a36Sopenharmony_ci					/* VDDA_1V8_PHY */
25962306a36Sopenharmony_ci					regulator-name = "ldo3";
26062306a36Sopenharmony_ci					regulator-min-microvolt = <1800000>;
26162306a36Sopenharmony_ci					regulator-max-microvolt = <1800000>;
26262306a36Sopenharmony_ci					regulator-always-on;
26362306a36Sopenharmony_ci					regulator-boot-on;
26462306a36Sopenharmony_ci				};
26562306a36Sopenharmony_ci
26662306a36Sopenharmony_ci				ldo9_reg: ldo9 {
26762306a36Sopenharmony_ci					/* VDD_RTC */
26862306a36Sopenharmony_ci					regulator-name = "ldo9";
26962306a36Sopenharmony_ci					regulator-min-microvolt = <1050000>;
27062306a36Sopenharmony_ci					regulator-max-microvolt = <1050000>;
27162306a36Sopenharmony_ci					regulator-always-on;
27262306a36Sopenharmony_ci					regulator-boot-on;
27362306a36Sopenharmony_ci					regulator-allow-bypass;
27462306a36Sopenharmony_ci				};
27562306a36Sopenharmony_ci
27662306a36Sopenharmony_ci				ldoln_reg: ldoln {
27762306a36Sopenharmony_ci					/* VDDA_1V8_PLL */
27862306a36Sopenharmony_ci					regulator-name = "ldoln";
27962306a36Sopenharmony_ci					regulator-min-microvolt = <1800000>;
28062306a36Sopenharmony_ci					regulator-max-microvolt = <1800000>;
28162306a36Sopenharmony_ci					regulator-always-on;
28262306a36Sopenharmony_ci					regulator-boot-on;
28362306a36Sopenharmony_ci				};
28462306a36Sopenharmony_ci
28562306a36Sopenharmony_ci				ldousb_reg: ldousb {
28662306a36Sopenharmony_ci					/* VDDA_3V_USB: VDDA_USBHS33 */
28762306a36Sopenharmony_ci					regulator-name = "ldousb";
28862306a36Sopenharmony_ci					regulator-min-microvolt = <3300000>;
28962306a36Sopenharmony_ci					regulator-max-microvolt = <3300000>;
29062306a36Sopenharmony_ci					regulator-boot-on;
29162306a36Sopenharmony_ci				};
29262306a36Sopenharmony_ci
29362306a36Sopenharmony_ci				/* REGEN1 is unused */
29462306a36Sopenharmony_ci
29562306a36Sopenharmony_ci				regen2: regen2 {
29662306a36Sopenharmony_ci					/* Needed for PMIC internal resources */
29762306a36Sopenharmony_ci					regulator-name = "regen2";
29862306a36Sopenharmony_ci					regulator-boot-on;
29962306a36Sopenharmony_ci					regulator-always-on;
30062306a36Sopenharmony_ci				};
30162306a36Sopenharmony_ci
30262306a36Sopenharmony_ci				/* REGEN3 is unused */
30362306a36Sopenharmony_ci
30462306a36Sopenharmony_ci				sysen1: sysen1 {
30562306a36Sopenharmony_ci					/* PMIC_REGEN_3V3 */
30662306a36Sopenharmony_ci					regulator-name = "sysen1";
30762306a36Sopenharmony_ci					regulator-boot-on;
30862306a36Sopenharmony_ci					regulator-always-on;
30962306a36Sopenharmony_ci				};
31062306a36Sopenharmony_ci
31162306a36Sopenharmony_ci				sysen2: sysen2 {
31262306a36Sopenharmony_ci					/* PMIC_REGEN_DDR */
31362306a36Sopenharmony_ci					regulator-name = "sysen2";
31462306a36Sopenharmony_ci					regulator-boot-on;
31562306a36Sopenharmony_ci					regulator-always-on;
31662306a36Sopenharmony_ci				};
31762306a36Sopenharmony_ci			};
31862306a36Sopenharmony_ci		};
31962306a36Sopenharmony_ci	};
32062306a36Sopenharmony_ci
32162306a36Sopenharmony_ci	pcf_lcd: gpio@20 {
32262306a36Sopenharmony_ci		compatible = "nxp,pcf8575";
32362306a36Sopenharmony_ci		reg = <0x20>;
32462306a36Sopenharmony_ci		gpio-controller;
32562306a36Sopenharmony_ci		#gpio-cells = <2>;
32662306a36Sopenharmony_ci		interrupt-parent = <&gpio6>;
32762306a36Sopenharmony_ci		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
32862306a36Sopenharmony_ci		interrupt-controller;
32962306a36Sopenharmony_ci		#interrupt-cells = <2>;
33062306a36Sopenharmony_ci	};
33162306a36Sopenharmony_ci
33262306a36Sopenharmony_ci	pcf_gpio_21: gpio@21 {
33362306a36Sopenharmony_ci		compatible = "nxp,pcf8575";
33462306a36Sopenharmony_ci		reg = <0x21>;
33562306a36Sopenharmony_ci		lines-initial-states = <0x1408>;
33662306a36Sopenharmony_ci		gpio-controller;
33762306a36Sopenharmony_ci		#gpio-cells = <2>;
33862306a36Sopenharmony_ci		interrupt-parent = <&gpio6>;
33962306a36Sopenharmony_ci		interrupts = <11 IRQ_TYPE_EDGE_FALLING>;
34062306a36Sopenharmony_ci		interrupt-controller;
34162306a36Sopenharmony_ci		#interrupt-cells = <2>;
34262306a36Sopenharmony_ci	};
34362306a36Sopenharmony_ci
34462306a36Sopenharmony_ci	tlv320aic3106: tlv320aic3106@19 {
34562306a36Sopenharmony_ci		#sound-dai-cells = <0>;
34662306a36Sopenharmony_ci		compatible = "ti,tlv320aic3106";
34762306a36Sopenharmony_ci		reg = <0x19>;
34862306a36Sopenharmony_ci		adc-settle-ms = <40>;
34962306a36Sopenharmony_ci		ai3x-micbias-vg = <1>;		/* 2.0V */
35062306a36Sopenharmony_ci		status = "okay";
35162306a36Sopenharmony_ci
35262306a36Sopenharmony_ci		/* Regulators */
35362306a36Sopenharmony_ci		AVDD-supply = <&evm_3v3_sw>;
35462306a36Sopenharmony_ci		IOVDD-supply = <&evm_3v3_sw>;
35562306a36Sopenharmony_ci		DRVDD-supply = <&evm_3v3_sw>;
35662306a36Sopenharmony_ci		DVDD-supply = <&aic_dvdd>;
35762306a36Sopenharmony_ci	};
35862306a36Sopenharmony_ci};
35962306a36Sopenharmony_ci
36062306a36Sopenharmony_ci&i2c2 {
36162306a36Sopenharmony_ci	status = "okay";
36262306a36Sopenharmony_ci	clock-frequency = <400000>;
36362306a36Sopenharmony_ci
36462306a36Sopenharmony_ci	pcf_hdmi: gpio@26 {
36562306a36Sopenharmony_ci		compatible = "nxp,pcf8575";
36662306a36Sopenharmony_ci		reg = <0x26>;
36762306a36Sopenharmony_ci		gpio-controller;
36862306a36Sopenharmony_ci		#gpio-cells = <2>;
36962306a36Sopenharmony_ci		hdmi-audio-hog {
37062306a36Sopenharmony_ci			/* vin6_sel_s0: high: VIN6, low: audio */
37162306a36Sopenharmony_ci			gpio-hog;
37262306a36Sopenharmony_ci			gpios = <1 GPIO_ACTIVE_HIGH>;
37362306a36Sopenharmony_ci			output-low;
37462306a36Sopenharmony_ci			line-name = "vin6_sel_s0";
37562306a36Sopenharmony_ci		};
37662306a36Sopenharmony_ci	};
37762306a36Sopenharmony_ci};
37862306a36Sopenharmony_ci
37962306a36Sopenharmony_ci&mmc1 {
38062306a36Sopenharmony_ci	status = "okay";
38162306a36Sopenharmony_ci	vmmc-supply = <&evm_3v3_sd>;
38262306a36Sopenharmony_ci	vqmmc-supply = <&ldo1_reg>;
38362306a36Sopenharmony_ci	bus-width = <4>;
38462306a36Sopenharmony_ci	/*
38562306a36Sopenharmony_ci	 * SDCD signal is not being used here - using the fact that GPIO mode
38662306a36Sopenharmony_ci	 * is always hardwired.
38762306a36Sopenharmony_ci	 */
38862306a36Sopenharmony_ci	cd-gpios = <&gpio6 27 GPIO_ACTIVE_LOW>;
38962306a36Sopenharmony_ci	pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50-rev11", "sdr104-rev11", "ddr50", "sdr104";
39062306a36Sopenharmony_ci	pinctrl-0 = <&mmc1_pins_default>;
39162306a36Sopenharmony_ci	pinctrl-1 = <&mmc1_pins_hs>;
39262306a36Sopenharmony_ci	pinctrl-2 = <&mmc1_pins_sdr12>;
39362306a36Sopenharmony_ci	pinctrl-3 = <&mmc1_pins_sdr25>;
39462306a36Sopenharmony_ci	pinctrl-4 = <&mmc1_pins_sdr50>;
39562306a36Sopenharmony_ci	pinctrl-5 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev11_conf>;
39662306a36Sopenharmony_ci	pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev11_conf>;
39762306a36Sopenharmony_ci	pinctrl-7 = <&mmc1_pins_ddr50 &mmc1_iodelay_ddr_rev20_conf>;
39862306a36Sopenharmony_ci	pinctrl-8 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>;
39962306a36Sopenharmony_ci};
40062306a36Sopenharmony_ci
40162306a36Sopenharmony_ci&mmc2 {
40262306a36Sopenharmony_ci	status = "okay";
40362306a36Sopenharmony_ci	vmmc-supply = <&evm_1v8_sw>;
40462306a36Sopenharmony_ci	vqmmc-supply = <&evm_1v8_sw>;
40562306a36Sopenharmony_ci	bus-width = <8>;
40662306a36Sopenharmony_ci	non-removable;
40762306a36Sopenharmony_ci	pinctrl-names = "default", "hs", "ddr_1_8v-rev11", "ddr_1_8v", "hs200_1_8v-rev11", "hs200_1_8v";
40862306a36Sopenharmony_ci	pinctrl-0 = <&mmc2_pins_default>;
40962306a36Sopenharmony_ci	pinctrl-1 = <&mmc2_pins_hs>;
41062306a36Sopenharmony_ci	pinctrl-2 = <&mmc2_pins_ddr_1_8v_rev11 &mmc2_iodelay_ddr_1_8v_rev11_conf>;
41162306a36Sopenharmony_ci	pinctrl-3 = <&mmc2_pins_ddr_rev20>;
41262306a36Sopenharmony_ci	pinctrl-4 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev11_conf>;
41362306a36Sopenharmony_ci	pinctrl-5 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev20_conf>;
41462306a36Sopenharmony_ci};
41562306a36Sopenharmony_ci
41662306a36Sopenharmony_ci&mmc4 {
41762306a36Sopenharmony_ci	status = "okay";
41862306a36Sopenharmony_ci	vmmc-supply = <&evm_3v6>;
41962306a36Sopenharmony_ci	vqmmc-supply = <&vmmcwl_fixed>;
42062306a36Sopenharmony_ci	pinctrl-names = "default-rev11", "default", "hs-rev11", "hs", "sdr12-rev11", "sdr12", "sdr25-rev11", "sdr25";
42162306a36Sopenharmony_ci	pinctrl-0 = <&mmc4_pins_default &mmc4_iodelay_ds_rev11_conf>;
42262306a36Sopenharmony_ci	pinctrl-1 = <&mmc4_pins_default &mmc4_iodelay_ds_rev20_conf>;
42362306a36Sopenharmony_ci	pinctrl-2 = <&mmc4_pins_hs &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
42462306a36Sopenharmony_ci	pinctrl-3 = <&mmc4_pins_hs &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
42562306a36Sopenharmony_ci	pinctrl-4 = <&mmc4_pins_sdr12 &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
42662306a36Sopenharmony_ci	pinctrl-5 = <&mmc4_pins_sdr12 &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
42762306a36Sopenharmony_ci	pinctrl-6 = <&mmc4_pins_sdr25 &mmc4_iodelay_sdr12_hs_sdr25_rev11_conf>;
42862306a36Sopenharmony_ci	pinctrl-7 = <&mmc4_pins_sdr25 &mmc4_iodelay_sdr12_hs_sdr25_rev20_conf>;
42962306a36Sopenharmony_ci};
43062306a36Sopenharmony_ci
43162306a36Sopenharmony_ci&cpu0 {
43262306a36Sopenharmony_ci	vdd-supply = <&smps123_reg>;
43362306a36Sopenharmony_ci};
43462306a36Sopenharmony_ci
43562306a36Sopenharmony_ci&elm {
43662306a36Sopenharmony_ci	status = "okay";
43762306a36Sopenharmony_ci};
43862306a36Sopenharmony_ci
43962306a36Sopenharmony_ci&gpmc {
44062306a36Sopenharmony_ci	/*
44162306a36Sopenharmony_ci	* For the existing IOdelay configuration via U-Boot we don't
44262306a36Sopenharmony_ci	* support NAND on dra7-evm. Keep it disabled. Enabling it
44362306a36Sopenharmony_ci	* requires a different configuration by U-Boot.
44462306a36Sopenharmony_ci	*/
44562306a36Sopenharmony_ci	status = "disabled";
44662306a36Sopenharmony_ci	ranges = <0 0 0x08000000 0x01000000>;	/* minimum GPMC partition = 16MB */
44762306a36Sopenharmony_ci	nand@0,0 {
44862306a36Sopenharmony_ci		compatible = "ti,omap2-nand";
44962306a36Sopenharmony_ci		reg = <0 0 4>;		/* device IO registers */
45062306a36Sopenharmony_ci		interrupt-parent = <&gpmc>;
45162306a36Sopenharmony_ci		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
45262306a36Sopenharmony_ci			     <1 IRQ_TYPE_NONE>; /* termcount */
45362306a36Sopenharmony_ci		rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 pin */
45462306a36Sopenharmony_ci		ti,nand-xfer-type = "prefetch-dma";
45562306a36Sopenharmony_ci		ti,nand-ecc-opt = "bch8";
45662306a36Sopenharmony_ci		ti,elm-id = <&elm>;
45762306a36Sopenharmony_ci		nand-bus-width = <16>;
45862306a36Sopenharmony_ci		gpmc,device-width = <2>;
45962306a36Sopenharmony_ci		gpmc,sync-clk-ps = <0>;
46062306a36Sopenharmony_ci		gpmc,cs-on-ns = <0>;
46162306a36Sopenharmony_ci		gpmc,cs-rd-off-ns = <80>;
46262306a36Sopenharmony_ci		gpmc,cs-wr-off-ns = <80>;
46362306a36Sopenharmony_ci		gpmc,adv-on-ns = <0>;
46462306a36Sopenharmony_ci		gpmc,adv-rd-off-ns = <60>;
46562306a36Sopenharmony_ci		gpmc,adv-wr-off-ns = <60>;
46662306a36Sopenharmony_ci		gpmc,we-on-ns = <10>;
46762306a36Sopenharmony_ci		gpmc,we-off-ns = <50>;
46862306a36Sopenharmony_ci		gpmc,oe-on-ns = <4>;
46962306a36Sopenharmony_ci		gpmc,oe-off-ns = <40>;
47062306a36Sopenharmony_ci		gpmc,access-ns = <40>;
47162306a36Sopenharmony_ci		gpmc,wr-access-ns = <80>;
47262306a36Sopenharmony_ci		gpmc,rd-cycle-ns = <80>;
47362306a36Sopenharmony_ci		gpmc,wr-cycle-ns = <80>;
47462306a36Sopenharmony_ci		gpmc,bus-turnaround-ns = <0>;
47562306a36Sopenharmony_ci		gpmc,cycle2cycle-delay-ns = <0>;
47662306a36Sopenharmony_ci		gpmc,clk-activation-ns = <0>;
47762306a36Sopenharmony_ci		gpmc,wr-data-mux-bus-ns = <0>;
47862306a36Sopenharmony_ci		/* MTD partition table */
47962306a36Sopenharmony_ci		/* All SPL-* partitions are sized to minimal length
48062306a36Sopenharmony_ci		 * which can be independently programmable. For
48162306a36Sopenharmony_ci		 * NAND flash this is equal to size of erase-block */
48262306a36Sopenharmony_ci		#address-cells = <1>;
48362306a36Sopenharmony_ci		#size-cells = <1>;
48462306a36Sopenharmony_ci		partition@0 {
48562306a36Sopenharmony_ci			label = "NAND.SPL";
48662306a36Sopenharmony_ci			reg = <0x00000000 0x00020000>;
48762306a36Sopenharmony_ci		};
48862306a36Sopenharmony_ci		partition@1 {
48962306a36Sopenharmony_ci			label = "NAND.SPL.backup1";
49062306a36Sopenharmony_ci			reg = <0x00020000 0x00020000>;
49162306a36Sopenharmony_ci		};
49262306a36Sopenharmony_ci		partition@2 {
49362306a36Sopenharmony_ci			label = "NAND.SPL.backup2";
49462306a36Sopenharmony_ci			reg = <0x00040000 0x00020000>;
49562306a36Sopenharmony_ci		};
49662306a36Sopenharmony_ci		partition@3 {
49762306a36Sopenharmony_ci			label = "NAND.SPL.backup3";
49862306a36Sopenharmony_ci			reg = <0x00060000 0x00020000>;
49962306a36Sopenharmony_ci		};
50062306a36Sopenharmony_ci		partition@4 {
50162306a36Sopenharmony_ci			label = "NAND.u-boot-spl-os";
50262306a36Sopenharmony_ci			reg = <0x00080000 0x00040000>;
50362306a36Sopenharmony_ci		};
50462306a36Sopenharmony_ci		partition@5 {
50562306a36Sopenharmony_ci			label = "NAND.u-boot";
50662306a36Sopenharmony_ci			reg = <0x000c0000 0x00100000>;
50762306a36Sopenharmony_ci		};
50862306a36Sopenharmony_ci		partition@6 {
50962306a36Sopenharmony_ci			label = "NAND.u-boot-env";
51062306a36Sopenharmony_ci			reg = <0x001c0000 0x00020000>;
51162306a36Sopenharmony_ci		};
51262306a36Sopenharmony_ci		partition@7 {
51362306a36Sopenharmony_ci			label = "NAND.u-boot-env.backup1";
51462306a36Sopenharmony_ci			reg = <0x001e0000 0x00020000>;
51562306a36Sopenharmony_ci		};
51662306a36Sopenharmony_ci		partition@8 {
51762306a36Sopenharmony_ci			label = "NAND.kernel";
51862306a36Sopenharmony_ci			reg = <0x00200000 0x00800000>;
51962306a36Sopenharmony_ci		};
52062306a36Sopenharmony_ci		partition@9 {
52162306a36Sopenharmony_ci			label = "NAND.file-system";
52262306a36Sopenharmony_ci			reg = <0x00a00000 0x0f600000>;
52362306a36Sopenharmony_ci		};
52462306a36Sopenharmony_ci	};
52562306a36Sopenharmony_ci};
52662306a36Sopenharmony_ci
52762306a36Sopenharmony_ci&usb2_phy1 {
52862306a36Sopenharmony_ci	phy-supply = <&ldousb_reg>;
52962306a36Sopenharmony_ci};
53062306a36Sopenharmony_ci
53162306a36Sopenharmony_ci&usb2_phy2 {
53262306a36Sopenharmony_ci	phy-supply = <&ldousb_reg>;
53362306a36Sopenharmony_ci};
53462306a36Sopenharmony_ci
53562306a36Sopenharmony_ci&gpio7_target {
53662306a36Sopenharmony_ci	ti,no-reset-on-init;
53762306a36Sopenharmony_ci	ti,no-idle-on-init;
53862306a36Sopenharmony_ci};
53962306a36Sopenharmony_ci
54062306a36Sopenharmony_ci&mac_sw {
54162306a36Sopenharmony_ci	status = "okay";
54262306a36Sopenharmony_ci};
54362306a36Sopenharmony_ci
54462306a36Sopenharmony_ci&cpsw_port1 {
54562306a36Sopenharmony_ci	phy-handle = <&ethphy0>;
54662306a36Sopenharmony_ci	phy-mode = "rgmii";
54762306a36Sopenharmony_ci	ti,dual-emac-pvid = <1>;
54862306a36Sopenharmony_ci};
54962306a36Sopenharmony_ci
55062306a36Sopenharmony_ci&cpsw_port2 {
55162306a36Sopenharmony_ci	phy-handle = <&ethphy1>;
55262306a36Sopenharmony_ci	phy-mode = "rgmii";
55362306a36Sopenharmony_ci	ti,dual-emac-pvid = <2>;
55462306a36Sopenharmony_ci};
55562306a36Sopenharmony_ci
55662306a36Sopenharmony_ci&davinci_mdio_sw {
55762306a36Sopenharmony_ci	ethphy0: ethernet-phy@2 {
55862306a36Sopenharmony_ci		reg = <2>;
55962306a36Sopenharmony_ci	};
56062306a36Sopenharmony_ci
56162306a36Sopenharmony_ci	ethphy1: ethernet-phy@3 {
56262306a36Sopenharmony_ci		reg = <3>;
56362306a36Sopenharmony_ci	};
56462306a36Sopenharmony_ci};
56562306a36Sopenharmony_ci
56662306a36Sopenharmony_ci&dcan1 {
56762306a36Sopenharmony_ci	status = "okay";
56862306a36Sopenharmony_ci	pinctrl-names = "default", "sleep", "active";
56962306a36Sopenharmony_ci	pinctrl-0 = <&dcan1_pins_sleep>;
57062306a36Sopenharmony_ci	pinctrl-1 = <&dcan1_pins_sleep>;
57162306a36Sopenharmony_ci	pinctrl-2 = <&dcan1_pins_default>;
57262306a36Sopenharmony_ci};
57362306a36Sopenharmony_ci
57462306a36Sopenharmony_ci&ipu2 {
57562306a36Sopenharmony_ci	status = "okay";
57662306a36Sopenharmony_ci	memory-region = <&ipu2_memory_region>;
57762306a36Sopenharmony_ci};
57862306a36Sopenharmony_ci
57962306a36Sopenharmony_ci&ipu1 {
58062306a36Sopenharmony_ci	status = "okay";
58162306a36Sopenharmony_ci	memory-region = <&ipu1_memory_region>;
58262306a36Sopenharmony_ci};
58362306a36Sopenharmony_ci
58462306a36Sopenharmony_ci&dsp1 {
58562306a36Sopenharmony_ci	status = "okay";
58662306a36Sopenharmony_ci	memory-region = <&dsp1_memory_region>;
58762306a36Sopenharmony_ci};
58862306a36Sopenharmony_ci
58962306a36Sopenharmony_ci&dsp2 {
59062306a36Sopenharmony_ci	status = "okay";
59162306a36Sopenharmony_ci	memory-region = <&dsp2_memory_region>;
59262306a36Sopenharmony_ci};
593