xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3328-evb.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2017 Fuzhou 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 = "serial2:1500000n8";
15	};
16
17	dc_12v: dc-12v {
18		compatible = "regulator-fixed";
19		regulator-name = "dc_12v";
20		regulator-always-on;
21		regulator-boot-on;
22		regulator-min-microvolt = <12000000>;
23		regulator-max-microvolt = <12000000>;
24	};
25
26	sdio_pwrseq: sdio-pwrseq {
27		compatible = "mmc-pwrseq-simple";
28		pinctrl-names = "default";
29		pinctrl-0 = <&wifi_enable_h>;
30
31		/*
32		 * On the module itself this is one of these (depending
33		 * on the actual card populated):
34		 * - SDIO_RESET_L_WL_REG_ON
35		 * - PDN (power down when low)
36		 */
37		reset-gpios = <&gpio1 18 GPIO_ACTIVE_LOW>;
38	};
39
40	fiq-debugger {
41		compatible = "rockchip,fiq-debugger";
42		rockchip,serial-id = <2>;
43		rockchip,signal-irq = <159>;
44		rockchip,wake-irq = <0>;
45		/* If enable uart uses irq instead of fiq */
46		rockchip,irq-mode-enable = <0>;
47		rockchip,baudrate = <1500000>;  /* Only 115200 and 1500000 */
48		interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_LOW>;
49		status = "okay";
50	};
51
52	vcc_sd: sdmmc-regulator {
53		compatible = "regulator-fixed";
54		gpio = <&gpio0 30 GPIO_ACTIVE_LOW>;
55		pinctrl-names = "default";
56		pinctrl-0 = <&sdmmc0m1_pin>;
57		regulator-name = "vcc_sd";
58		regulator-min-microvolt = <3300000>;
59		regulator-max-microvolt = <3300000>;
60		vin-supply = <&vcc_io>;
61	};
62
63	vcc_sys: vcc-sys {
64		compatible = "regulator-fixed";
65		regulator-name = "vcc_sys";
66		regulator-always-on;
67		regulator-boot-on;
68		regulator-min-microvolt = <5000000>;
69		regulator-max-microvolt = <5000000>;
70		vin-supply = <&dc_12v>;
71	};
72
73	vcc_phy: vcc-phy-regulator {
74		compatible = "regulator-fixed";
75		regulator-name = "vcc_phy";
76		regulator-always-on;
77		regulator-boot-on;
78	};
79
80	xin32k: xin32k {
81		compatible = "fixed-clock";
82		clock-frequency = <32768>;
83		clock-output-names = "xin32k";
84		#clock-cells = <0>;
85	};
86
87};
88
89&cpu0 {
90	cpu-supply = <&vdd_arm>;
91};
92
93&cpu1 {
94	cpu-supply = <&vdd_arm>;
95};
96
97&cpu2 {
98	cpu-supply = <&vdd_arm>;
99};
100
101&cpu3 {
102	cpu-supply = <&vdd_arm>;
103};
104
105&emmc {
106	bus-width = <8>;
107	cap-mmc-highspeed;
108	non-removable;
109	pinctrl-names = "default";
110	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>;
111	status = "okay";
112};
113
114&gmac2phy {
115	phy-supply = <&vcc_phy>;
116	clock_in_out = "output";
117	assigned-clock-rate = <50000000>;
118	assigned-clocks = <&cru SCLK_MAC2PHY>;
119	assigned-clock-parents = <&cru SCLK_MAC2PHY_SRC>;
120	status = "okay";
121};
122
123&i2c1 {
124	status = "okay";
125
126	rk805: pmic@18 {
127		compatible = "rockchip,rk805";
128		reg = <0x18>;
129		interrupt-parent = <&gpio2>;
130		interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
131		#clock-cells = <1>;
132		clock-output-names = "rk805-clkout1", "rk805-clkout2";
133		gpio-controller;
134		#gpio-cells = <2>;
135		pinctrl-names = "default";
136		pinctrl-0 = <&pmic_int_l>;
137		rockchip,system-power-controller;
138		wakeup-source;
139
140		vcc1-supply = <&vcc_sys>;
141		vcc2-supply = <&vcc_sys>;
142		vcc3-supply = <&vcc_sys>;
143		vcc4-supply = <&vcc_sys>;
144		vcc5-supply = <&vcc_io>;
145		vcc6-supply = <&vcc_io>;
146
147		regulators {
148			vdd_logic: DCDC_REG1 {
149				regulator-name = "vdd_logic";
150				regulator-min-microvolt = <712500>;
151				regulator-max-microvolt = <1450000>;
152				regulator-always-on;
153				regulator-boot-on;
154				regulator-state-mem {
155					regulator-on-in-suspend;
156					regulator-suspend-microvolt = <1000000>;
157				};
158			};
159
160			vdd_arm: DCDC_REG2 {
161				regulator-name = "vdd_arm";
162				regulator-min-microvolt = <712500>;
163				regulator-max-microvolt = <1450000>;
164				regulator-always-on;
165				regulator-boot-on;
166				regulator-state-mem {
167					regulator-on-in-suspend;
168					regulator-suspend-microvolt = <950000>;
169				};
170			};
171
172			vcc_ddr: DCDC_REG3 {
173				regulator-name = "vcc_ddr";
174				regulator-always-on;
175				regulator-boot-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-always-on;
186				regulator-boot-on;
187				regulator-state-mem {
188					regulator-on-in-suspend;
189					regulator-suspend-microvolt = <3300000>;
190				};
191			};
192
193			vcc_18: LDO_REG1 {
194				regulator-name = "vcc_18";
195				regulator-min-microvolt = <1800000>;
196				regulator-max-microvolt = <1800000>;
197				regulator-always-on;
198				regulator-boot-on;
199				regulator-state-mem {
200					regulator-on-in-suspend;
201					regulator-suspend-microvolt = <1800000>;
202				};
203			};
204
205			vcc18_emmc: LDO_REG2 {
206				regulator-name = "vcc18_emmc";
207				regulator-min-microvolt = <1800000>;
208				regulator-max-microvolt = <1800000>;
209				regulator-always-on;
210				regulator-boot-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-always-on;
222				regulator-boot-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 = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
236		};
237	};
238
239	sdio-pwrseq {
240		wifi_enable_h: wifi-enable-h {
241		rockchip,pins =
242			<1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
243		};
244	};
245};
246
247&sdio {
248	bus-width = <4>;
249	cap-sd-highspeed;
250	cap-sdio-irq;
251	keep-power-in-suspend;
252	max-frequency = <150000000>;
253	mmc-pwrseq = <&sdio_pwrseq>;
254	non-removable;
255	pinctrl-names = "default";
256	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
257	status = "okay";
258};
259
260&sdmmc {
261	bus-width = <4>;
262	cap-mmc-highspeed;
263	cap-sd-highspeed;
264	disable-wp;
265	max-frequency = <150000000>;
266	pinctrl-names = "default";
267	pinctrl-0 = <&sdmmc0_clk &sdmmc0_cmd &sdmmc0_dectn &sdmmc0_bus4>;
268	vmmc-supply = <&vcc_sd>;
269	status = "okay";
270};
271
272&tsadc {
273	status = "okay";
274};
275
276&uart2 {
277	status = "okay";
278};
279
280&u2phy {
281	status = "okay";
282};
283
284&u2phy_host {
285	status = "okay";
286};
287
288&u2phy_otg {
289	status = "okay";
290};
291
292&usb20_otg {
293	status = "okay";
294};
295
296&usb_host0_ehci {
297	status = "okay";
298};
299
300&usb_host0_ohci {
301	status = "okay";
302};
303