1114abfe1SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
285596034SKevin Hilman/*
385596034SKevin Hilman * Copyright (c) 2016 Andreas Färber
485596034SKevin Hilman * Copyright (c) 2016 BayLibre, Inc.
585596034SKevin Hilman * Author: Kevin Hilman <khilman@kernel.org>
685596034SKevin Hilman */
785596034SKevin Hilman
885596034SKevin Hilman/dts-v1/;
985596034SKevin Hilman
1085596034SKevin Hilman#include "meson-gxbb.dtsi"
11f40d437fSCarlo Caione#include <dt-bindings/gpio/gpio.h>
12ba414bc5SChristian Hewitt#include <dt-bindings/sound/meson-aiu.h>
1385596034SKevin Hilman
1485596034SKevin Hilman/ {
1585596034SKevin Hilman	compatible = "hardkernel,odroid-c2", "amlogic,meson-gxbb";
1685596034SKevin Hilman	model = "Hardkernel ODROID-C2";
1785596034SKevin Hilman
1885596034SKevin Hilman	aliases {
1985596034SKevin Hilman		serial0 = &uart_AO;
20059a58fcSJorge Ramirez-Ortiz		ethernet0 = &ethmac;
2185596034SKevin Hilman	};
2285596034SKevin Hilman
2385596034SKevin Hilman	chosen {
2485596034SKevin Hilman		stdout-path = "serial0:115200n8";
2585596034SKevin Hilman	};
2685596034SKevin Hilman
2785596034SKevin Hilman	memory@0 {
2885596034SKevin Hilman		device_type = "memory";
2985596034SKevin Hilman		reg = <0x0 0x0 0x0 0x80000000>;
3085596034SKevin Hilman	};
31f40d437fSCarlo Caione
325a0803bdSBrian Kim	usb_otg_pwr: regulator-usb-pwrs {
335a0803bdSBrian Kim		compatible = "regulator-fixed";
345a0803bdSBrian Kim
355a0803bdSBrian Kim		regulator-name = "USB_OTG_PWR";
365a0803bdSBrian Kim
375a0803bdSBrian Kim		regulator-min-microvolt = <5000000>;
385a0803bdSBrian Kim		regulator-max-microvolt = <5000000>;
395a0803bdSBrian Kim
4047a8bddbSAnand Moon		/*
4147a8bddbSAnand Moon		 * signal name from schematics: PWREN
4247a8bddbSAnand Moon		 */
435a0803bdSBrian Kim		gpio = <&gpio_ao GPIOAO_5 GPIO_ACTIVE_HIGH>;
445a0803bdSBrian Kim		enable-active-high;
4547a8bddbSAnand Moon		/*
4647a8bddbSAnand Moon		 * signal name from schematics: USB_POWER
4747a8bddbSAnand Moon		 */
4847a8bddbSAnand Moon		vin-supply = <&p5v0>;
495a0803bdSBrian Kim	};
505a0803bdSBrian Kim
51f40d437fSCarlo Caione	leds {
52f40d437fSCarlo Caione		compatible = "gpio-leds";
5308dc0e5dSNeil Armstrong		led-blue {
54f40d437fSCarlo Caione			label = "c2:blue:alive";
55f40d437fSCarlo Caione			gpios = <&gpio_ao GPIOAO_13 GPIO_ACTIVE_LOW>;
56f40d437fSCarlo Caione			linux,default-trigger = "heartbeat";
57f40d437fSCarlo Caione			default-state = "off";
58f40d437fSCarlo Caione		};
59f40d437fSCarlo Caione	};
60ef8d2ffeSKevin Hilman
61fcf19f29SAnand Moon	p5v0: regulator-p5v0 {
62fcf19f29SAnand Moon		compatible = "regulator-fixed";
63fcf19f29SAnand Moon
64fcf19f29SAnand Moon		regulator-name = "P5V0";
65fcf19f29SAnand Moon		regulator-min-microvolt = <5000000>;
66fcf19f29SAnand Moon		regulator-max-microvolt = <5000000>;
67fcf19f29SAnand Moon		regulator-always-on;
68fcf19f29SAnand Moon	};
69fcf19f29SAnand Moon
700ac0be65SAnand Moon	hdmi_p5v0: regulator-hdmi_p5v0 {
710ac0be65SAnand Moon		compatible = "regulator-fixed";
720ac0be65SAnand Moon		regulator-name = "HDMI_P5V0";
730ac0be65SAnand Moon		regulator-min-microvolt = <5000000>;
740ac0be65SAnand Moon		regulator-max-microvolt = <5000000>;
750ac0be65SAnand Moon		/* AP2331SA-7 */
760ac0be65SAnand Moon		vin-supply = <&p5v0>;
770ac0be65SAnand Moon	};
780ac0be65SAnand Moon
79ef8d2ffeSKevin Hilman	tflash_vdd: regulator-tflash_vdd {
80ef8d2ffeSKevin Hilman		compatible = "regulator-fixed";
81ef8d2ffeSKevin Hilman
82ef8d2ffeSKevin Hilman		regulator-name = "TFLASH_VDD";
83ef8d2ffeSKevin Hilman		regulator-min-microvolt = <3300000>;
84ef8d2ffeSKevin Hilman		regulator-max-microvolt = <3300000>;
85ef8d2ffeSKevin Hilman
86df39b523SAnand Moon		/*
87df39b523SAnand Moon		 * signal name from schematics: TFLASH_VDD_EN
88df39b523SAnand Moon		 */
89c34cd35eSNeil Armstrong		gpio = <&gpio GPIOY_12 GPIO_ACTIVE_HIGH>;
90ef8d2ffeSKevin Hilman		enable-active-high;
91df39b523SAnand Moon		/* U16 RT9179GB */
92df39b523SAnand Moon		vin-supply = <&vddio_ao3v3>;
93ef8d2ffeSKevin Hilman	};
94ef8d2ffeSKevin Hilman
95ef8d2ffeSKevin Hilman	tf_io: gpio-regulator-tf_io {
96ef8d2ffeSKevin Hilman		compatible = "regulator-gpio";
97ef8d2ffeSKevin Hilman
98ef8d2ffeSKevin Hilman		regulator-name = "TF_IO";
99ef8d2ffeSKevin Hilman		regulator-min-microvolt = <1800000>;
100ef8d2ffeSKevin Hilman		regulator-max-microvolt = <3300000>;
101ef8d2ffeSKevin Hilman
102ef8d2ffeSKevin Hilman		/*
103ef8d2ffeSKevin Hilman		 * signal name from schematics: TF_3V3N_1V8_EN
104ef8d2ffeSKevin Hilman		 */
105ef8d2ffeSKevin Hilman		gpios = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
106ef8d2ffeSKevin Hilman		gpios-states = <0>;
107ef8d2ffeSKevin Hilman
108f9717178SNeil Armstrong		states = <3300000 0>,
109f9717178SNeil Armstrong			 <1800000 1>;
110df39b523SAnand Moon		/* U12/U13 RT9179GB */
111df39b523SAnand Moon		vin-supply = <&vddio_ao3v3>;
112ef8d2ffeSKevin Hilman	};
113ef8d2ffeSKevin Hilman
114ef8d2ffeSKevin Hilman	vcc1v8: regulator-vcc1v8 {
115ef8d2ffeSKevin Hilman		compatible = "regulator-fixed";
116ef8d2ffeSKevin Hilman		regulator-name = "VCC1V8";
117ef8d2ffeSKevin Hilman		regulator-min-microvolt = <1800000>;
118ef8d2ffeSKevin Hilman		regulator-max-microvolt = <1800000>;
119df39b523SAnand Moon		regulator-always-on;
120df39b523SAnand Moon		/* U18 RT9179GB */
121df39b523SAnand Moon		vin-supply = <&vddio_ao3v3>;
122ef8d2ffeSKevin Hilman	};
123ef8d2ffeSKevin Hilman
124ef8d2ffeSKevin Hilman	vcc3v3: regulator-vcc3v3 {
125ef8d2ffeSKevin Hilman		compatible = "regulator-fixed";
126ef8d2ffeSKevin Hilman		regulator-name = "VCC3V3";
127ef8d2ffeSKevin Hilman		regulator-min-microvolt = <3300000>;
128ef8d2ffeSKevin Hilman		regulator-max-microvolt = <3300000>;
129ef8d2ffeSKevin Hilman	};
130ef8d2ffeSKevin Hilman
13160c5abf6SAnand Moon	vddio_ao1v8: regulator-vddio-ao1v8 {
13260c5abf6SAnand Moon		compatible = "regulator-fixed";
13360c5abf6SAnand Moon		regulator-name = "VDDIO_AO1V8";
13460c5abf6SAnand Moon		regulator-min-microvolt = <1800000>;
13560c5abf6SAnand Moon		regulator-max-microvolt = <1800000>;
13660c5abf6SAnand Moon		regulator-always-on;
13760c5abf6SAnand Moon		/* U17 RT9179GB */
13860c5abf6SAnand Moon		vin-supply = <&p5v0>;
13960c5abf6SAnand Moon	};
14060c5abf6SAnand Moon
14160c5abf6SAnand Moon	vddio_ao3v3: regulator-vddio-ao3v3 {
14260c5abf6SAnand Moon		compatible = "regulator-fixed";
14360c5abf6SAnand Moon		regulator-name = "VDDIO_AO3V3";
14460c5abf6SAnand Moon		regulator-min-microvolt = <3300000>;
14560c5abf6SAnand Moon		regulator-max-microvolt = <3300000>;
14660c5abf6SAnand Moon		regulator-always-on;
14760c5abf6SAnand Moon		/* U11 MP2161GJ-C499 */
14860c5abf6SAnand Moon		vin-supply = <&p5v0>;
14960c5abf6SAnand Moon	};
15060c5abf6SAnand Moon
15160c5abf6SAnand Moon	ddr3_1v5: regulator-ddr3_1v5 {
15260c5abf6SAnand Moon		compatible = "regulator-fixed";
15360c5abf6SAnand Moon		regulator-name = "DDR3_1V5";
15460c5abf6SAnand Moon		regulator-min-microvolt = <1500000>;
15560c5abf6SAnand Moon		regulator-max-microvolt = <1500000>;
15660c5abf6SAnand Moon		regulator-always-on;
15760c5abf6SAnand Moon		/* U15 MP2161GJ-C499 */
15860c5abf6SAnand Moon		vin-supply = <&p5v0>;
15960c5abf6SAnand Moon	};
16060c5abf6SAnand Moon
161ef8d2ffeSKevin Hilman	emmc_pwrseq: emmc-pwrseq {
162ef8d2ffeSKevin Hilman		compatible = "mmc-pwrseq-emmc";
163ef8d2ffeSKevin Hilman		reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
164ef8d2ffeSKevin Hilman	};
165fc19afa1SNeil Armstrong
166fc19afa1SNeil Armstrong	hdmi-connector {
167fc19afa1SNeil Armstrong		compatible = "hdmi-connector";
168fc19afa1SNeil Armstrong		type = "a";
169fc19afa1SNeil Armstrong
170fc19afa1SNeil Armstrong		port {
171fc19afa1SNeil Armstrong			hdmi_connector_in: endpoint {
172fc19afa1SNeil Armstrong				remote-endpoint = <&hdmi_tx_tmds_out>;
173fc19afa1SNeil Armstrong			};
174fc19afa1SNeil Armstrong		};
175fc19afa1SNeil Armstrong	};
176ba414bc5SChristian Hewitt
177ba414bc5SChristian Hewitt	sound {
178ba414bc5SChristian Hewitt		compatible = "amlogic,gx-sound-card";
179933b80edSChristian Hewitt		model = "ODROID-C2";
180ba414bc5SChristian Hewitt		assigned-clocks = <&clkc CLKID_MPLL0>,
181ba414bc5SChristian Hewitt				  <&clkc CLKID_MPLL1>,
182ba414bc5SChristian Hewitt				  <&clkc CLKID_MPLL2>;
183ba414bc5SChristian Hewitt		assigned-clock-parents = <0>, <0>, <0>;
184ba414bc5SChristian Hewitt		assigned-clock-rates = <294912000>,
185ba414bc5SChristian Hewitt				       <270950400>,
186ba414bc5SChristian Hewitt				       <393216000>;
187ba414bc5SChristian Hewitt		status = "okay";
188ba414bc5SChristian Hewitt
189ba414bc5SChristian Hewitt		dai-link-0 {
190ba414bc5SChristian Hewitt			sound-dai = <&aiu AIU_CPU CPU_I2S_FIFO>;
191ba414bc5SChristian Hewitt		};
192ba414bc5SChristian Hewitt
193ba414bc5SChristian Hewitt		dai-link-1 {
194ba414bc5SChristian Hewitt			sound-dai = <&aiu AIU_CPU CPU_I2S_ENCODER>;
195ba414bc5SChristian Hewitt			dai-format = "i2s";
196ba414bc5SChristian Hewitt			mclk-fs = <256>;
197ba414bc5SChristian Hewitt
198ba414bc5SChristian Hewitt			codec-0 {
199ba414bc5SChristian Hewitt				sound-dai = <&aiu AIU_HDMI CTRL_I2S>;
200ba414bc5SChristian Hewitt			};
201ba414bc5SChristian Hewitt		};
202ba414bc5SChristian Hewitt
203ba414bc5SChristian Hewitt		dai-link-2 {
204ba414bc5SChristian Hewitt			sound-dai = <&aiu AIU_HDMI CTRL_OUT>;
205ba414bc5SChristian Hewitt
206ba414bc5SChristian Hewitt			codec-0 {
207ba414bc5SChristian Hewitt				sound-dai = <&hdmi_tx>;
208ba414bc5SChristian Hewitt			};
209ba414bc5SChristian Hewitt		};
210ba414bc5SChristian Hewitt	};
211ba414bc5SChristian Hewitt};
212ba414bc5SChristian Hewitt
213ba414bc5SChristian Hewitt&aiu {
214ba414bc5SChristian Hewitt	status = "okay";
215fc19afa1SNeil Armstrong};
216fc19afa1SNeil Armstrong
217fc19afa1SNeil Armstrong&cec_AO {
218fc19afa1SNeil Armstrong	status = "okay";
219fc19afa1SNeil Armstrong	pinctrl-0 = <&ao_cec_pins>;
220fc19afa1SNeil Armstrong	pinctrl-names = "default";
221fc19afa1SNeil Armstrong	hdmi-phandle = <&hdmi_tx>;
22285596034SKevin Hilman};
22385596034SKevin Hilman
2248c5509f0SKevin Hilman&ethmac {
2258c5509f0SKevin Hilman	status = "okay";
2263be2d9cfSNeil Armstrong	pinctrl-0 = <&eth_rgmii_pins>;
2278c5509f0SKevin Hilman	pinctrl-names = "default";
228feb3cbeaSJerome Brunet	phy-handle = <&eth_phy0>;
229b6ff2721SMartin Blumenstingl	phy-mode = "rgmii";
230b6ff2721SMartin Blumenstingl
231093d23dbSMartin Blumenstingl	amlogic,tx-delay-ns = <2>;
232093d23dbSMartin Blumenstingl
233feb3cbeaSJerome Brunet	mdio {
234feb3cbeaSJerome Brunet		compatible = "snps,dwmac-mdio";
235feb3cbeaSJerome Brunet		#address-cells = <1>;
236feb3cbeaSJerome Brunet		#size-cells = <0>;
237feb3cbeaSJerome Brunet
238feb3cbeaSJerome Brunet		eth_phy0: ethernet-phy@0 {
23950290cfeSMartin Blumenstingl			/* Realtek RTL8211F (0x001cc916) */
240feb3cbeaSJerome Brunet			reg = <0>;
241f29cabf2SMartin Blumenstingl
242f29cabf2SMartin Blumenstingl			reset-assert-us = <10000>;
243c183c406SStefan Agner			reset-deassert-us = <80000>;
244f29cabf2SMartin Blumenstingl			reset-gpios = <&gpio GPIOZ_14 GPIO_ACTIVE_LOW>;
245f29cabf2SMartin Blumenstingl
246b94d22d9SJerome Brunet			interrupt-parent = <&gpio_intc>;
24750290cfeSMartin Blumenstingl			/* MAC_INTR on GPIOZ_15 */
248b94d22d9SJerome Brunet			interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
249feb3cbeaSJerome Brunet		};
250feb3cbeaSJerome Brunet	};
2518c5509f0SKevin Hilman};
2528c5509f0SKevin Hilman
253fc19afa1SNeil Armstrong&hdmi_tx {
254fc19afa1SNeil Armstrong	status = "okay";
255fc19afa1SNeil Armstrong	pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
256fc19afa1SNeil Armstrong	pinctrl-names = "default";
2570ac0be65SAnand Moon	hdmi-supply = <&hdmi_p5v0>;
258fc19afa1SNeil Armstrong};
259fc19afa1SNeil Armstrong
260fc19afa1SNeil Armstrong&hdmi_tx_tmds_port {
261fc19afa1SNeil Armstrong	hdmi_tx_tmds_out: endpoint {
262fc19afa1SNeil Armstrong		remote-endpoint = <&hdmi_connector_in>;
263fc19afa1SNeil Armstrong	};
264fc19afa1SNeil Armstrong};
265fc19afa1SNeil Armstrong
2663b69bdbfSAndreas Färber&i2c_A {
2673b69bdbfSAndreas Färber	status = "okay";
2683b69bdbfSAndreas Färber	pinctrl-0 = <&i2c_a_pins>;
2693b69bdbfSAndreas Färber	pinctrl-names = "default";
2703b69bdbfSAndreas Färber};
2713b69bdbfSAndreas Färber
2723b69bdbfSAndreas Färber&ir {
2733b69bdbfSAndreas Färber	status = "okay";
2743b69bdbfSAndreas Färber	pinctrl-0 = <&remote_input_ao_pins>;
2753b69bdbfSAndreas Färber	pinctrl-names = "default";
27667c4dd59SChristian Hewitt	linux,rc-map-name = "rc-odroid";
2773b69bdbfSAndreas Färber};
2783b69bdbfSAndreas Färber
2792165b006SNeil Armstrong&gpio_ao {
280b03c7d64SNeil Armstrong	gpio-line-names = "UART TX", "UART RX", "VCCK En", "TF 3V3/1V8 En",
281b03c7d64SNeil Armstrong			  "USB HUB nRESET", "USB OTG Power En",
282b03c7d64SNeil Armstrong			  "J7 Header Pin2", "IR In", "J7 Header Pin4",
283b03c7d64SNeil Armstrong			  "J7 Header Pin6", "J7 Header Pin5", "J7 Header Pin7",
284e43f20e8SJerome Brunet			  "HDMI CEC", "SYS LED",
285e43f20e8SJerome Brunet			  /* GPIO_TEST_N */
286e43f20e8SJerome Brunet			  "";
287b03c7d64SNeil Armstrong};
288b03c7d64SNeil Armstrong
2892165b006SNeil Armstrong&gpio {
290b03c7d64SNeil Armstrong	gpio-line-names = /* Bank GPIOZ */
291b03c7d64SNeil Armstrong			  "Eth MDIO", "Eth MDC", "Eth RGMII RX Clk",
292b03c7d64SNeil Armstrong			  "Eth RX DV", "Eth RX D0", "Eth RX D1", "Eth RX D2",
293b03c7d64SNeil Armstrong			  "Eth RX D3", "Eth RGMII TX Clk", "Eth TX En",
294b03c7d64SNeil Armstrong			  "Eth TX D0", "Eth TX D1", "Eth TX D2", "Eth TX D3",
295b03c7d64SNeil Armstrong			  "Eth PHY nRESET", "Eth PHY Intc",
296b03c7d64SNeil Armstrong			  /* Bank GPIOH */
297b03c7d64SNeil Armstrong			  "HDMI HPD", "HDMI DDC SDA", "HDMI DDC SCL", "",
298b03c7d64SNeil Armstrong			  /* Bank BOOT */
299b03c7d64SNeil Armstrong			  "eMMC D0", "eMMC D1", "eMMC D2", "eMMC D3", "eMMC D4",
300b03c7d64SNeil Armstrong			  "eMMC D5", "eMMC D6", "eMMC D7", "eMMC Clk",
301b03c7d64SNeil Armstrong			  "eMMC Reset", "eMMC CMD",
302b03c7d64SNeil Armstrong			  "", "", "", "", "", "", "",
303b03c7d64SNeil Armstrong			  /* Bank CARD */
304b03c7d64SNeil Armstrong			  "SDCard D1", "SDCard D0", "SDCard CLK", "SDCard CMD",
305b03c7d64SNeil Armstrong			  "SDCard D3", "SDCard D2", "SDCard Det",
306b03c7d64SNeil Armstrong			  /* Bank GPIODV */
307b03c7d64SNeil Armstrong			  "", "", "", "", "", "", "", "", "", "", "", "", "",
308b03c7d64SNeil Armstrong			  "", "", "", "", "", "", "", "", "", "", "",
309b03c7d64SNeil Armstrong			  "I2C A SDA", "I2C A SCK", "I2C B SDA", "I2C B SCK",
310b03c7d64SNeil Armstrong			  "PWM D", "PWM B",
311b03c7d64SNeil Armstrong			  /* Bank GPIOY */
312b03c7d64SNeil Armstrong			  "Revision Bit0", "Revision Bit1", "",
313b03c7d64SNeil Armstrong			  "J2 Header Pin35", "", "", "", "J2 Header Pin36",
314b03c7d64SNeil Armstrong			  "J2 Header Pin31", "", "", "", "TF VDD En",
315b03c7d64SNeil Armstrong			  "J2 Header Pin32", "J2 Header Pin26", "", "",
316b03c7d64SNeil Armstrong			  /* Bank GPIOX */
317b03c7d64SNeil Armstrong			  "J2 Header Pin29", "J2 Header Pin24",
318b03c7d64SNeil Armstrong			  "J2 Header Pin23", "J2 Header Pin22",
319b03c7d64SNeil Armstrong			  "J2 Header Pin21", "J2 Header Pin18",
320b03c7d64SNeil Armstrong			  "J2 Header Pin33", "J2 Header Pin19",
321b03c7d64SNeil Armstrong			  "J2 Header Pin16", "J2 Header Pin15",
322b03c7d64SNeil Armstrong			  "J2 Header Pin12", "J2 Header Pin13",
323b03c7d64SNeil Armstrong			  "J2 Header Pin8", "J2 Header Pin10",
324b03c7d64SNeil Armstrong			  "", "", "", "", "",
325e43f20e8SJerome Brunet			  "J2 Header Pin11", "", "J2 Header Pin7", "",
326b03c7d64SNeil Armstrong			  /* Bank GPIOCLK */
327e43f20e8SJerome Brunet			  "", "", "", "";
328b03c7d64SNeil Armstrong};
329b03c7d64SNeil Armstrong
33062158c6aSHeiner Kallweit&saradc {
33162158c6aSHeiner Kallweit	status = "okay";
33262158c6aSHeiner Kallweit	vref-supply = <&vcc1v8>;
33362158c6aSHeiner Kallweit};
33462158c6aSHeiner Kallweit
3353b69bdbfSAndreas Färber&scpi_clocks {
3363b69bdbfSAndreas Färber	status = "disabled";
3373b69bdbfSAndreas Färber};
3383b69bdbfSAndreas Färber
339ef8d2ffeSKevin Hilman/* SD */
340ef8d2ffeSKevin Hilman&sd_emmc_b {
341ef8d2ffeSKevin Hilman	status = "okay";
342ef8d2ffeSKevin Hilman	pinctrl-0 = <&sdcard_pins>;
34367e7607fSJerome Brunet	pinctrl-1 = <&sdcard_clk_gate_pins>;
34467e7607fSJerome Brunet	pinctrl-names = "default", "clk-gate";
345ef8d2ffeSKevin Hilman
346ef8d2ffeSKevin Hilman	bus-width = <4>;
347ef8d2ffeSKevin Hilman	cap-sd-highspeed;
3487e2b33ffSJerome Brunet	sd-uhs-sdr12;
3497e2b33ffSJerome Brunet	sd-uhs-sdr25;
3507e2b33ffSJerome Brunet	sd-uhs-sdr50;
3517e2b33ffSJerome Brunet	sd-uhs-ddr50;
352ef8d2ffeSKevin Hilman	max-frequency = <100000000>;
353ef8d2ffeSKevin Hilman	disable-wp;
354ef8d2ffeSKevin Hilman
355f29200c8SLoys Ollivier	cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
356ef8d2ffeSKevin Hilman
357ef8d2ffeSKevin Hilman	vmmc-supply = <&tflash_vdd>;
358ef8d2ffeSKevin Hilman	vqmmc-supply = <&tf_io>;
359ef8d2ffeSKevin Hilman};
360ef8d2ffeSKevin Hilman
361ef8d2ffeSKevin Hilman/* eMMC */
362ef8d2ffeSKevin Hilman&sd_emmc_c {
363ef8d2ffeSKevin Hilman	status = "okay";
364ab36be66SNeil Armstrong	pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
36567e7607fSJerome Brunet	pinctrl-1 = <&emmc_clk_gate_pins>;
36667e7607fSJerome Brunet	pinctrl-names = "default", "clk-gate";
367ef8d2ffeSKevin Hilman
368ef8d2ffeSKevin Hilman	bus-width = <8>;
3697e2b33ffSJerome Brunet	max-frequency = <200000000>;
370ef8d2ffeSKevin Hilman	non-removable;
371ef8d2ffeSKevin Hilman	disable-wp;
372ef8d2ffeSKevin Hilman	cap-mmc-highspeed;
373ef8d2ffeSKevin Hilman	mmc-ddr-1_8v;
374ef8d2ffeSKevin Hilman	mmc-hs200-1_8v;
375ef8d2ffeSKevin Hilman
376ef8d2ffeSKevin Hilman	mmc-pwrseq = <&emmc_pwrseq>;
377ef8d2ffeSKevin Hilman	vmmc-supply = <&vcc3v3>;
378ef8d2ffeSKevin Hilman	vqmmc-supply = <&vcc1v8>;
379ef8d2ffeSKevin Hilman};
3803b69bdbfSAndreas Färber
3813b69bdbfSAndreas Färber&uart_AO {
3823b69bdbfSAndreas Färber	status = "okay";
3833b69bdbfSAndreas Färber	pinctrl-0 = <&uart_ao_a_pins>;
3843b69bdbfSAndreas Färber	pinctrl-names = "default";
3853b69bdbfSAndreas Färber};
3863b69bdbfSAndreas Färber
3873b69bdbfSAndreas Färber&usb0_phy {
38872c9b5f6SAnand Moon	status = "disabled";
3893b69bdbfSAndreas Färber	phy-supply = <&usb_otg_pwr>;
3903b69bdbfSAndreas Färber};
3913b69bdbfSAndreas Färber
3923b69bdbfSAndreas Färber&usb1_phy {
3933b69bdbfSAndreas Färber	status = "okay";
394e841ec95SNeil Armstrong	phy-supply = <&usb_otg_pwr>;
3953b69bdbfSAndreas Färber};
3963b69bdbfSAndreas Färber
3973b69bdbfSAndreas Färber&usb0 {
39872c9b5f6SAnand Moon	status = "disabled";
3993b69bdbfSAndreas Färber};
4003b69bdbfSAndreas Färber
4013b69bdbfSAndreas Färber&usb1 {
402*f24859bbSAnand Moon	dr_mode = "host";
403*f24859bbSAnand Moon	#address-cells = <1>;
404*f24859bbSAnand Moon	#size-cells = <0>;
4053b69bdbfSAndreas Färber	status = "okay";
406*f24859bbSAnand Moon
407*f24859bbSAnand Moon	hub@1 {
408*f24859bbSAnand Moon		/* Genesys Logic GL852G USB 2.0 hub */
409*f24859bbSAnand Moon		compatible = "usb5e3,610";
410*f24859bbSAnand Moon		reg = <1>;
411*f24859bbSAnand Moon		vdd-supply = <&p5v0>;
412*f24859bbSAnand Moon		reset-gpio = <&gpio_ao GPIOAO_4 GPIO_ACTIVE_LOW>;
413*f24859bbSAnand Moon	};
4143b69bdbfSAndreas Färber};
415