1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * (C) Copyright 2016 Rockchip Electronics Co., Ltd
4 */
5
6/dts-v1/;
7#include "rk3328.dtsi"
8
9/ {
10	model = "Rockchip RK3328 EVB";
11	compatible = "rockchip,rk3328-evb", "rockchip,rk3328";
12
13	chosen {
14		stdout-path = &uart2;
15	};
16
17	gmac_clkin: external-gmac-clock {
18		compatible = "fixed-clock";
19		clock-frequency = <125000000>;
20		clock-output-names = "gmac_clkin";
21		#clock-cells = <0>;
22	};
23
24	vcc3v3_sdmmc: sdmmc-pwren {
25		compatible = "regulator-fixed";
26		regulator-name = "vcc3v3";
27		gpio = <&gpio0 30 GPIO_ACTIVE_LOW>;
28		regulator-always-on;
29		regulator-boot-on;
30	};
31
32	vcc5v0_otg: vcc5v0-otg-drv {
33		compatible = "regulator-fixed";
34		enable-active-high;
35		regulator-name = "vcc5v0_otg";
36		gpio = <&gpio0 27 GPIO_ACTIVE_HIGH>;
37		regulator-min-microvolt = <5000000>;
38		regulator-max-microvolt = <5000000>;
39	};
40
41	vcc5v0_host_xhci: vcc5v0-host-xhci-drv {
42		compatible = "regulator-fixed";
43		enable-active-high;
44		regulator-name = "vcc5v0_host_xhci";
45		gpio = <&gpio0 0 GPIO_ACTIVE_HIGH>;
46		regulator-min-microvolt = <5000000>;
47		regulator-max-microvolt = <5000000>;
48	};
49
50	vcc_phy: vcc-phy-regulator {
51		compatible = "regulator-fixed";
52		regulator-name = "vcc_phy";
53		regulator-always-on;
54		regulator-boot-on;
55	};
56};
57
58&saradc {
59	status = "okay";
60};
61
62&uart2 {
63	status = "okay";
64};
65
66&sdmmc {
67	bus-width = <4>;
68	cap-mmc-highspeed;
69	cap-sd-highspeed;
70	card-detect-delay = <200>;
71	disable-wp;
72	num-slots = <1>;
73	pinctrl-names = "default";
74	pinctrl-0 = <&sdmmc0_clk>, <&sdmmc0_cmd>, <&sdmmc0_dectn>, <&sdmmc0_bus4>;
75	status = "okay";
76};
77
78&emmc {
79	bus-width = <8>;
80	cap-mmc-highspeed;
81	supports-emmc;
82	disable-wp;
83	non-removable;
84	num-slots = <1>;
85	pinctrl-names = "default";
86	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
87	status = "okay";
88};
89
90&gmac2io {
91	phy-supply = <&vcc_phy>;
92	phy-mode = "rgmii";
93	clock_in_out = "input";
94	snps,reset-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
95	snps,reset-active-low;
96	snps,reset-delays-us = <0 10000 50000>;
97	assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
98	assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
99	pinctrl-names = "default";
100	pinctrl-0 = <&rgmiim1_pins>;
101	tx_delay = <0x26>;
102	rx_delay = <0x11>;
103	status = "okay";
104};
105
106&usb_host0_ehci {
107	status = "okay";
108};
109
110&usb_host0_ohci {
111	status = "okay";
112};
113
114&usb20_otg {
115	vbus-supply = <&vcc5v0_otg>;
116	status = "okay";
117};
118
119&usb_host0_xhci {
120	vbus-supply = <&vcc5v0_host_xhci>;
121	status = "okay";
122};
123
124&i2c1 {
125	clock-frequency = <400000>;
126	i2c-scl-rising-time-ns = <168>;
127	i2c-scl-falling-time-ns = <4>;
128	status = "okay";
129
130	rk805: pmic@18 {
131		compatible = "rockchip,rk805";
132		status = "okay";
133		reg = <0x18>;
134		interrupt-parent = <&gpio2>;
135		interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
136		pinctrl-names = "default";
137		pinctrl-0 = <&pmic_int_l>;
138		rockchip,system-power-controller;
139		wakeup-source;
140		gpio-controller;
141		#gpio-cells = <2>;
142		#clock-cells = <1>;
143		clock-output-names = "xin32k", "rk805-clkout2";
144
145		regulators {
146			vdd_logic: DCDC_REG1 {
147				regulator-name = "vdd_logic";
148				regulator-min-microvolt = <712500>;
149				regulator-max-microvolt = <1450000>;
150				regulator-ramp-delay = <6001>;
151				regulator-boot-on;
152				regulator-always-on;
153				regulator-state-mem {
154					regulator-on-in-suspend;
155					regulator-suspend-microvolt = <1000000>;
156				};
157			};
158
159			vdd_arm: DCDC_REG2 {
160				regulator-name = "vdd_arm";
161				regulator-min-microvolt = <712500>;
162				regulator-max-microvolt = <1450000>;
163				regulator-ramp-delay = <6001>;
164				regulator-boot-on;
165				regulator-always-on;
166				regulator-state-mem {
167					regulator-on-in-suspend;
168					regulator-suspend-microvolt = <1000000>;
169				};
170			};
171
172			vcc_ddr: DCDC_REG3 {
173				regulator-name = "vcc_ddr";
174				regulator-boot-on;
175				regulator-always-on;
176				regulator-state-mem {
177					regulator-on-in-suspend;
178				};
179			};
180
181			vcc_io: DCDC_REG4 {
182				regulator-name = "vcc_io";
183				regulator-min-microvolt = <3300000>;
184				regulator-max-microvolt = <3300000>;
185				regulator-boot-on;
186				regulator-always-on;
187				regulator-state-mem {
188					regulator-on-in-suspend;
189					regulator-suspend-microvolt = <3300000>;
190				};
191			};
192
193			vdd_18: LDO_REG1 {
194				regulator-name = "vdd_18";
195				regulator-min-microvolt = <1800000>;
196				regulator-max-microvolt = <1800000>;
197				regulator-boot-on;
198				regulator-always-on;
199				regulator-state-mem {
200					regulator-on-in-suspend;
201					regulator-suspend-microvolt = <1800000>;
202				};
203			};
204
205			vcc_18emmc: LDO_REG2 {
206				regulator-name = "vcc_18emmc";
207				regulator-min-microvolt = <1800000>;
208				regulator-max-microvolt = <1800000>;
209				regulator-boot-on;
210				regulator-always-on;
211				regulator-state-mem {
212					regulator-on-in-suspend;
213					regulator-suspend-microvolt = <1800000>;
214				};
215			};
216
217			vdd_10: LDO_REG3 {
218				regulator-name = "vdd_10";
219				regulator-min-microvolt = <1000000>;
220				regulator-max-microvolt = <1000000>;
221				regulator-boot-on;
222				regulator-always-on;
223				regulator-state-mem {
224					regulator-on-in-suspend;
225					regulator-suspend-microvolt = <1000000>;
226				};
227			};
228		};
229	};
230};
231
232&pinctrl {
233	pmic {
234		pmic_int_l: pmic-int-l {
235		rockchip,pins =
236			<2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;	/* gpio2_a6 */
237		};
238	};
239};
240
241