1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2020 Engicam srl
4 * Copyright (c) 2020 Amarula Solutions
5 * Copyright (c) 2020 Amarula Solutions(India)
6 */
7
8/ {
9	aliases {
10		ethernet0 = &gmac;
11		mmc1 = &sdmmc;
12		mmc2 = &sdio;
13	};
14
15	vcc5v0_sys: regulator-vcc5v0-sys {
16		compatible = "regulator-fixed";
17		regulator-name = "vcc5v0_sys";	/* +5V */
18		regulator-always-on;
19		regulator-boot-on;
20		regulator-min-microvolt = <5000000>;
21		regulator-max-microvolt = <5000000>;
22	};
23
24	sdio_pwrseq: sdio-pwrseq {
25		compatible = "mmc-pwrseq-simple";
26		clocks = <&xin32k>;
27		clock-names = "ext_clock";
28		post-power-on-delay-ms = <80>;
29		pinctrl-names = "default";
30		pinctrl-0 = <&wifi_enable_h>;
31	};
32
33	vcc3v3_btreg: vcc3v3-btreg {
34		compatible = "regulator-fixed";
35		enable-active-high;
36		pinctrl-names = "default";
37		pinctrl-0 = <&bt_enable_h>;
38		regulator-name = "btreg-gpio-supply";
39		regulator-min-microvolt = <3300000>;
40		regulator-max-microvolt = <3300000>;
41		regulator-always-on;
42	};
43
44	vcc3v3_rf_aux_mod: regulator-vcc3v3-rf-aux-mod {
45		compatible = "regulator-fixed";
46		regulator-name = "vcc3v3_rf_aux_mod";
47		regulator-min-microvolt = <3300000>;
48		regulator-max-microvolt = <3300000>;
49		regulator-always-on;
50		regulator-boot-on;
51		vin-supply = <&vcc5v0_sys>;
52	};
53
54	xin32k: xin32k {
55		compatible = "fixed-clock";
56		#clock-cells = <0>;
57		clock-frequency = <32768>;
58		clock-output-names = "xin32k";
59	};
60};
61
62&sdio {
63	#address-cells = <1>;
64	#size-cells = <0>;
65	bus-width = <4>;
66	clock-frequency = <50000000>;
67	cap-sdio-irq;
68	cap-sd-highspeed;
69	keep-power-in-suspend;
70	mmc-pwrseq = <&sdio_pwrseq>;
71	non-removable;
72	sd-uhs-sdr104;
73	status = "okay";
74
75	brcmf: wifi@1 {
76		compatible = "brcm,bcm4329-fmac";
77		reg = <1>;
78	};
79};
80
81&gmac {
82	clock_in_out = "output";
83	phy-supply = <&vcc_3v3>;	/* +3V3_SOM */
84	snps,reset-active-low;
85	snps,reset-delays-us = <0 50000 50000>;
86	snps,reset-gpio = <&gpio2 RK_PB5 GPIO_ACTIVE_HIGH>;
87	status = "okay";
88};
89
90&pwm0 {
91	status = "okay";
92};
93
94&sdmmc {
95	cap-sd-highspeed;
96	card-detect-delay = <800>;
97	vmmc-supply = <&vcc_3v3>;	/* +3V3_SOM */
98	vqmmc-supply = <&vcc_3v3>;
99	status = "okay";
100};
101
102&u2phy {
103	status = "okay";
104
105	u2phy_host: host-port {
106		status = "okay";
107	};
108
109	u2phy_otg: otg-port {
110		status = "okay";
111	};
112};
113
114&uart2 {
115	pinctrl-0 = <&uart2m1_xfer>;
116	status = "okay";
117};
118
119&usb20_otg {
120	status = "okay";
121};
122
123&usb_host0_ehci {
124	status = "okay";
125};
126
127&usb_host0_ohci {
128	status = "okay";
129};
130