18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Copyright (c) 2018 Collabora Ltd.
48c2ecf20Sopenharmony_ci * Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd.
58c2ecf20Sopenharmony_ci * Copyright (c) 2018 Linaro Ltd.
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci#include "rk3399.dtsi"
98c2ecf20Sopenharmony_ci#include "rk3399-opp.dtsi"
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci/ {
128c2ecf20Sopenharmony_ci	sdio_pwrseq: sdio-pwrseq {
138c2ecf20Sopenharmony_ci		compatible = "mmc-pwrseq-simple";
148c2ecf20Sopenharmony_ci		clocks = <&rk808 1>;
158c2ecf20Sopenharmony_ci		clock-names = "ext_clock";
168c2ecf20Sopenharmony_ci		pinctrl-names = "default";
178c2ecf20Sopenharmony_ci		pinctrl-0 = <&wifi_enable_h>;
188c2ecf20Sopenharmony_ci		reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
198c2ecf20Sopenharmony_ci	};
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci	vcc12v_dcin: vcc12v-dcin {
228c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
238c2ecf20Sopenharmony_ci		regulator-name = "vcc12v_dcin";
248c2ecf20Sopenharmony_ci		regulator-min-microvolt = <12000000>;
258c2ecf20Sopenharmony_ci		regulator-max-microvolt = <12000000>;
268c2ecf20Sopenharmony_ci		regulator-always-on;
278c2ecf20Sopenharmony_ci		regulator-boot-on;
288c2ecf20Sopenharmony_ci	};
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci	vcc1v8_s0: vcc1v8-s0 {
318c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
328c2ecf20Sopenharmony_ci		regulator-name = "vcc1v8_s0";
338c2ecf20Sopenharmony_ci		regulator-min-microvolt = <1800000>;
348c2ecf20Sopenharmony_ci		regulator-max-microvolt = <1800000>;
358c2ecf20Sopenharmony_ci		regulator-always-on;
368c2ecf20Sopenharmony_ci	};
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci	vcc5v0_sys: vcc5v0-sys {
398c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
408c2ecf20Sopenharmony_ci		regulator-name = "vcc5v0_sys";
418c2ecf20Sopenharmony_ci		regulator-min-microvolt = <5000000>;
428c2ecf20Sopenharmony_ci		regulator-max-microvolt = <5000000>;
438c2ecf20Sopenharmony_ci		regulator-always-on;
448c2ecf20Sopenharmony_ci		vin-supply = <&vcc12v_dcin>;
458c2ecf20Sopenharmony_ci	};
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci	vcc3v3_sys: vcc3v3-sys {
488c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
498c2ecf20Sopenharmony_ci		regulator-name = "vcc3v3_sys";
508c2ecf20Sopenharmony_ci		regulator-min-microvolt = <3300000>;
518c2ecf20Sopenharmony_ci		regulator-max-microvolt = <3300000>;
528c2ecf20Sopenharmony_ci		regulator-always-on;
538c2ecf20Sopenharmony_ci		vin-supply = <&vcc5v0_sys>;
548c2ecf20Sopenharmony_ci	};
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci	vcc3v3_pcie: vcc3v3-pcie-regulator {
578c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
588c2ecf20Sopenharmony_ci		enable-active-high;
598c2ecf20Sopenharmony_ci		pinctrl-names = "default";
608c2ecf20Sopenharmony_ci		pinctrl-0 = <&pcie_drv>;
618c2ecf20Sopenharmony_ci		regulator-boot-on;
628c2ecf20Sopenharmony_ci		regulator-name = "vcc3v3_pcie";
638c2ecf20Sopenharmony_ci		regulator-min-microvolt = <3300000>;
648c2ecf20Sopenharmony_ci		regulator-max-microvolt = <3300000>;
658c2ecf20Sopenharmony_ci		vin-supply = <&vcc3v3_sys>;
668c2ecf20Sopenharmony_ci	};
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ci	vcc5v0_host: vcc5v0-host-regulator {
698c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
708c2ecf20Sopenharmony_ci		enable-active-high;
718c2ecf20Sopenharmony_ci		pinctrl-names = "default";
728c2ecf20Sopenharmony_ci		pinctrl-0 = <&host_vbus_drv>;
738c2ecf20Sopenharmony_ci		regulator-name = "vcc5v0_host";
748c2ecf20Sopenharmony_ci		regulator-min-microvolt = <5000000>;
758c2ecf20Sopenharmony_ci		regulator-max-microvolt = <5000000>;
768c2ecf20Sopenharmony_ci		regulator-always-on;
778c2ecf20Sopenharmony_ci		vin-supply = <&vcc5v0_sys>;
788c2ecf20Sopenharmony_ci	};
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci	vcc_0v9: vcc-0v9 {
818c2ecf20Sopenharmony_ci		compatible = "regulator-fixed";
828c2ecf20Sopenharmony_ci		regulator-name = "vcc_0v9";
838c2ecf20Sopenharmony_ci		regulator-always-on;
848c2ecf20Sopenharmony_ci		regulator-min-microvolt = <900000>;
858c2ecf20Sopenharmony_ci		regulator-max-microvolt = <900000>;
868c2ecf20Sopenharmony_ci		vin-supply = <&vcc3v3_sys>;
878c2ecf20Sopenharmony_ci	};
888c2ecf20Sopenharmony_ci};
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci&cpu_l0 {
918c2ecf20Sopenharmony_ci	cpu-supply = <&vdd_cpu_l>;
928c2ecf20Sopenharmony_ci};
938c2ecf20Sopenharmony_ci
948c2ecf20Sopenharmony_ci&cpu_l1 {
958c2ecf20Sopenharmony_ci	cpu-supply = <&vdd_cpu_l>;
968c2ecf20Sopenharmony_ci};
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci&cpu_l2 {
998c2ecf20Sopenharmony_ci	cpu-supply = <&vdd_cpu_l>;
1008c2ecf20Sopenharmony_ci};
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ci&cpu_l3 {
1038c2ecf20Sopenharmony_ci	cpu-supply = <&vdd_cpu_l>;
1048c2ecf20Sopenharmony_ci};
1058c2ecf20Sopenharmony_ci
1068c2ecf20Sopenharmony_ci&cpu_b0 {
1078c2ecf20Sopenharmony_ci	cpu-supply = <&vdd_cpu_b>;
1088c2ecf20Sopenharmony_ci};
1098c2ecf20Sopenharmony_ci
1108c2ecf20Sopenharmony_ci&cpu_b1 {
1118c2ecf20Sopenharmony_ci	cpu-supply = <&vdd_cpu_b>;
1128c2ecf20Sopenharmony_ci};
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ci&emmc_phy {
1158c2ecf20Sopenharmony_ci	status = "okay";
1168c2ecf20Sopenharmony_ci};
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ci&gpu {
1198c2ecf20Sopenharmony_ci	mali-supply = <&vdd_gpu>;
1208c2ecf20Sopenharmony_ci	status = "okay";
1218c2ecf20Sopenharmony_ci};
1228c2ecf20Sopenharmony_ci
1238c2ecf20Sopenharmony_ci&hdmi {
1248c2ecf20Sopenharmony_ci	ddc-i2c-bus = <&i2c3>;
1258c2ecf20Sopenharmony_ci	pinctrl-names = "default";
1268c2ecf20Sopenharmony_ci	pinctrl-0 = <&hdmi_cec>;
1278c2ecf20Sopenharmony_ci	status = "okay";
1288c2ecf20Sopenharmony_ci};
1298c2ecf20Sopenharmony_ci
1308c2ecf20Sopenharmony_ci&hdmi_sound {
1318c2ecf20Sopenharmony_ci	status = "okay";
1328c2ecf20Sopenharmony_ci};
1338c2ecf20Sopenharmony_ci
1348c2ecf20Sopenharmony_ci&i2c0 {
1358c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
1368c2ecf20Sopenharmony_ci	i2c-scl-rising-time-ns = <168>;
1378c2ecf20Sopenharmony_ci	i2c-scl-falling-time-ns = <4>;
1388c2ecf20Sopenharmony_ci	status = "okay";
1398c2ecf20Sopenharmony_ci
1408c2ecf20Sopenharmony_ci	vdd_cpu_b: regulator@40 {
1418c2ecf20Sopenharmony_ci		compatible = "silergy,syr827";
1428c2ecf20Sopenharmony_ci		reg = <0x40>;
1438c2ecf20Sopenharmony_ci		fcs,suspend-voltage-selector = <1>;
1448c2ecf20Sopenharmony_ci		regulator-name = "vdd_cpu_b";
1458c2ecf20Sopenharmony_ci		regulator-min-microvolt = <712500>;
1468c2ecf20Sopenharmony_ci		regulator-max-microvolt = <1500000>;
1478c2ecf20Sopenharmony_ci		regulator-ramp-delay = <1000>;
1488c2ecf20Sopenharmony_ci		regulator-always-on;
1498c2ecf20Sopenharmony_ci		regulator-boot-on;
1508c2ecf20Sopenharmony_ci		vin-supply = <&vcc5v0_sys>;
1518c2ecf20Sopenharmony_ci		status = "okay";
1528c2ecf20Sopenharmony_ci
1538c2ecf20Sopenharmony_ci		regulator-state-mem {
1548c2ecf20Sopenharmony_ci			regulator-off-in-suspend;
1558c2ecf20Sopenharmony_ci		};
1568c2ecf20Sopenharmony_ci	};
1578c2ecf20Sopenharmony_ci
1588c2ecf20Sopenharmony_ci	vdd_gpu: regulator@41 {
1598c2ecf20Sopenharmony_ci		compatible = "silergy,syr828";
1608c2ecf20Sopenharmony_ci		reg = <0x41>;
1618c2ecf20Sopenharmony_ci		fcs,suspend-voltage-selector = <1>;
1628c2ecf20Sopenharmony_ci		regulator-name = "vdd_gpu";
1638c2ecf20Sopenharmony_ci		regulator-min-microvolt = <712500>;
1648c2ecf20Sopenharmony_ci		regulator-max-microvolt = <1500000>;
1658c2ecf20Sopenharmony_ci		regulator-ramp-delay = <1000>;
1668c2ecf20Sopenharmony_ci		regulator-always-on;
1678c2ecf20Sopenharmony_ci		regulator-boot-on;
1688c2ecf20Sopenharmony_ci		vin-supply = <&vcc5v0_sys>;
1698c2ecf20Sopenharmony_ci		regulator-state-mem {
1708c2ecf20Sopenharmony_ci			regulator-off-in-suspend;
1718c2ecf20Sopenharmony_ci		};
1728c2ecf20Sopenharmony_ci	};
1738c2ecf20Sopenharmony_ci
1748c2ecf20Sopenharmony_ci	rk808: pmic@1b {
1758c2ecf20Sopenharmony_ci		compatible = "rockchip,rk808";
1768c2ecf20Sopenharmony_ci		reg = <0x1b>;
1778c2ecf20Sopenharmony_ci		interrupt-parent = <&gpio1>;
1788c2ecf20Sopenharmony_ci		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
1798c2ecf20Sopenharmony_ci		pinctrl-names = "default";
1808c2ecf20Sopenharmony_ci		pinctrl-0 = <&pmic_int_l>;
1818c2ecf20Sopenharmony_ci		rockchip,system-power-controller;
1828c2ecf20Sopenharmony_ci		wakeup-source;
1838c2ecf20Sopenharmony_ci		#clock-cells = <1>;
1848c2ecf20Sopenharmony_ci		clock-output-names = "xin32k", "rk808-clkout2";
1858c2ecf20Sopenharmony_ci
1868c2ecf20Sopenharmony_ci		vcc1-supply = <&vcc5v0_sys>;
1878c2ecf20Sopenharmony_ci		vcc2-supply = <&vcc5v0_sys>;
1888c2ecf20Sopenharmony_ci		vcc3-supply = <&vcc5v0_sys>;
1898c2ecf20Sopenharmony_ci		vcc4-supply = <&vcc5v0_sys>;
1908c2ecf20Sopenharmony_ci		vcc6-supply = <&vcc5v0_sys>;
1918c2ecf20Sopenharmony_ci		vcc7-supply = <&vcc5v0_sys>;
1928c2ecf20Sopenharmony_ci		vcc8-supply = <&vcc3v3_sys>;
1938c2ecf20Sopenharmony_ci		vcc9-supply = <&vcc5v0_sys>;
1948c2ecf20Sopenharmony_ci		vcc10-supply = <&vcc5v0_sys>;
1958c2ecf20Sopenharmony_ci		vcc11-supply = <&vcc5v0_sys>;
1968c2ecf20Sopenharmony_ci		vcc12-supply = <&vcc3v3_sys>;
1978c2ecf20Sopenharmony_ci		vddio-supply = <&vcc_1v8>;
1988c2ecf20Sopenharmony_ci
1998c2ecf20Sopenharmony_ci		regulators {
2008c2ecf20Sopenharmony_ci			vdd_center: DCDC_REG1 {
2018c2ecf20Sopenharmony_ci				regulator-name = "vdd_center";
2028c2ecf20Sopenharmony_ci				regulator-min-microvolt = <750000>;
2038c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1350000>;
2048c2ecf20Sopenharmony_ci				regulator-always-on;
2058c2ecf20Sopenharmony_ci				regulator-boot-on;
2068c2ecf20Sopenharmony_ci				regulator-state-mem {
2078c2ecf20Sopenharmony_ci					regulator-off-in-suspend;
2088c2ecf20Sopenharmony_ci				};
2098c2ecf20Sopenharmony_ci			};
2108c2ecf20Sopenharmony_ci
2118c2ecf20Sopenharmony_ci			vdd_cpu_l: DCDC_REG2 {
2128c2ecf20Sopenharmony_ci				regulator-name = "vdd_cpu_l";
2138c2ecf20Sopenharmony_ci				regulator-min-microvolt = <750000>;
2148c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1350000>;
2158c2ecf20Sopenharmony_ci				regulator-always-on;
2168c2ecf20Sopenharmony_ci				regulator-boot-on;
2178c2ecf20Sopenharmony_ci				regulator-state-mem {
2188c2ecf20Sopenharmony_ci					regulator-off-in-suspend;
2198c2ecf20Sopenharmony_ci				};
2208c2ecf20Sopenharmony_ci			};
2218c2ecf20Sopenharmony_ci
2228c2ecf20Sopenharmony_ci			vcc_ddr: DCDC_REG3 {
2238c2ecf20Sopenharmony_ci				regulator-name = "vcc_ddr";
2248c2ecf20Sopenharmony_ci				regulator-always-on;
2258c2ecf20Sopenharmony_ci				regulator-boot-on;
2268c2ecf20Sopenharmony_ci				regulator-state-mem {
2278c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2288c2ecf20Sopenharmony_ci				};
2298c2ecf20Sopenharmony_ci			};
2308c2ecf20Sopenharmony_ci
2318c2ecf20Sopenharmony_ci			vcc_1v8: DCDC_REG4 {
2328c2ecf20Sopenharmony_ci				regulator-name = "vcc_1v8";
2338c2ecf20Sopenharmony_ci				regulator-min-microvolt = <1800000>;
2348c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1800000>;
2358c2ecf20Sopenharmony_ci				regulator-always-on;
2368c2ecf20Sopenharmony_ci				regulator-boot-on;
2378c2ecf20Sopenharmony_ci				regulator-state-mem {
2388c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2398c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <1800000>;
2408c2ecf20Sopenharmony_ci				};
2418c2ecf20Sopenharmony_ci			};
2428c2ecf20Sopenharmony_ci
2438c2ecf20Sopenharmony_ci			vcc1v8_dvp: LDO_REG1 {
2448c2ecf20Sopenharmony_ci				regulator-name = "vcc1v8_dvp";
2458c2ecf20Sopenharmony_ci				regulator-min-microvolt = <1800000>;
2468c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1800000>;
2478c2ecf20Sopenharmony_ci				regulator-always-on;
2488c2ecf20Sopenharmony_ci				regulator-boot-on;
2498c2ecf20Sopenharmony_ci				regulator-state-mem {
2508c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2518c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <1800000>;
2528c2ecf20Sopenharmony_ci				};
2538c2ecf20Sopenharmony_ci			};
2548c2ecf20Sopenharmony_ci
2558c2ecf20Sopenharmony_ci			vcca1v8_hdmi: LDO_REG2 {
2568c2ecf20Sopenharmony_ci				regulator-name = "vcca1v8_hdmi";
2578c2ecf20Sopenharmony_ci				regulator-min-microvolt = <1800000>;
2588c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1800000>;
2598c2ecf20Sopenharmony_ci				regulator-always-on;
2608c2ecf20Sopenharmony_ci				regulator-boot-on;
2618c2ecf20Sopenharmony_ci				regulator-state-mem {
2628c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2638c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <1800000>;
2648c2ecf20Sopenharmony_ci				};
2658c2ecf20Sopenharmony_ci			};
2668c2ecf20Sopenharmony_ci
2678c2ecf20Sopenharmony_ci			vcca_1v8: LDO_REG3 {
2688c2ecf20Sopenharmony_ci				regulator-name = "vcca_1v8";
2698c2ecf20Sopenharmony_ci				regulator-min-microvolt = <1800000>;
2708c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1800000>;
2718c2ecf20Sopenharmony_ci				regulator-always-on;
2728c2ecf20Sopenharmony_ci				regulator-boot-on;
2738c2ecf20Sopenharmony_ci				regulator-state-mem {
2748c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2758c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <1800000>;
2768c2ecf20Sopenharmony_ci				};
2778c2ecf20Sopenharmony_ci			};
2788c2ecf20Sopenharmony_ci
2798c2ecf20Sopenharmony_ci			vcc_sd: LDO_REG4 {
2808c2ecf20Sopenharmony_ci				regulator-name = "vcc_sd";
2818c2ecf20Sopenharmony_ci				regulator-min-microvolt = <1800000>;
2828c2ecf20Sopenharmony_ci				regulator-max-microvolt = <3300000>;
2838c2ecf20Sopenharmony_ci				regulator-always-on;
2848c2ecf20Sopenharmony_ci				regulator-boot-on;
2858c2ecf20Sopenharmony_ci				regulator-state-mem {
2868c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2878c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <3300000>;
2888c2ecf20Sopenharmony_ci				};
2898c2ecf20Sopenharmony_ci			};
2908c2ecf20Sopenharmony_ci
2918c2ecf20Sopenharmony_ci			vcc3v0_sd: LDO_REG5 {
2928c2ecf20Sopenharmony_ci				regulator-name = "vcc3v0_sd";
2938c2ecf20Sopenharmony_ci				regulator-min-microvolt = <3000000>;
2948c2ecf20Sopenharmony_ci				regulator-max-microvolt = <3000000>;
2958c2ecf20Sopenharmony_ci				regulator-always-on;
2968c2ecf20Sopenharmony_ci				regulator-boot-on;
2978c2ecf20Sopenharmony_ci				regulator-state-mem {
2988c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
2998c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <3000000>;
3008c2ecf20Sopenharmony_ci				};
3018c2ecf20Sopenharmony_ci			};
3028c2ecf20Sopenharmony_ci
3038c2ecf20Sopenharmony_ci			vcc_1v5: LDO_REG6 {
3048c2ecf20Sopenharmony_ci				regulator-name = "vcc_1v5";
3058c2ecf20Sopenharmony_ci				regulator-min-microvolt = <1500000>;
3068c2ecf20Sopenharmony_ci				regulator-max-microvolt = <1500000>;
3078c2ecf20Sopenharmony_ci				regulator-always-on;
3088c2ecf20Sopenharmony_ci				regulator-boot-on;
3098c2ecf20Sopenharmony_ci				regulator-state-mem {
3108c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
3118c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <1500000>;
3128c2ecf20Sopenharmony_ci				};
3138c2ecf20Sopenharmony_ci			};
3148c2ecf20Sopenharmony_ci
3158c2ecf20Sopenharmony_ci			vcca0v9_hdmi: LDO_REG7 {
3168c2ecf20Sopenharmony_ci				regulator-name = "vcca0v9_hdmi";
3178c2ecf20Sopenharmony_ci				regulator-min-microvolt = <900000>;
3188c2ecf20Sopenharmony_ci				regulator-max-microvolt = <900000>;
3198c2ecf20Sopenharmony_ci				regulator-always-on;
3208c2ecf20Sopenharmony_ci				regulator-boot-on;
3218c2ecf20Sopenharmony_ci				regulator-state-mem {
3228c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
3238c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <900000>;
3248c2ecf20Sopenharmony_ci				};
3258c2ecf20Sopenharmony_ci			};
3268c2ecf20Sopenharmony_ci
3278c2ecf20Sopenharmony_ci			vcc_3v0: LDO_REG8 {
3288c2ecf20Sopenharmony_ci				regulator-name = "vcc_3v0";
3298c2ecf20Sopenharmony_ci				regulator-min-microvolt = <3000000>;
3308c2ecf20Sopenharmony_ci				regulator-max-microvolt = <3000000>;
3318c2ecf20Sopenharmony_ci				regulator-always-on;
3328c2ecf20Sopenharmony_ci				regulator-boot-on;
3338c2ecf20Sopenharmony_ci				regulator-state-mem {
3348c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
3358c2ecf20Sopenharmony_ci					regulator-suspend-microvolt = <3000000>;
3368c2ecf20Sopenharmony_ci				};
3378c2ecf20Sopenharmony_ci			};
3388c2ecf20Sopenharmony_ci
3398c2ecf20Sopenharmony_ci			vcc3v3_s3: SWITCH_REG1 {
3408c2ecf20Sopenharmony_ci				regulator-name = "vcc3v3_s3";
3418c2ecf20Sopenharmony_ci				regulator-always-on;
3428c2ecf20Sopenharmony_ci				regulator-boot-on;
3438c2ecf20Sopenharmony_ci				regulator-state-mem {
3448c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
3458c2ecf20Sopenharmony_ci				};
3468c2ecf20Sopenharmony_ci			};
3478c2ecf20Sopenharmony_ci
3488c2ecf20Sopenharmony_ci			vcc3v3_s0: SWITCH_REG2 {
3498c2ecf20Sopenharmony_ci				regulator-name = "vcc3v3_s0";
3508c2ecf20Sopenharmony_ci				regulator-always-on;
3518c2ecf20Sopenharmony_ci				regulator-boot-on;
3528c2ecf20Sopenharmony_ci				regulator-state-mem {
3538c2ecf20Sopenharmony_ci					regulator-on-in-suspend;
3548c2ecf20Sopenharmony_ci				};
3558c2ecf20Sopenharmony_ci			};
3568c2ecf20Sopenharmony_ci		};
3578c2ecf20Sopenharmony_ci	};
3588c2ecf20Sopenharmony_ci};
3598c2ecf20Sopenharmony_ci
3608c2ecf20Sopenharmony_ci&i2c1 {
3618c2ecf20Sopenharmony_ci	status = "okay";
3628c2ecf20Sopenharmony_ci};
3638c2ecf20Sopenharmony_ci
3648c2ecf20Sopenharmony_ci&i2c2 {
3658c2ecf20Sopenharmony_ci	status = "okay";
3668c2ecf20Sopenharmony_ci};
3678c2ecf20Sopenharmony_ci
3688c2ecf20Sopenharmony_ci&i2c3 {
3698c2ecf20Sopenharmony_ci	status = "okay";
3708c2ecf20Sopenharmony_ci};
3718c2ecf20Sopenharmony_ci
3728c2ecf20Sopenharmony_ci&i2c4 {
3738c2ecf20Sopenharmony_ci	status = "okay";
3748c2ecf20Sopenharmony_ci};
3758c2ecf20Sopenharmony_ci
3768c2ecf20Sopenharmony_ci&i2s2 {
3778c2ecf20Sopenharmony_ci        status = "okay";
3788c2ecf20Sopenharmony_ci};
3798c2ecf20Sopenharmony_ci
3808c2ecf20Sopenharmony_ci&io_domains {
3818c2ecf20Sopenharmony_ci	bt656-supply = <&vcc1v8_s0>; /* bt656_gpio2ab_ms */
3828c2ecf20Sopenharmony_ci	audio-supply = <&vcc1v8_s0>; /* audio_gpio3d4a_ms */
3838c2ecf20Sopenharmony_ci	sdmmc-supply = <&vcc_sd>; /* sdmmc_gpio4b_ms */
3848c2ecf20Sopenharmony_ci	gpio1830-supply = <&vcc_3v0>; /* gpio1833_gpio4cd_ms */
3858c2ecf20Sopenharmony_ci	status = "okay";
3868c2ecf20Sopenharmony_ci};
3878c2ecf20Sopenharmony_ci
3888c2ecf20Sopenharmony_ci&pcie_phy {
3898c2ecf20Sopenharmony_ci	status = "okay";
3908c2ecf20Sopenharmony_ci};
3918c2ecf20Sopenharmony_ci
3928c2ecf20Sopenharmony_ci&pcie0 {
3938c2ecf20Sopenharmony_ci	num-lanes = <4>;
3948c2ecf20Sopenharmony_ci	pinctrl-names = "default";
3958c2ecf20Sopenharmony_ci	pinctrl-0 = <&pcie_clkreqn_cpm>;
3968c2ecf20Sopenharmony_ci	vpcie0v9-supply = <&vcc_0v9>;
3978c2ecf20Sopenharmony_ci	vpcie1v8-supply = <&vcca_1v8>;
3988c2ecf20Sopenharmony_ci	vpcie3v3-supply = <&vcc3v3_pcie>;
3998c2ecf20Sopenharmony_ci	status = "okay";
4008c2ecf20Sopenharmony_ci};
4018c2ecf20Sopenharmony_ci
4028c2ecf20Sopenharmony_ci&pmu_io_domains {
4038c2ecf20Sopenharmony_ci	pmu1830-supply = <&vcc_1v8>;
4048c2ecf20Sopenharmony_ci	status = "okay";
4058c2ecf20Sopenharmony_ci};
4068c2ecf20Sopenharmony_ci
4078c2ecf20Sopenharmony_ci&pinctrl {
4088c2ecf20Sopenharmony_ci	bt {
4098c2ecf20Sopenharmony_ci		bt_enable_h: bt-enable-h {
4108c2ecf20Sopenharmony_ci			rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
4118c2ecf20Sopenharmony_ci		};
4128c2ecf20Sopenharmony_ci
4138c2ecf20Sopenharmony_ci		bt_host_wake_l: bt-host-wake-l {
4148c2ecf20Sopenharmony_ci			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
4158c2ecf20Sopenharmony_ci		};
4168c2ecf20Sopenharmony_ci
4178c2ecf20Sopenharmony_ci		bt_wake_l: bt-wake-l {
4188c2ecf20Sopenharmony_ci			rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
4198c2ecf20Sopenharmony_ci		};
4208c2ecf20Sopenharmony_ci	};
4218c2ecf20Sopenharmony_ci
4228c2ecf20Sopenharmony_ci	sdmmc {
4238c2ecf20Sopenharmony_ci		sdmmc_bus1: sdmmc-bus1 {
4248c2ecf20Sopenharmony_ci			rockchip,pins =
4258c2ecf20Sopenharmony_ci				<4 RK_PB0 1 &pcfg_pull_up_8ma>;
4268c2ecf20Sopenharmony_ci		};
4278c2ecf20Sopenharmony_ci
4288c2ecf20Sopenharmony_ci		sdmmc_bus4: sdmmc-bus4 {
4298c2ecf20Sopenharmony_ci			rockchip,pins =
4308c2ecf20Sopenharmony_ci				<4 RK_PB0 1 &pcfg_pull_up_8ma>,
4318c2ecf20Sopenharmony_ci				<4 RK_PB1 1 &pcfg_pull_up_8ma>,
4328c2ecf20Sopenharmony_ci				<4 RK_PB2 1 &pcfg_pull_up_8ma>,
4338c2ecf20Sopenharmony_ci				<4 RK_PB3 1 &pcfg_pull_up_8ma>;
4348c2ecf20Sopenharmony_ci		};
4358c2ecf20Sopenharmony_ci
4368c2ecf20Sopenharmony_ci		sdmmc_clk: sdmmc-clk {
4378c2ecf20Sopenharmony_ci			rockchip,pins =
4388c2ecf20Sopenharmony_ci				<4 RK_PB4 1 &pcfg_pull_none_18ma>;
4398c2ecf20Sopenharmony_ci		};
4408c2ecf20Sopenharmony_ci
4418c2ecf20Sopenharmony_ci		sdmmc_cmd: sdmmc-cmd {
4428c2ecf20Sopenharmony_ci			rockchip,pins =
4438c2ecf20Sopenharmony_ci				<4 RK_PB5 1 &pcfg_pull_up_8ma>;
4448c2ecf20Sopenharmony_ci		};
4458c2ecf20Sopenharmony_ci	};
4468c2ecf20Sopenharmony_ci
4478c2ecf20Sopenharmony_ci	sdio0 {
4488c2ecf20Sopenharmony_ci		sdio0_bus4: sdio0-bus4 {
4498c2ecf20Sopenharmony_ci			rockchip,pins =
4508c2ecf20Sopenharmony_ci				<2 RK_PC4 1 &pcfg_pull_up_20ma>,
4518c2ecf20Sopenharmony_ci				<2 RK_PC5 1 &pcfg_pull_up_20ma>,
4528c2ecf20Sopenharmony_ci				<2 RK_PC6 1 &pcfg_pull_up_20ma>,
4538c2ecf20Sopenharmony_ci				<2 RK_PC7 1 &pcfg_pull_up_20ma>;
4548c2ecf20Sopenharmony_ci		};
4558c2ecf20Sopenharmony_ci
4568c2ecf20Sopenharmony_ci		sdio0_cmd: sdio0-cmd {
4578c2ecf20Sopenharmony_ci			rockchip,pins =
4588c2ecf20Sopenharmony_ci				<2 RK_PD0 1 &pcfg_pull_up_20ma>;
4598c2ecf20Sopenharmony_ci		};
4608c2ecf20Sopenharmony_ci
4618c2ecf20Sopenharmony_ci		sdio0_clk: sdio0-clk {
4628c2ecf20Sopenharmony_ci			rockchip,pins =
4638c2ecf20Sopenharmony_ci				<2 RK_PD1 1 &pcfg_pull_none_20ma>;
4648c2ecf20Sopenharmony_ci		};
4658c2ecf20Sopenharmony_ci	};
4668c2ecf20Sopenharmony_ci
4678c2ecf20Sopenharmony_ci	pmic {
4688c2ecf20Sopenharmony_ci		pmic_int_l: pmic-int-l {
4698c2ecf20Sopenharmony_ci			rockchip,pins =
4708c2ecf20Sopenharmony_ci				<1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
4718c2ecf20Sopenharmony_ci		};
4728c2ecf20Sopenharmony_ci
4738c2ecf20Sopenharmony_ci		vsel1_pin: vsel1-pin {
4748c2ecf20Sopenharmony_ci			rockchip,pins =
4758c2ecf20Sopenharmony_ci				<1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
4768c2ecf20Sopenharmony_ci		};
4778c2ecf20Sopenharmony_ci
4788c2ecf20Sopenharmony_ci		vsel2_pin: vsel2-pin {
4798c2ecf20Sopenharmony_ci			rockchip,pins =
4808c2ecf20Sopenharmony_ci				<1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
4818c2ecf20Sopenharmony_ci		};
4828c2ecf20Sopenharmony_ci	};
4838c2ecf20Sopenharmony_ci
4848c2ecf20Sopenharmony_ci	sdio-pwrseq {
4858c2ecf20Sopenharmony_ci		wifi_enable_h: wifi-enable-h {
4868c2ecf20Sopenharmony_ci			rockchip,pins =
4878c2ecf20Sopenharmony_ci				<0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
4888c2ecf20Sopenharmony_ci		};
4898c2ecf20Sopenharmony_ci	};
4908c2ecf20Sopenharmony_ci
4918c2ecf20Sopenharmony_ci	wifi {
4928c2ecf20Sopenharmony_ci		wifi_host_wake_l: wifi-host-wake-l {
4938c2ecf20Sopenharmony_ci			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
4948c2ecf20Sopenharmony_ci		};
4958c2ecf20Sopenharmony_ci	};
4968c2ecf20Sopenharmony_ci};
4978c2ecf20Sopenharmony_ci
4988c2ecf20Sopenharmony_ci&pwm2 {
4998c2ecf20Sopenharmony_ci	status = "okay";
5008c2ecf20Sopenharmony_ci};
5018c2ecf20Sopenharmony_ci
5028c2ecf20Sopenharmony_ci&pwm3 {
5038c2ecf20Sopenharmony_ci	status = "okay";
5048c2ecf20Sopenharmony_ci};
5058c2ecf20Sopenharmony_ci
5068c2ecf20Sopenharmony_ci&sdio0 {
5078c2ecf20Sopenharmony_ci	bus-width = <4>;
5088c2ecf20Sopenharmony_ci	clock-frequency = <50000000>;
5098c2ecf20Sopenharmony_ci	cap-sdio-irq;
5108c2ecf20Sopenharmony_ci	cap-sd-highspeed;
5118c2ecf20Sopenharmony_ci	keep-power-in-suspend;
5128c2ecf20Sopenharmony_ci	mmc-pwrseq = <&sdio_pwrseq>;
5138c2ecf20Sopenharmony_ci	non-removable;
5148c2ecf20Sopenharmony_ci	pinctrl-names = "default";
5158c2ecf20Sopenharmony_ci	pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
5168c2ecf20Sopenharmony_ci	sd-uhs-sdr104;
5178c2ecf20Sopenharmony_ci	#address-cells = <1>;
5188c2ecf20Sopenharmony_ci	#size-cells = <0>;
5198c2ecf20Sopenharmony_ci	status = "okay";
5208c2ecf20Sopenharmony_ci
5218c2ecf20Sopenharmony_ci	brcmf: wifi@1 {
5228c2ecf20Sopenharmony_ci		compatible = "brcm,bcm4329-fmac";
5238c2ecf20Sopenharmony_ci		reg = <1>;
5248c2ecf20Sopenharmony_ci		interrupt-parent = <&gpio0>;
5258c2ecf20Sopenharmony_ci		interrupts = <RK_PA3 GPIO_ACTIVE_HIGH>;
5268c2ecf20Sopenharmony_ci		interrupt-names = "host-wake";
5278c2ecf20Sopenharmony_ci		pinctrl-names = "default";
5288c2ecf20Sopenharmony_ci		pinctrl-0 = <&wifi_host_wake_l>;
5298c2ecf20Sopenharmony_ci	};
5308c2ecf20Sopenharmony_ci};
5318c2ecf20Sopenharmony_ci
5328c2ecf20Sopenharmony_ci&sdhci {
5338c2ecf20Sopenharmony_ci	bus-width = <8>;
5348c2ecf20Sopenharmony_ci	mmc-hs400-1_8v;
5358c2ecf20Sopenharmony_ci	mmc-hs400-enhanced-strobe;
5368c2ecf20Sopenharmony_ci	non-removable;
5378c2ecf20Sopenharmony_ci	status = "okay";
5388c2ecf20Sopenharmony_ci};
5398c2ecf20Sopenharmony_ci
5408c2ecf20Sopenharmony_ci&sdmmc {
5418c2ecf20Sopenharmony_ci	bus-width = <4>;
5428c2ecf20Sopenharmony_ci	cap-mmc-highspeed;
5438c2ecf20Sopenharmony_ci	cap-sd-highspeed;
5448c2ecf20Sopenharmony_ci	clock-frequency = <100000000>;
5458c2ecf20Sopenharmony_ci	max-frequency = <100000000>;
5468c2ecf20Sopenharmony_ci	cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
5478c2ecf20Sopenharmony_ci	disable-wp;
5488c2ecf20Sopenharmony_ci	sd-uhs-sdr104;
5498c2ecf20Sopenharmony_ci	vqmmc-supply = <&vcc_sd>;
5508c2ecf20Sopenharmony_ci	card-detect-delay = <800>;
5518c2ecf20Sopenharmony_ci	pinctrl-names = "default";
5528c2ecf20Sopenharmony_ci	pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
5538c2ecf20Sopenharmony_ci	status = "okay";
5548c2ecf20Sopenharmony_ci};
5558c2ecf20Sopenharmony_ci
5568c2ecf20Sopenharmony_ci&tsadc {
5578c2ecf20Sopenharmony_ci	rockchip,hw-tshut-mode = <1>;
5588c2ecf20Sopenharmony_ci	rockchip,hw-tshut-polarity = <1>;
5598c2ecf20Sopenharmony_ci	rockchip,hw-tshut-temp = <110000>;
5608c2ecf20Sopenharmony_ci	status = "okay";
5618c2ecf20Sopenharmony_ci};
5628c2ecf20Sopenharmony_ci
5638c2ecf20Sopenharmony_ci&uart0 {
5648c2ecf20Sopenharmony_ci	pinctrl-names = "default";
5658c2ecf20Sopenharmony_ci	pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
5668c2ecf20Sopenharmony_ci	status = "okay";
5678c2ecf20Sopenharmony_ci
5688c2ecf20Sopenharmony_ci	bluetooth {
5698c2ecf20Sopenharmony_ci		compatible = "brcm,bcm43438-bt";
5708c2ecf20Sopenharmony_ci		clocks = <&rk808 1>;
5718c2ecf20Sopenharmony_ci		clock-names = "ext_clock";
5728c2ecf20Sopenharmony_ci		device-wakeup-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
5738c2ecf20Sopenharmony_ci		host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
5748c2ecf20Sopenharmony_ci		shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
5758c2ecf20Sopenharmony_ci		pinctrl-names = "default";
5768c2ecf20Sopenharmony_ci		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
5778c2ecf20Sopenharmony_ci	};
5788c2ecf20Sopenharmony_ci};
5798c2ecf20Sopenharmony_ci
5808c2ecf20Sopenharmony_ci&uart2 {
5818c2ecf20Sopenharmony_ci	status = "okay";
5828c2ecf20Sopenharmony_ci};
5838c2ecf20Sopenharmony_ci
5848c2ecf20Sopenharmony_ci&tcphy0 {
5858c2ecf20Sopenharmony_ci	status = "okay";
5868c2ecf20Sopenharmony_ci};
5878c2ecf20Sopenharmony_ci
5888c2ecf20Sopenharmony_ci&tcphy1 {
5898c2ecf20Sopenharmony_ci	status = "okay";
5908c2ecf20Sopenharmony_ci};
5918c2ecf20Sopenharmony_ci
5928c2ecf20Sopenharmony_ci&u2phy0 {
5938c2ecf20Sopenharmony_ci	status = "okay";
5948c2ecf20Sopenharmony_ci};
5958c2ecf20Sopenharmony_ci
5968c2ecf20Sopenharmony_ci&u2phy1 {
5978c2ecf20Sopenharmony_ci	status = "okay";
5988c2ecf20Sopenharmony_ci};
5998c2ecf20Sopenharmony_ci
6008c2ecf20Sopenharmony_ci&u2phy0_host {
6018c2ecf20Sopenharmony_ci	phy-supply = <&vcc5v0_host>;
6028c2ecf20Sopenharmony_ci	status = "okay";
6038c2ecf20Sopenharmony_ci};
6048c2ecf20Sopenharmony_ci
6058c2ecf20Sopenharmony_ci&u2phy1_host {
6068c2ecf20Sopenharmony_ci	phy-supply = <&vcc5v0_host>;
6078c2ecf20Sopenharmony_ci	status = "okay";
6088c2ecf20Sopenharmony_ci};
6098c2ecf20Sopenharmony_ci
6108c2ecf20Sopenharmony_ci&u2phy0_otg {
6118c2ecf20Sopenharmony_ci	status = "okay";
6128c2ecf20Sopenharmony_ci};
6138c2ecf20Sopenharmony_ci
6148c2ecf20Sopenharmony_ci&u2phy1_otg {
6158c2ecf20Sopenharmony_ci	status = "okay";
6168c2ecf20Sopenharmony_ci};
6178c2ecf20Sopenharmony_ci
6188c2ecf20Sopenharmony_ci&usb_host0_ehci {
6198c2ecf20Sopenharmony_ci	status = "okay";
6208c2ecf20Sopenharmony_ci};
6218c2ecf20Sopenharmony_ci
6228c2ecf20Sopenharmony_ci&usb_host0_ohci {
6238c2ecf20Sopenharmony_ci	status = "okay";
6248c2ecf20Sopenharmony_ci};
6258c2ecf20Sopenharmony_ci
6268c2ecf20Sopenharmony_ci&usb_host1_ehci {
6278c2ecf20Sopenharmony_ci	status = "okay";
6288c2ecf20Sopenharmony_ci};
6298c2ecf20Sopenharmony_ci
6308c2ecf20Sopenharmony_ci&usb_host1_ohci {
6318c2ecf20Sopenharmony_ci	status = "okay";
6328c2ecf20Sopenharmony_ci};
6338c2ecf20Sopenharmony_ci
6348c2ecf20Sopenharmony_ci&usbdrd3_0 {
6358c2ecf20Sopenharmony_ci	status = "okay";
6368c2ecf20Sopenharmony_ci};
6378c2ecf20Sopenharmony_ci
6388c2ecf20Sopenharmony_ci&usbdrd_dwc3_0 {
6398c2ecf20Sopenharmony_ci	status = "okay";
6408c2ecf20Sopenharmony_ci};
6418c2ecf20Sopenharmony_ci
6428c2ecf20Sopenharmony_ci&usbdrd3_1 {
6438c2ecf20Sopenharmony_ci	status = "okay";
6448c2ecf20Sopenharmony_ci};
6458c2ecf20Sopenharmony_ci
6468c2ecf20Sopenharmony_ci&usbdrd_dwc3_1 {
6478c2ecf20Sopenharmony_ci	status = "okay";
6488c2ecf20Sopenharmony_ci};
6498c2ecf20Sopenharmony_ci
6508c2ecf20Sopenharmony_ci&vopb {
6518c2ecf20Sopenharmony_ci	status = "okay";
6528c2ecf20Sopenharmony_ci};
6538c2ecf20Sopenharmony_ci
6548c2ecf20Sopenharmony_ci&vopb_mmu {
6558c2ecf20Sopenharmony_ci	status = "okay";
6568c2ecf20Sopenharmony_ci};
6578c2ecf20Sopenharmony_ci
6588c2ecf20Sopenharmony_ci&vopl {
6598c2ecf20Sopenharmony_ci	status = "okay";
6608c2ecf20Sopenharmony_ci};
6618c2ecf20Sopenharmony_ci
6628c2ecf20Sopenharmony_ci&vopl_mmu {
6638c2ecf20Sopenharmony_ci	status = "okay";
6648c2ecf20Sopenharmony_ci};
665