xref: /freebsd/sys/contrib/device-tree/src/arm/ti/omap/dra71-evm.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Copyright (C) 2016 Texas Instruments Incorporated - https://www.ti.com/
4f126890aSEmmanuel Vadot */
5f126890aSEmmanuel Vadot
6f126890aSEmmanuel Vadot#include "dra71x.dtsi"
7f126890aSEmmanuel Vadot#include "dra7-mmc-iodelay.dtsi"
8f126890aSEmmanuel Vadot#include "dra72x-mmc-iodelay.dtsi"
9f126890aSEmmanuel Vadot#include <dt-bindings/net/ti-dp83867.h>
10f126890aSEmmanuel Vadot
11f126890aSEmmanuel Vadot/ {
12f126890aSEmmanuel Vadot	compatible = "ti,dra718-evm", "ti,dra718", "ti,dra722", "ti,dra72", "ti,dra7";
13f126890aSEmmanuel Vadot	model = "TI DRA718 EVM";
14f126890aSEmmanuel Vadot
15f126890aSEmmanuel Vadot	memory {
16f126890aSEmmanuel Vadot		device_type = "memory";
17f126890aSEmmanuel Vadot		reg = <0x0 0x80000000 0x0 0x80000000>; /* 2GB */
18f126890aSEmmanuel Vadot	};
19f126890aSEmmanuel Vadot
20f126890aSEmmanuel Vadot	reserved-memory {
21f126890aSEmmanuel Vadot		#address-cells = <2>;
22f126890aSEmmanuel Vadot		#size-cells = <2>;
23f126890aSEmmanuel Vadot		ranges;
24f126890aSEmmanuel Vadot
25f126890aSEmmanuel Vadot		ipu2_memory_region: ipu2-memory@95800000 {
26f126890aSEmmanuel Vadot			compatible = "shared-dma-pool";
27f126890aSEmmanuel Vadot			reg = <0x0 0x95800000 0x0 0x3800000>;
28f126890aSEmmanuel Vadot			reusable;
29f126890aSEmmanuel Vadot			status = "okay";
30f126890aSEmmanuel Vadot		};
31f126890aSEmmanuel Vadot
32f126890aSEmmanuel Vadot		dsp1_memory_region: dsp1-memory@99000000 {
33f126890aSEmmanuel Vadot			compatible = "shared-dma-pool";
34f126890aSEmmanuel Vadot			reg = <0x0 0x99000000 0x0 0x4000000>;
35f126890aSEmmanuel Vadot			reusable;
36f126890aSEmmanuel Vadot			status = "okay";
37f126890aSEmmanuel Vadot		};
38f126890aSEmmanuel Vadot
39f126890aSEmmanuel Vadot		ipu1_memory_region: ipu1-memory@9d000000 {
40f126890aSEmmanuel Vadot			compatible = "shared-dma-pool";
41f126890aSEmmanuel Vadot			reg = <0x0 0x9d000000 0x0 0x2000000>;
42f126890aSEmmanuel Vadot			reusable;
43f126890aSEmmanuel Vadot			status = "okay";
44f126890aSEmmanuel Vadot		};
45f126890aSEmmanuel Vadot	};
46f126890aSEmmanuel Vadot
47f126890aSEmmanuel Vadot	vpo_sd_1v8_3v3: gpio-regulator-TPS74801 {
48f126890aSEmmanuel Vadot		compatible = "regulator-gpio";
49f126890aSEmmanuel Vadot
50f126890aSEmmanuel Vadot		regulator-name = "vddshv8";
51f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
52f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
53f126890aSEmmanuel Vadot		regulator-boot-on;
54f126890aSEmmanuel Vadot		vin-supply = <&evm_5v0>;
55f126890aSEmmanuel Vadot
56f126890aSEmmanuel Vadot		gpios = <&gpio7 11 GPIO_ACTIVE_HIGH>;
57f126890aSEmmanuel Vadot		states = <1800000 0x0
58f126890aSEmmanuel Vadot			  3300000 0x1>;
59f126890aSEmmanuel Vadot	};
60f126890aSEmmanuel Vadot
61f126890aSEmmanuel Vadot	evm_1v8_sw: fixedregulator-evm_1v8 {
62f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
63f126890aSEmmanuel Vadot		regulator-name = "evm_1v8";
64f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
65f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
66f126890aSEmmanuel Vadot		vin-supply = <&lp8732_buck0_reg>;
67f126890aSEmmanuel Vadot		regulator-always-on;
68f126890aSEmmanuel Vadot		regulator-boot-on;
69f126890aSEmmanuel Vadot	};
70f126890aSEmmanuel Vadot
71f126890aSEmmanuel Vadot	poweroff: gpio-poweroff {
72f126890aSEmmanuel Vadot		compatible = "gpio-poweroff";
73f126890aSEmmanuel Vadot		gpios = <&gpio7 30 GPIO_ACTIVE_HIGH>;
74f126890aSEmmanuel Vadot		input;
75f126890aSEmmanuel Vadot	};
76f126890aSEmmanuel Vadot};
77f126890aSEmmanuel Vadot
78f126890aSEmmanuel Vadot&i2c1 {
79f126890aSEmmanuel Vadot	status = "okay";
80f126890aSEmmanuel Vadot	clock-frequency = <400000>;
81f126890aSEmmanuel Vadot
82f126890aSEmmanuel Vadot	lp8733: lp8733@60 {
83f126890aSEmmanuel Vadot		compatible = "ti,lp8733";
84f126890aSEmmanuel Vadot		reg = <0x60>;
85f126890aSEmmanuel Vadot
86f126890aSEmmanuel Vadot		buck0-in-supply =<&vsys_3v3>;
87f126890aSEmmanuel Vadot		buck1-in-supply =<&vsys_3v3>;
88f126890aSEmmanuel Vadot		ldo0-in-supply =<&evm_5v0>;
89f126890aSEmmanuel Vadot		ldo1-in-supply =<&evm_5v0>;
90f126890aSEmmanuel Vadot
91f126890aSEmmanuel Vadot		lp8733_regulators: regulators {
92f126890aSEmmanuel Vadot			lp8733_buck0_reg: buck0 {
93f126890aSEmmanuel Vadot				/* FB_B0 -> LP8733-BUCK1 - VPO_S1_AVS - VDD_CORE_AVS (core, mpu, gpu) */
94f126890aSEmmanuel Vadot				regulator-name = "lp8733-buck0";
95f126890aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
96f126890aSEmmanuel Vadot				regulator-max-microvolt = <1250000>;
97f126890aSEmmanuel Vadot				regulator-always-on;
98f126890aSEmmanuel Vadot				regulator-boot-on;
99f126890aSEmmanuel Vadot			};
100f126890aSEmmanuel Vadot
101f126890aSEmmanuel Vadot			lp8733_buck1_reg: buck1 {
102f126890aSEmmanuel Vadot				/* FB_B1 -> LP8733-BUCK2 - VPO_S2_AVS - VDD_DSP_AVS (DSP/eve/iva) */
103f126890aSEmmanuel Vadot				regulator-name = "lp8733-buck1";
104f126890aSEmmanuel Vadot				regulator-min-microvolt = <850000>;
105f126890aSEmmanuel Vadot				regulator-max-microvolt = <1250000>;
106f126890aSEmmanuel Vadot				regulator-boot-on;
107f126890aSEmmanuel Vadot				regulator-always-on;
108f126890aSEmmanuel Vadot			};
109f126890aSEmmanuel Vadot
110f126890aSEmmanuel Vadot			lp8733_ldo0_reg: ldo0 {
111f126890aSEmmanuel Vadot				/* LDO0 -> LP8733-LDO1 - VPO_L1_3V3 - VDDSHV8 (optional) */
112f126890aSEmmanuel Vadot				regulator-name = "lp8733-ldo0";
113f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
114f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
115f126890aSEmmanuel Vadot				regulator-boot-on;
116f126890aSEmmanuel Vadot				regulator-always-on;
117f126890aSEmmanuel Vadot			};
118f126890aSEmmanuel Vadot
119f126890aSEmmanuel Vadot			lp8733_ldo1_reg: ldo1 {
120f126890aSEmmanuel Vadot				/* LDO1 -> LP8733-LDO2 - VPO_L2_3V3 - VDDA_USB3V3 */
121f126890aSEmmanuel Vadot				regulator-name = "lp8733-ldo1";
122f126890aSEmmanuel Vadot				regulator-min-microvolt = <3300000>;
123f126890aSEmmanuel Vadot				regulator-max-microvolt = <3300000>;
124f126890aSEmmanuel Vadot				regulator-always-on;
125f126890aSEmmanuel Vadot				regulator-boot-on;
126f126890aSEmmanuel Vadot			};
127f126890aSEmmanuel Vadot		};
128f126890aSEmmanuel Vadot	};
129f126890aSEmmanuel Vadot
130f126890aSEmmanuel Vadot	lp8732: lp8732@61 {
131f126890aSEmmanuel Vadot		compatible = "ti,lp8732";
132f126890aSEmmanuel Vadot		reg = <0x61>;
133f126890aSEmmanuel Vadot
134f126890aSEmmanuel Vadot		buck0-in-supply =<&vsys_3v3>;
135f126890aSEmmanuel Vadot		buck1-in-supply =<&vsys_3v3>;
136f126890aSEmmanuel Vadot		ldo0-in-supply =<&vsys_3v3>;
137f126890aSEmmanuel Vadot		ldo1-in-supply =<&vsys_3v3>;
138f126890aSEmmanuel Vadot
139f126890aSEmmanuel Vadot		lp8732_regulators: regulators {
140f126890aSEmmanuel Vadot			lp8732_buck0_reg: buck0 {
141f126890aSEmmanuel Vadot				/* FB_B0 -> LP8732-BUCK1 - VPO_S3_1V8 - VDDS_1V8 */
142f126890aSEmmanuel Vadot				regulator-name = "lp8732-buck0";
143f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
144f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
145f126890aSEmmanuel Vadot				regulator-always-on;
146f126890aSEmmanuel Vadot				regulator-boot-on;
147f126890aSEmmanuel Vadot			};
148f126890aSEmmanuel Vadot
149f126890aSEmmanuel Vadot			lp8732_buck1_reg: buck1 {
150f126890aSEmmanuel Vadot				/* FB_B1 -> LP8732-BUCK2 - VPO_S4_DDR - VDD_DDR_1V35 */
151f126890aSEmmanuel Vadot				regulator-name = "lp8732-buck1";
152f126890aSEmmanuel Vadot				regulator-min-microvolt = <1350000>;
153f126890aSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
154f126890aSEmmanuel Vadot				regulator-boot-on;
155f126890aSEmmanuel Vadot				regulator-always-on;
156f126890aSEmmanuel Vadot			};
157f126890aSEmmanuel Vadot
158f126890aSEmmanuel Vadot			lp8732_ldo0_reg: ldo0 {
159f126890aSEmmanuel Vadot				/* LDO0 -> LP8732-LDO1 - VPO_L3_1V8 - VDA_1V8_PLL */
160f126890aSEmmanuel Vadot				regulator-name = "lp8732-ldo0";
161f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
162f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
163f126890aSEmmanuel Vadot				regulator-boot-on;
164f126890aSEmmanuel Vadot				regulator-always-on;
165f126890aSEmmanuel Vadot			};
166f126890aSEmmanuel Vadot
167f126890aSEmmanuel Vadot			lp8732_ldo1_reg: ldo1 {
168f126890aSEmmanuel Vadot				/* LDO1 -> LP8732-LDO2 - VPO_L4_1V8 - VDA_1V8_PHY */
169f126890aSEmmanuel Vadot				regulator-name = "lp8732-ldo1";
170f126890aSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
171f126890aSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
172f126890aSEmmanuel Vadot				regulator-always-on;
173f126890aSEmmanuel Vadot				regulator-boot-on;
174f126890aSEmmanuel Vadot			};
175f126890aSEmmanuel Vadot		};
176f126890aSEmmanuel Vadot	};
177f126890aSEmmanuel Vadot};
178f126890aSEmmanuel Vadot
179f126890aSEmmanuel Vadot&pcf_lcd {
180f126890aSEmmanuel Vadot	interrupt-parent = <&gpio7>;
181f126890aSEmmanuel Vadot	interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
182f126890aSEmmanuel Vadot};
183f126890aSEmmanuel Vadot
184f126890aSEmmanuel Vadot&pcf_gpio_21 {
185f126890aSEmmanuel Vadot	interrupt-parent = <&gpio7>;
186f126890aSEmmanuel Vadot	interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
187f126890aSEmmanuel Vadot};
188f126890aSEmmanuel Vadot
189f126890aSEmmanuel Vadot&pcf_hdmi {
190f126890aSEmmanuel Vadot	hdmi-i2c-disable-hog {
191f126890aSEmmanuel Vadot		/*
192f126890aSEmmanuel Vadot		 * PM_OEn to High: Disable routing I2C3 to PM_I2C
193f126890aSEmmanuel Vadot		 * With this PM_SEL(p3) should not matter
194f126890aSEmmanuel Vadot		 */
195f126890aSEmmanuel Vadot		gpio-hog;
196f126890aSEmmanuel Vadot		gpios = <0 GPIO_ACTIVE_LOW>;
197f126890aSEmmanuel Vadot		output-high;
198f126890aSEmmanuel Vadot		line-name = "pm_oe_n";
199f126890aSEmmanuel Vadot	};
200f126890aSEmmanuel Vadot};
201f126890aSEmmanuel Vadot
202f126890aSEmmanuel Vadot&mmc1 {
203f126890aSEmmanuel Vadot	pinctrl-names = "default", "hs", "sdr12", "sdr25", "sdr50", "ddr50", "sdr104";
204f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc1_pins_default_no_clk_pu>;
205f126890aSEmmanuel Vadot	pinctrl-1 = <&mmc1_pins_hs>;
206f126890aSEmmanuel Vadot	pinctrl-2 = <&mmc1_pins_sdr12>;
207f126890aSEmmanuel Vadot	pinctrl-3 = <&mmc1_pins_sdr25>;
208f126890aSEmmanuel Vadot	pinctrl-4 = <&mmc1_pins_sdr50>;
209f126890aSEmmanuel Vadot	pinctrl-5 = <&mmc1_pins_ddr50_rev20 &mmc1_iodelay_ddr50_conf>;
210f126890aSEmmanuel Vadot	pinctrl-6 = <&mmc1_pins_sdr104 &mmc1_iodelay_sdr104_rev20_conf>;
211f126890aSEmmanuel Vadot	vqmmc-supply = <&vpo_sd_1v8_3v3>;
212f126890aSEmmanuel Vadot};
213f126890aSEmmanuel Vadot
214f126890aSEmmanuel Vadot&mmc2 {
215f126890aSEmmanuel Vadot	pinctrl-names = "default", "hs", "ddr_1_8v", "hs200_1_8v";
216f126890aSEmmanuel Vadot	pinctrl-0 = <&mmc2_pins_default>;
217f126890aSEmmanuel Vadot	pinctrl-1 = <&mmc2_pins_hs>;
218f126890aSEmmanuel Vadot	pinctrl-2 = <&mmc2_pins_ddr_rev20 &mmc2_iodelay_ddr_conf>;
219f126890aSEmmanuel Vadot	pinctrl-3 = <&mmc2_pins_hs200 &mmc2_iodelay_hs200_rev20_conf>;
220f126890aSEmmanuel Vadot	vmmc-supply = <&evm_1v8_sw>;
221f126890aSEmmanuel Vadot	vqmmc-supply = <&evm_1v8_sw>;
222f126890aSEmmanuel Vadot};
223f126890aSEmmanuel Vadot
224f126890aSEmmanuel Vadot&mac_sw {
225f126890aSEmmanuel Vadot	mode-gpios = <&pcf_gpio_21 4 GPIO_ACTIVE_LOW>,
226f126890aSEmmanuel Vadot		     <&pcf_hdmi 9 GPIO_ACTIVE_LOW>,	/* P11 */
227f126890aSEmmanuel Vadot		     <&pcf_hdmi 10 GPIO_ACTIVE_LOW>;	/* P12 */
228f126890aSEmmanuel Vadot	status = "okay";
229f126890aSEmmanuel Vadot};
230f126890aSEmmanuel Vadot
231f126890aSEmmanuel Vadot&cpsw_port1 {
232f126890aSEmmanuel Vadot	phy-handle = <&dp83867_0>;
233f126890aSEmmanuel Vadot	phy-mode = "rgmii-id";
234f126890aSEmmanuel Vadot	ti,dual-emac-pvid = <1>;
235f126890aSEmmanuel Vadot};
236f126890aSEmmanuel Vadot
237f126890aSEmmanuel Vadot&cpsw_port2 {
238f126890aSEmmanuel Vadot	phy-handle = <&dp83867_1>;
239f126890aSEmmanuel Vadot	phy-mode = "rgmii-id";
240f126890aSEmmanuel Vadot	ti,dual-emac-pvid = <2>;
241f126890aSEmmanuel Vadot};
242f126890aSEmmanuel Vadot
243f126890aSEmmanuel Vadot&davinci_mdio_sw {
244f126890aSEmmanuel Vadot	dp83867_0: ethernet-phy@2 {
245f126890aSEmmanuel Vadot		reg = <2>;
246f126890aSEmmanuel Vadot		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
247f126890aSEmmanuel Vadot		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
248f126890aSEmmanuel Vadot		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
249f126890aSEmmanuel Vadot		ti,min-output-impedance;
250f126890aSEmmanuel Vadot		ti,dp83867-rxctrl-strap-quirk;
251f126890aSEmmanuel Vadot	};
252f126890aSEmmanuel Vadot
253f126890aSEmmanuel Vadot	dp83867_1: ethernet-phy@3 {
254f126890aSEmmanuel Vadot		reg = <3>;
255f126890aSEmmanuel Vadot		ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_25_NS>;
256f126890aSEmmanuel Vadot		ti,tx-internal-delay = <DP83867_RGMIIDCTL_250_PS>;
257f126890aSEmmanuel Vadot		ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_8_B_NIB>;
258f126890aSEmmanuel Vadot		ti,min-output-impedance;
259f126890aSEmmanuel Vadot		ti,dp83867-rxctrl-strap-quirk;
260f126890aSEmmanuel Vadot	};
261f126890aSEmmanuel Vadot};
262f126890aSEmmanuel Vadot
263f126890aSEmmanuel Vadot/* No Sata on this device */
264f126890aSEmmanuel Vadot&sata_phy {
265f126890aSEmmanuel Vadot	status = "disabled";
266f126890aSEmmanuel Vadot};
267f126890aSEmmanuel Vadot
268f126890aSEmmanuel Vadot&sata {
269f126890aSEmmanuel Vadot	status = "disabled";
270f126890aSEmmanuel Vadot};
271f126890aSEmmanuel Vadot
272f126890aSEmmanuel Vadot/* No RTC on this device */
273f126890aSEmmanuel Vadot&rtc {
274f126890aSEmmanuel Vadot	status = "disabled";
275f126890aSEmmanuel Vadot};
276f126890aSEmmanuel Vadot
277f126890aSEmmanuel Vadot&usb2_phy1 {
278f126890aSEmmanuel Vadot	phy-supply = <&lp8733_ldo1_reg>;
279f126890aSEmmanuel Vadot};
280f126890aSEmmanuel Vadot
281f126890aSEmmanuel Vadot&usb2_phy2 {
282f126890aSEmmanuel Vadot	phy-supply = <&lp8733_ldo1_reg>;
283f126890aSEmmanuel Vadot};
284f126890aSEmmanuel Vadot
285f126890aSEmmanuel Vadot&dss {
286f126890aSEmmanuel Vadot	/* Supplied by VDA_1V8_PLL */
287f126890aSEmmanuel Vadot	vdda_video-supply = <&lp8732_ldo0_reg>;
288f126890aSEmmanuel Vadot};
289f126890aSEmmanuel Vadot
290f126890aSEmmanuel Vadot&hdmi {
291f126890aSEmmanuel Vadot	/* Supplied by VDA_1V8_PHY */
292f126890aSEmmanuel Vadot	vdda_video-supply = <&lp8732_ldo1_reg>;
293f126890aSEmmanuel Vadot};
294f126890aSEmmanuel Vadot
295f126890aSEmmanuel Vadot&extcon_usb1 {
296*8d13bc63SEmmanuel Vadot	vbus-gpios = <&pcf_lcd 14 GPIO_ACTIVE_HIGH>;
297f126890aSEmmanuel Vadot};
298f126890aSEmmanuel Vadot
299f126890aSEmmanuel Vadot&extcon_usb2 {
300*8d13bc63SEmmanuel Vadot	vbus-gpios = <&pcf_lcd 15 GPIO_ACTIVE_HIGH>;
301f126890aSEmmanuel Vadot};
302f126890aSEmmanuel Vadot
303f126890aSEmmanuel Vadot&ipu2 {
304f126890aSEmmanuel Vadot	status = "okay";
305f126890aSEmmanuel Vadot	memory-region = <&ipu2_memory_region>;
306f126890aSEmmanuel Vadot};
307f126890aSEmmanuel Vadot
308f126890aSEmmanuel Vadot&ipu1 {
309f126890aSEmmanuel Vadot	status = "okay";
310f126890aSEmmanuel Vadot	memory-region = <&ipu1_memory_region>;
311f126890aSEmmanuel Vadot};
312f126890aSEmmanuel Vadot
313f126890aSEmmanuel Vadot&dsp1 {
314f126890aSEmmanuel Vadot	status = "okay";
315f126890aSEmmanuel Vadot	memory-region = <&dsp1_memory_region>;
316f126890aSEmmanuel Vadot};
317