1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (c) 2019 Andy Yan <andy.yan@gmail.com>
7 #include <dt-bindings/input/linux-event-codes.h>
8 #include <dt-bindings/pwm/pwm.h>
10 #include "rk3399-opp.dtsi"
13 model = "Leez RK3399 P710";
14 compatible = "leez,p710", "rockchip,rk3399";
17 stdout-path = "serial2:1500000n8";
20 clkin_gmac: external-gmac-clock {
21 compatible = "fixed-clock";
22 clock-frequency = <125000000>;
23 clock-output-names = "clkin_gmac";
27 sdio_pwrseq: sdio-pwrseq {
28 compatible = "mmc-pwrseq-simple";
30 clock-names = "ext_clock";
31 pinctrl-names = "default";
32 pinctrl-0 = <&wifi_reg_on_h>;
33 reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
37 compatible = "regulator-fixed";
38 regulator-name = "dc5v_adapter";
41 regulator-min-microvolt = <5000000>;
42 regulator-max-microvolt = <5000000>;
45 vcc3v3_lan: vcc3v3-lan {
46 compatible = "regulator-fixed";
47 regulator-name = "vcc3v3_lan";
50 regulator-min-microvolt = <3300000>;
51 regulator-max-microvolt = <3300000>;
52 vim-supply = <&vcc3v3_sys>;
55 vcc3v3_sys: vcc3v3-sys {
56 compatible = "regulator-fixed";
57 regulator-name = "vcc3v3_sys";
60 regulator-min-microvolt = <3300000>;
61 regulator-max-microvolt = <3300000>;
62 vin-supply = <&vcc5v0_sys>;
65 vcc5v0_host0: vcc5v0_host1: vcc5v0-host {
66 compatible = "regulator-fixed";
67 regulator-name = "vcc5v0_host";
70 regulator-min-microvolt = <5500000>;
71 regulator-max-microvolt = <5500000>;
72 vin-supply = <&vcc5v0_sys>;
75 vcc5v0_host3: vcc5v0-host3 {
76 compatible = "regulator-fixed";
77 regulator-name = "vcc5v0_host3";
79 gpio = <&gpio2 RK_PA2 GPIO_ACTIVE_HIGH>;
80 pinctrl-names = "default";
81 pinctrl-0 = <&vcc5v0_host3_en>;
83 vin-supply = <&vcc5v0_sys>;
86 vcc5v0_sys: vcc5v0-sys {
87 compatible = "regulator-fixed";
88 regulator-name = "vcc5v0_sys";
91 regulator-min-microvolt = <5000000>;
92 regulator-max-microvolt = <5000000>;
93 vin-supply = <&dc5v_adp>;
97 compatible = "pwm-regulator";
98 pwms = <&pwm2 0 25000 1>;
99 regulator-name = "vdd_log";
102 regulator-min-microvolt = <800000>;
103 regulator-max-microvolt = <1400000>;
104 vin-supply = <&vcc5v0_sys>;
109 cpu-supply = <&vdd_cpu_l>;
113 cpu-supply = <&vdd_cpu_l>;
117 cpu-supply = <&vdd_cpu_l>;
121 cpu-supply = <&vdd_cpu_l>;
125 cpu-supply = <&vdd_cpu_b>;
129 cpu-supply = <&vdd_cpu_b>;
137 assigned-clocks = <&cru SCLK_RMII_SRC>;
138 assigned-clock-parents = <&clkin_gmac>;
139 clock_in_out = "input";
140 phy-supply = <&vcc3v3_lan>;
142 pinctrl-names = "default";
143 pinctrl-0 = <&rgmii_pins>;
144 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
145 snps,reset-active-low;
146 snps,reset-delays-us = <0 10000 50000>;
153 mali-supply = <&vdd_gpu>;
158 ddc-i2c-bus = <&i2c7>;
159 pinctrl-names = "default";
160 pinctrl-0 = <&hdmi_cec>;
169 clock-frequency = <400000>;
170 i2c-scl-rising-time-ns = <168>;
171 i2c-scl-falling-time-ns = <4>;
175 compatible = "rockchip,rk808";
177 interrupt-parent = <&gpio1>;
178 interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
180 clock-output-names = "xin32k", "rk808-clkout2";
181 pinctrl-names = "default";
182 pinctrl-0 = <&pmic_int_l>;
183 rockchip,system-power-controller;
186 vcc1-supply = <&vcc5v0_sys>;
187 vcc2-supply = <&vcc5v0_sys>;
188 vcc3-supply = <&vcc5v0_sys>;
189 vcc4-supply = <&vcc5v0_sys>;
190 vcc6-supply = <&vcc5v0_sys>;
191 vcc7-supply = <&vcc5v0_sys>;
192 vcc8-supply = <&vcc3v3_sys>;
193 vcc9-supply = <&vcc5v0_sys>;
194 vcc10-supply = <&vcc5v0_sys>;
195 vcc11-supply = <&vcc5v0_sys>;
196 vcc12-supply = <&vcc3v3_sys>;
197 vddio-supply = <&vcc_1v8>;
200 vdd_center: DCDC_REG1 {
201 regulator-name = "vdd_center";
204 regulator-min-microvolt = <750000>;
205 regulator-max-microvolt = <1350000>;
206 regulator-ramp-delay = <6001>;
207 regulator-state-mem {
208 regulator-off-in-suspend;
212 vdd_cpu_l: DCDC_REG2 {
213 regulator-name = "vdd_cpu_l";
216 regulator-min-microvolt = <750000>;
217 regulator-max-microvolt = <1350000>;
218 regulator-ramp-delay = <6001>;
219 regulator-state-mem {
220 regulator-off-in-suspend;
225 regulator-name = "vcc_ddr";
228 regulator-state-mem {
229 regulator-on-in-suspend;
234 regulator-name = "vcc_1v8";
237 regulator-min-microvolt = <1800000>;
238 regulator-max-microvolt = <1800000>;
239 regulator-state-mem {
240 regulator-on-in-suspend;
241 regulator-suspend-microvolt = <1800000>;
245 vcc1v8_dvp: LDO_REG1 {
246 regulator-name = "vcc1v8_dvp";
249 regulator-min-microvolt = <1800000>;
250 regulator-max-microvolt = <1800000>;
251 regulator-state-mem {
252 regulator-off-in-suspend;
256 vcc1v8_hdmi: LDO_REG2 {
257 regulator-name = "vcc1v8_hdmi";
260 regulator-min-microvolt = <1800000>;
261 regulator-max-microvolt = <1800000>;
262 regulator-state-mem {
263 regulator-off-in-suspend;
268 regulator-name = "vcca_1v8";
271 regulator-min-microvolt = <1800000>;
272 regulator-max-microvolt = <1800000>;
273 regulator-state-mem {
274 regulator-on-in-suspend;
275 regulator-suspend-microvolt = <1800000>;
280 regulator-name = "vccio_sd";
283 regulator-min-microvolt = <3000000>;
284 regulator-max-microvolt = <3000000>;
285 regulator-state-mem {
286 regulator-on-in-suspend;
287 regulator-suspend-microvolt = <3000000>;
291 vcca3v0_codec: LDO_REG5 {
292 regulator-name = "vcca3v0_codec";
295 regulator-min-microvolt = <3000000>;
296 regulator-max-microvolt = <3000000>;
297 regulator-state-mem {
298 regulator-off-in-suspend;
303 regulator-name = "vcc_1v5";
306 regulator-min-microvolt = <1500000>;
307 regulator-max-microvolt = <1500000>;
308 regulator-state-mem {
309 regulator-on-in-suspend;
310 regulator-suspend-microvolt = <1500000>;
314 vcc0v9_hdmi: LDO_REG7 {
315 regulator-name = "vcc0v9_hdmi";
318 regulator-min-microvolt = <900000>;
319 regulator-max-microvolt = <900000>;
320 regulator-state-mem {
321 regulator-off-in-suspend;
326 regulator-name = "vcc_3v0";
329 regulator-min-microvolt = <3000000>;
330 regulator-max-microvolt = <3000000>;
331 regulator-state-mem {
332 regulator-on-in-suspend;
333 regulator-suspend-microvolt = <3000000>;
339 vdd_cpu_b: regulator@40 {
340 compatible = "silergy,syr827";
342 fcs,suspend-voltage-selector = <1>;
343 pinctrl-names = "default";
344 pinctrl-0 = <&vsel1_pin>;
345 regulator-name = "vdd_cpu_b";
346 regulator-min-microvolt = <712500>;
347 regulator-max-microvolt = <1500000>;
348 regulator-ramp-delay = <1000>;
351 vin-supply = <&vcc5v0_sys>;
353 regulator-state-mem {
354 regulator-off-in-suspend;
358 vdd_gpu: regulator@41 {
359 compatible = "silergy,syr828";
361 fcs,suspend-voltage-selector = <1>;
362 pinctrl-names = "default";
363 pinctrl-0 = <&vsel2_pin>;
364 regulator-name = "vdd_gpu";
365 regulator-min-microvolt = <712500>;
366 regulator-max-microvolt = <1500000>;
367 regulator-ramp-delay = <1000>;
370 vin-supply = <&vcc5v0_sys>;
372 regulator-state-mem {
373 regulator-off-in-suspend;
379 i2c-scl-rising-time-ns = <300>;
380 i2c-scl-falling-time-ns = <15>;
385 i2c-scl-rising-time-ns = <450>;
386 i2c-scl-falling-time-ns = <15>;
391 i2c-scl-rising-time-ns = <600>;
392 i2c-scl-falling-time-ns = <20>;
401 rockchip,playback-channels = <8>;
402 rockchip,capture-channels = <8>;
407 rockchip,playback-channels = <2>;
408 rockchip,capture-channels = <2>;
419 bt656-supply = <&vcc1v8_dvp>;
420 audio-supply = <&vcc_1v8>;
421 sdmmc-supply = <&vccio_sd>;
422 gpio1830-supply = <&vcc_3v0>;
427 pmu1830-supply = <&vcc_3v0>;
432 bt_reg_on_h: bt-reg-on-h {
433 rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
436 bt_host_wake_l: bt-host-wake-l {
437 rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
440 bt_wake_l: bt-wake-l {
441 rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
446 pmic_int_l: pmic-int-l {
447 rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
450 vsel1_pin: vsel1-pin {
451 rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
454 vsel2_pin: vsel2-pin {
455 rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
460 vcc5v0_host3_en: vcc5v0-host3-en {
461 rockchip,pins = <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
466 wifi_reg_on_h: wifi-reg-on-h {
468 <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
471 wifi_host_wake_l: wifi-host-wake-l {
472 rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
484 vref-supply = <&vcc_1v8>;
488 #address-cells = <1>;
491 clock-frequency = <50000000>;
494 keep-power-in-suspend;
495 mmc-pwrseq = <&sdio_pwrseq>;
497 pinctrl-names = "default";
498 pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
503 compatible = "brcm,bcm4329-fmac";
505 interrupt-parent = <&gpio0>;
506 interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
507 interrupt-names = "host-wake";
508 pinctrl-names = "default";
509 pinctrl-0 = <&wifi_host_wake_l>;
516 mmc-hs400-enhanced-strobe;
525 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
527 max-frequency = <150000000>;
528 pinctrl-names = "default";
529 pinctrl-0 = <&sdmmc_clk &sdmmc_cd &sdmmc_cmd &sdmmc_bus4>;
544 /* tshut mode 0:CRU 1:GPIO */
545 rockchip,hw-tshut-mode = <1>;
546 /* tshut polarity 0:LOW 1:HIGH */
547 rockchip,hw-tshut-polarity = <1>;
553 u2phy0_otg: otg-port {
557 u2phy0_host: host-port {
558 phy-supply = <&vcc5v0_host0>;
566 u2phy1_otg: otg-port {
570 u2phy1_host: host-port {
571 phy-supply = <&vcc5v0_host1>;
577 pinctrl-names = "default";
578 pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
582 compatible = "brcm,bcm43438-bt";
584 clock-names = "ext_clock";
585 device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
586 host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
587 shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
588 pinctrl-names = "default";
589 pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_reg_on_h>;