1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd.
7 #include <dt-bindings/input/input.h>
8 #include <dt-bindings/clock/rockchip,rk808.h>
12 stdout-path = "serial2:115200n8";
16 reg = <0x0 0x0 0x0 0x80000000>;
17 device_type = "memory";
20 ext_gmac: external-gmac-clock {
21 compatible = "fixed-clock";
23 clock-frequency = <125000000>;
24 clock-output-names = "ext_gmac";
28 compatible = "gpio-keys";
31 pinctrl-names = "default";
32 pinctrl-0 = <&pwrbtn>;
35 gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
36 linux,code = <KEY_POWER>;
37 label = "GPIO Key Power";
38 linux,input-type = <1>;
40 debounce-interval = <100>;
45 compatible = "gpio-leds";
48 gpios = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
49 linux,default-trigger = "mmc0";
52 heartbeat_led: led-1 {
53 gpios = <&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>;
54 linux,default-trigger = "heartbeat";
58 gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>;
59 linux,default-trigger = "default-on";
63 sdio_pwrseq: sdio-pwrseq {
64 compatible = "mmc-pwrseq-simple";
65 clocks = <&rk808 RK808_CLKOUT1>;
66 clock-names = "ext_clock";
67 pinctrl-names = "default";
68 pinctrl-0 = <&wifi_enable>;
69 reset-gpios = <&gpio4 RK_PD3 GPIO_ACTIVE_LOW>,
70 <&gpio4 RK_PD4 GPIO_ACTIVE_LOW>;
74 compatible = "simple-audio-card";
75 simple-audio-card,format = "i2s";
76 simple-audio-card,name = "rockchip,tinker-codec";
77 simple-audio-card,mclk-fs = <512>;
79 simple-audio-card,codec {
83 simple-audio-card,cpu {
88 vcc_sys: vsys-regulator {
89 compatible = "regulator-fixed";
90 regulator-name = "vcc_sys";
91 regulator-min-microvolt = <5000000>;
92 regulator-max-microvolt = <5000000>;
97 vcc_sd: sdmmc-regulator {
98 compatible = "regulator-fixed";
99 gpio = <&gpio7 11 GPIO_ACTIVE_LOW>;
100 pinctrl-names = "default";
101 pinctrl-0 = <&sdmmc_pwr>;
102 regulator-name = "vcc_sd";
103 regulator-min-microvolt = <3300000>;
104 regulator-max-microvolt = <3300000>;
105 startup-delay-us = <100000>;
106 vin-supply = <&vcc_io>;
111 cpu0-supply = <&vdd_cpu>;
116 opp-hz = /bits/ 64 <1704000000>;
117 opp-microvolt = <1350000>;
120 opp-hz = /bits/ 64 <1800000000>;
121 opp-microvolt = <1400000>;
126 assigned-clocks = <&cru SCLK_MAC>;
127 assigned-clock-parents = <&ext_gmac>;
128 clock_in_out = "input";
130 phy-supply = <&vcc33_lan>;
131 pinctrl-names = "default";
132 pinctrl-0 = <&rgmii_pins>;
133 snps,reset-gpio = <&gpio4 7 0>;
134 snps,reset-active-low;
135 snps,reset-delays-us = <0 10000 1000000>;
142 mali-supply = <&vdd_gpu>;
147 ddc-i2c-bus = <&i2c5>;
152 clock-frequency = <400000>;
156 compatible = "rockchip,rk808";
158 interrupt-parent = <&gpio0>;
159 interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
161 clock-output-names = "xin32k", "rk808-clkout2";
162 dvs-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>,
163 <&gpio0 12 GPIO_ACTIVE_HIGH>;
164 pinctrl-names = "default";
165 pinctrl-0 = <&pmic_int &global_pwroff &dvs_1 &dvs_2>;
166 rockchip,system-power-controller;
169 vcc1-supply = <&vcc_sys>;
170 vcc2-supply = <&vcc_sys>;
171 vcc3-supply = <&vcc_sys>;
172 vcc4-supply = <&vcc_sys>;
173 vcc6-supply = <&vcc_sys>;
174 vcc7-supply = <&vcc_sys>;
175 vcc8-supply = <&vcc_io>;
176 vcc9-supply = <&vcc_io>;
177 vcc10-supply = <&vcc_io>;
178 vcc11-supply = <&vcc_sys>;
179 vcc12-supply = <&vcc_io>;
180 vddio-supply = <&vcc_io>;
186 regulator-min-microvolt = <750000>;
187 regulator-max-microvolt = <1400000>;
188 regulator-name = "vdd_arm";
189 regulator-ramp-delay = <6000>;
190 regulator-state-mem {
191 regulator-off-in-suspend;
198 regulator-min-microvolt = <850000>;
199 regulator-max-microvolt = <1250000>;
200 regulator-name = "vdd_gpu";
201 regulator-ramp-delay = <6000>;
202 regulator-state-mem {
203 regulator-on-in-suspend;
204 regulator-suspend-microvolt = <1000000>;
211 regulator-name = "vcc_ddr";
212 regulator-state-mem {
213 regulator-on-in-suspend;
220 regulator-min-microvolt = <3300000>;
221 regulator-max-microvolt = <3300000>;
222 regulator-name = "vcc_io";
223 regulator-state-mem {
224 regulator-on-in-suspend;
225 regulator-suspend-microvolt = <3300000>;
229 vcc18_ldo1: LDO_REG1 {
232 regulator-min-microvolt = <1800000>;
233 regulator-max-microvolt = <1800000>;
234 regulator-name = "vcc18_ldo1";
235 regulator-state-mem {
236 regulator-on-in-suspend;
237 regulator-suspend-microvolt = <1800000>;
241 vcc33_mipi: LDO_REG2 {
244 regulator-min-microvolt = <3300000>;
245 regulator-max-microvolt = <3300000>;
246 regulator-name = "vcc33_mipi";
247 regulator-state-mem {
248 regulator-off-in-suspend;
255 regulator-min-microvolt = <1000000>;
256 regulator-max-microvolt = <1000000>;
257 regulator-name = "vdd_10";
258 regulator-state-mem {
259 regulator-on-in-suspend;
260 regulator-suspend-microvolt = <1000000>;
264 vcc18_codec: LDO_REG4 {
267 regulator-min-microvolt = <1800000>;
268 regulator-max-microvolt = <1800000>;
269 regulator-name = "vcc18_codec";
270 regulator-state-mem {
271 regulator-on-in-suspend;
272 regulator-suspend-microvolt = <1800000>;
279 regulator-min-microvolt = <1800000>;
280 regulator-max-microvolt = <3300000>;
281 regulator-name = "vccio_sd";
282 regulator-state-mem {
283 regulator-on-in-suspend;
284 regulator-suspend-microvolt = <3300000>;
288 vdd10_lcd: LDO_REG6 {
291 regulator-min-microvolt = <1000000>;
292 regulator-max-microvolt = <1000000>;
293 regulator-name = "vdd10_lcd";
294 regulator-state-mem {
295 regulator-on-in-suspend;
296 regulator-suspend-microvolt = <1000000>;
303 regulator-min-microvolt = <1800000>;
304 regulator-max-microvolt = <1800000>;
305 regulator-name = "vcc_18";
306 regulator-state-mem {
307 regulator-on-in-suspend;
308 regulator-suspend-microvolt = <1800000>;
312 vcc18_lcd: LDO_REG8 {
315 regulator-min-microvolt = <1800000>;
316 regulator-max-microvolt = <1800000>;
317 regulator-name = "vcc18_lcd";
318 regulator-state-mem {
319 regulator-on-in-suspend;
320 regulator-suspend-microvolt = <1800000>;
324 vcc33_sd: SWITCH_REG1 {
327 regulator-name = "vcc33_sd";
328 regulator-state-mem {
329 regulator-on-in-suspend;
333 vcc33_lan: SWITCH_REG2 {
336 regulator-name = "vcc33_lan";
337 regulator-state-mem {
338 regulator-on-in-suspend;
354 #sound-dai-cells = <0>;
361 sdcard-supply = <&vccio_sd>;
362 wifi-supply = <&vcc_18>;
366 pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma {
367 drive-strength = <8>;
370 pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma {
372 drive-strength = <8>;
377 rockchip,pins = <7 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
383 rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
388 eth_phy_pwr: eth-phy-pwr {
389 rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
395 rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
399 rockchip,pins = <0 RK_PB3 RK_FUNC_GPIO &pcfg_pull_down>;
403 rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>;
408 sdmmc_bus4: sdmmc-bus4 {
409 rockchip,pins = <6 RK_PC0 1 &pcfg_pull_up_drv_8ma>,
410 <6 RK_PC1 1 &pcfg_pull_up_drv_8ma>,
411 <6 RK_PC2 1 &pcfg_pull_up_drv_8ma>,
412 <6 RK_PC3 1 &pcfg_pull_up_drv_8ma>;
415 sdmmc_clk: sdmmc-clk {
416 rockchip,pins = <6 RK_PC4 1 &pcfg_pull_none_drv_8ma>;
419 sdmmc_cmd: sdmmc-cmd {
420 rockchip,pins = <6 RK_PC5 1 &pcfg_pull_up_drv_8ma>;
423 sdmmc_pwr: sdmmc-pwr {
424 rockchip,pins = <7 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
429 host_vbus_drv: host-vbus-drv {
430 rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
434 rockchip,pins = <7 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
439 wifi_enable: wifi-enable {
440 rockchip,pins = <4 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>,
441 <4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
451 vref-supply = <&vcc18_ldo1>;
460 disable-wp; /* wp not hooked up */
461 pinctrl-names = "default";
462 pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
464 vmmc-supply = <&vcc33_sd>;
465 vqmmc-supply = <&vccio_sd>;
472 keep-power-in-suspend;
473 max-frequency = <50000000>;
474 mmc-pwrseq = <&sdio_pwrseq>;
476 pinctrl-names = "default";
477 pinctrl-0 = <&sdio0_bus4>, <&sdio0_cmd>, <&sdio0_clk>, <&sdio0_int>;
481 vmmc-supply = <&vcc_io>;
482 vqmmc-supply = <&vcc_18>;
487 rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */
488 rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */