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