1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * (C) Copyright 2020 Chen-Yu Tsai <wens@csie.org>
5 * Based on ./rk3328-rock64.dts, which is
7 * Copyright (c) 2017 PINE64
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/input/input.h>
14 #include <dt-bindings/leds/common.h>
15 #include <dt-bindings/pinctrl/rockchip.h>
17 #include "rk3328.dtsi"
20 model = "Radxa ROCK Pi E";
21 compatible = "radxa,rockpi-e", "rockchip,rk3328";
25 ethernet1 = &gmac2phy;
31 stdout-path = "serial2:1500000n8";
35 compatible = "adc-keys";
36 io-channels = <&saradc 0>;
37 io-channel-names = "buttons";
38 keyup-threshold-microvolt = <1750000>;
40 /* This button is unpopulated out of the factory. */
43 linux,code = <KEY_VENDOR>;
44 press-threshold-microvolt = <10000>;
48 gmac_clkin: external-gmac-clock {
49 compatible = "fixed-clock";
50 clock-frequency = <125000000>;
51 clock-output-names = "gmac_clkin";
56 compatible = "gpio-leds";
57 pinctrl-0 = <&led_pin>;
58 pinctrl-names = "default";
61 color = <LED_COLOR_ID_BLUE>;
62 gpios = <&gpio3 RK_PA5 GPIO_ACTIVE_LOW>;
63 linux,default-trigger = "heartbeat";
67 vcc_sd: sdmmc-regulator {
68 compatible = "regulator-fixed";
69 gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
70 pinctrl-names = "default";
71 pinctrl-0 = <&sdmmc0m1_pin>;
72 regulator-name = "vcc_sd";
74 vin-supply = <&vcc_io>;
77 vcc_host_5v: vcc-host-5v-regulator {
78 compatible = "regulator-fixed";
79 gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_HIGH>;
80 pinctrl-names = "default";
81 pinctrl-0 = <&usb30_host_drv>;
83 regulator-name = "vcc_host_5v";
86 vin-supply = <&vcc_sys>;
90 compatible = "regulator-fixed";
91 regulator-name = "vcc_sys";
94 regulator-min-microvolt = <5000000>;
95 regulator-max-microvolt = <5000000>;
98 vcc_wifi: vcc-wifi-regulator {
99 compatible = "regulator-fixed";
100 gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_LOW>;
101 pinctrl-names = "default";
102 pinctrl-0 = <&wifi_en>;
103 regulator-name = "vcc_wifi";
106 vin-supply = <&vcc_io>;
119 cpu-supply = <&vdd_arm>;
123 cpu-supply = <&vdd_arm>;
127 cpu-supply = <&vdd_arm>;
131 cpu-supply = <&vdd_arm>;
140 pinctrl-names = "default";
141 pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_bus8>;
142 vmmc-supply = <&vcc_io>;
143 vqmmc-supply = <&vcc18_emmc>;
148 assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
149 assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
150 clock_in_out = "input";
151 phy-handle = <&rtl8211e>;
153 phy-supply = <&vcc_io>;
154 pinctrl-names = "default";
155 pinctrl-0 = <&rgmiim1_pins>;
164 compatible = "snps,dwmac-mdio";
165 #address-cells = <1>;
168 rtl8211e: ethernet-phy@1 {
170 pinctrl-0 = <ð_phy_int_pin>, <ð_phy_reset_pin>;
171 pinctrl-names = "default";
172 interrupt-parent = <&gpio1>;
173 interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
174 reset-assert-us = <10000>;
175 reset-deassert-us = <50000>;
176 reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
188 "", "", "", "", "", "", "", "",
190 "", "", "", "", "", "", "", "",
192 "", "", "", "", "", "", "", "",
194 "", "", "", "pin-15 [GPIO0_D3]", "", "", "", "";
200 "", "", "", "", "", "", "", "",
202 "", "", "", "", "", "", "", "",
204 "", "", "", "", "", "", "", "",
206 "", "", "", "", "pin-07 [GPIO1_D4]", "", "", "";
212 "pin-08 [GPIO2_A0]", "pin-10 [GPIO2_A1]", "pin-11 [GPIO2_A2]",
213 "pin-13 [GPIO2-A3]", "pin-27 [GPIO2_A4]", "pin-28 [GPIO2_A5]",
214 "pin-33 [GPIO2_A6]", "",
216 "", "", "", "", "pin-26 [GPIO2_B4]", "", "", "pin-36 [GPIO2_B7]",
218 "pin-32 [GPIO2_C0]", "pin-35 [GPIO2_C1]", "pin-12 [GPIO2_C2]",
219 "pin-38 [GPIO2_C3]", "pin-29 [GPIO2_C4]", "pin-31 [GPIO2_C5]",
220 "pin-37 [GPIO2_C6]", "pin-40 [GPIO2_C7]",
222 "", "", "", "", "", "", "", "";
228 "pin-23 [GPIO3_A0]", "pin-19 [GPIO3_A1]", "pin-21 [GPIO3_A2]",
229 "", "pin-03 [GPIO3_A4]", "", "pin-05 [GPIO3_A6]", "",
231 "pin-24 [GPIO3_B0]", "", "", "", "", "", "", "",
233 "", "", "", "", "", "", "", "",
235 "", "", "", "", "", "", "", "";
242 compatible = "rockchip,rk805";
244 interrupt-parent = <&gpio2>;
245 interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
247 clock-output-names = "xin32k", "rk805-clkout2";
250 pinctrl-names = "default";
251 pinctrl-0 = <&pmic_int_l>;
252 rockchip,system-power-controller;
255 vcc1-supply = <&vcc_sys>;
256 vcc2-supply = <&vcc_sys>;
257 vcc3-supply = <&vcc_sys>;
258 vcc4-supply = <&vcc_sys>;
259 vcc5-supply = <&vcc_io>;
260 vcc6-supply = <&vcc_sys>;
264 regulator-name = "vdd_log";
267 regulator-min-microvolt = <712500>;
268 regulator-max-microvolt = <1450000>;
269 regulator-ramp-delay = <12500>;
271 regulator-state-mem {
272 regulator-on-in-suspend;
273 regulator-suspend-microvolt = <1000000>;
278 regulator-name = "vdd_arm";
281 regulator-min-microvolt = <712500>;
282 regulator-max-microvolt = <1450000>;
283 regulator-ramp-delay = <12500>;
285 regulator-state-mem {
286 regulator-on-in-suspend;
287 regulator-suspend-microvolt = <950000>;
292 regulator-name = "vcc_ddr";
296 regulator-state-mem {
297 regulator-on-in-suspend;
302 regulator-name = "vcc_io";
305 regulator-min-microvolt = <3300000>;
306 regulator-max-microvolt = <3300000>;
308 regulator-state-mem {
309 regulator-on-in-suspend;
310 regulator-suspend-microvolt = <3300000>;
315 regulator-name = "vcc_18";
318 regulator-min-microvolt = <1800000>;
319 regulator-max-microvolt = <1800000>;
321 regulator-state-mem {
322 regulator-on-in-suspend;
323 regulator-suspend-microvolt = <1800000>;
327 vcc18_emmc: LDO_REG2 {
328 regulator-name = "vcc18_emmc";
331 regulator-min-microvolt = <1800000>;
332 regulator-max-microvolt = <1800000>;
334 regulator-state-mem {
335 regulator-on-in-suspend;
336 regulator-suspend-microvolt = <1800000>;
341 regulator-name = "vdd_10";
344 regulator-min-microvolt = <1000000>;
345 regulator-max-microvolt = <1000000>;
347 regulator-state-mem {
348 regulator-on-in-suspend;
349 regulator-suspend-microvolt = <1000000>;
361 pmuio-supply = <&vcc_io>;
362 vccio1-supply = <&vcc_io>;
363 vccio2-supply = <&vcc18_emmc>;
364 vccio3-supply = <&vcc_io>;
365 vccio4-supply = <&vcc_io>;
366 vccio5-supply = <&vcc_io>;
367 vccio6-supply = <&vcc_io>;
373 eth_phy_int_pin: eth-phy-int-pin {
374 rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_down>;
377 eth_phy_reset_pin: eth-phy-reset-pin {
378 rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
384 rockchip,pins = <3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
389 pmic_int_l: pmic-int-l {
390 rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
395 usb30_host_drv: usb30-host-drv {
396 rockchip,pins = <3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;
402 rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
411 pinctrl-names = "default";
412 pinctrl-0 = <&sdmmc0_clk>, <&sdmmc0_cmd>, <&sdmmc0_dectn>, <&sdmmc0_bus4>;
413 vmmc-supply = <&vcc_sd>;
418 vref-supply = <&vcc_18>;