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