xref: /freebsd/sys/contrib/device-tree/src/arm64/rockchip/rk3399-eaidk-610.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
17ef62cebSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
27ef62cebSEmmanuel Vadot/*
37ef62cebSEmmanuel Vadot * Copyright (c) 2022 Fuzhou Rockchip Electronics Co., Ltd.
47ef62cebSEmmanuel Vadot */
57ef62cebSEmmanuel Vadot
67ef62cebSEmmanuel Vadot/dts-v1/;
77ef62cebSEmmanuel Vadot#include <dt-bindings/input/linux-event-codes.h>
87ef62cebSEmmanuel Vadot#include <dt-bindings/pwm/pwm.h>
97ef62cebSEmmanuel Vadot#include <dt-bindings/usb/pd.h>
107ef62cebSEmmanuel Vadot#include "rk3399.dtsi"
117ef62cebSEmmanuel Vadot#include "rk3399-opp.dtsi"
127ef62cebSEmmanuel Vadot
137ef62cebSEmmanuel Vadot/ {
147ef62cebSEmmanuel Vadot	model = "OPEN AI LAB EAIDK-610";
157ef62cebSEmmanuel Vadot	compatible = "openailab,eaidk-610", "rockchip,rk3399";
167ef62cebSEmmanuel Vadot
177ef62cebSEmmanuel Vadot	aliases {
18*8d13bc63SEmmanuel Vadot		ethernet0 = &gmac;
197ef62cebSEmmanuel Vadot		mmc0 = &sdio0;
207ef62cebSEmmanuel Vadot		mmc1 = &sdmmc;
217ef62cebSEmmanuel Vadot		mmc2 = &sdhci;
227ef62cebSEmmanuel Vadot	};
237ef62cebSEmmanuel Vadot
247ef62cebSEmmanuel Vadot	backlight: backlight {
257ef62cebSEmmanuel Vadot		compatible = "pwm-backlight";
267ef62cebSEmmanuel Vadot		pwms = <&pwm0 0 25000 0>;
277ef62cebSEmmanuel Vadot		brightness-levels = <
287ef62cebSEmmanuel Vadot			  0   1   2   3   4   5   6   7
297ef62cebSEmmanuel Vadot			  8   9  10  11  12  13  14  15
307ef62cebSEmmanuel Vadot			 16  17  18  19  20  21  22  23
317ef62cebSEmmanuel Vadot			 24  25  26  27  28  29  30  31
327ef62cebSEmmanuel Vadot			 32  33  34  35  36  37  38  39
337ef62cebSEmmanuel Vadot			 40  41  42  43  44  45  46  47
347ef62cebSEmmanuel Vadot			 48  49  50  51  52  53  54  55
357ef62cebSEmmanuel Vadot			 56  57  58  59  60  61  62  63
367ef62cebSEmmanuel Vadot			 64  65  66  67  68  69  70  71
377ef62cebSEmmanuel Vadot			 72  73  74  75  76  77  78  79
387ef62cebSEmmanuel Vadot			 80  81  82  83  84  85  86  87
397ef62cebSEmmanuel Vadot			 88  89  90  91  92  93  94  95
407ef62cebSEmmanuel Vadot			 96  97  98  99 100 101 102 103
417ef62cebSEmmanuel Vadot			104 105 106 107 108 109 110 111
427ef62cebSEmmanuel Vadot			112 113 114 115 116 117 118 119
437ef62cebSEmmanuel Vadot			120 121 122 123 124 125 126 127
447ef62cebSEmmanuel Vadot			128 129 130 131 132 133 134 135
457ef62cebSEmmanuel Vadot			136 137 138 139 140 141 142 143
467ef62cebSEmmanuel Vadot			144 145 146 147 148 149 150 151
477ef62cebSEmmanuel Vadot			152 153 154 155 156 157 158 159
487ef62cebSEmmanuel Vadot			160 161 162 163 164 165 166 167
497ef62cebSEmmanuel Vadot			168 169 170 171 172 173 174 175
507ef62cebSEmmanuel Vadot			176 177 178 179 180 181 182 183
517ef62cebSEmmanuel Vadot			184 185 186 187 188 189 190 191
527ef62cebSEmmanuel Vadot			192 193 194 195 196 197 198 199
537ef62cebSEmmanuel Vadot			200 201 202 203 204 205 206 207
547ef62cebSEmmanuel Vadot			208 209 210 211 212 213 214 215
557ef62cebSEmmanuel Vadot			216 217 218 219 220 221 222 223
567ef62cebSEmmanuel Vadot			224 225 226 227 228 229 230 231
577ef62cebSEmmanuel Vadot			232 233 234 235 236 237 238 239
587ef62cebSEmmanuel Vadot			240 241 242 243 244 245 246 247
597ef62cebSEmmanuel Vadot			248 249 250 251 252 253 254 255>;
607ef62cebSEmmanuel Vadot		default-brightness-level = <200>;
617ef62cebSEmmanuel Vadot	};
627ef62cebSEmmanuel Vadot
637ef62cebSEmmanuel Vadot	clkin_gmac: external-gmac-clock {
647ef62cebSEmmanuel Vadot		compatible = "fixed-clock";
657ef62cebSEmmanuel Vadot		clock-frequency = <125000000>;
667ef62cebSEmmanuel Vadot		clock-output-names = "clkin_gmac";
677ef62cebSEmmanuel Vadot		#clock-cells = <0>;
687ef62cebSEmmanuel Vadot	};
697ef62cebSEmmanuel Vadot
707ef62cebSEmmanuel Vadot	dc_12v: dc-12v {
717ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
727ef62cebSEmmanuel Vadot		regulator-name = "dc_12v";
737ef62cebSEmmanuel Vadot		regulator-always-on;
747ef62cebSEmmanuel Vadot		regulator-boot-on;
757ef62cebSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
767ef62cebSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
777ef62cebSEmmanuel Vadot	};
787ef62cebSEmmanuel Vadot
797ef62cebSEmmanuel Vadot	gpio-keys {
807ef62cebSEmmanuel Vadot		compatible = "gpio-keys";
817ef62cebSEmmanuel Vadot		autorepeat;
827ef62cebSEmmanuel Vadot		pinctrl-names = "default";
837ef62cebSEmmanuel Vadot		pinctrl-0 = <&pwrbtn>;
847ef62cebSEmmanuel Vadot
857ef62cebSEmmanuel Vadot		key-power {
867ef62cebSEmmanuel Vadot			debounce-interval = <100>;
877ef62cebSEmmanuel Vadot			gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
887ef62cebSEmmanuel Vadot			label = "GPIO Key Power";
897ef62cebSEmmanuel Vadot			linux,code = <KEY_POWER>;
907ef62cebSEmmanuel Vadot			wakeup-source;
917ef62cebSEmmanuel Vadot		};
927ef62cebSEmmanuel Vadot	};
937ef62cebSEmmanuel Vadot
947ef62cebSEmmanuel Vadot	leds {
957ef62cebSEmmanuel Vadot		compatible = "gpio-leds";
967ef62cebSEmmanuel Vadot		pinctrl-names = "default";
977ef62cebSEmmanuel Vadot		pinctrl-0 = <&work_led_pin>, <&user_led_pin>,
987ef62cebSEmmanuel Vadot			    <&heartbeat_led_pin>, <&wlan_active_led_pin>,
997ef62cebSEmmanuel Vadot			    <&bt_active_led_pin>;
1007ef62cebSEmmanuel Vadot
1017ef62cebSEmmanuel Vadot		work_led: led-0 {
1027ef62cebSEmmanuel Vadot			label = "blue:work";
1037ef62cebSEmmanuel Vadot			default-state = "on";
1047ef62cebSEmmanuel Vadot			gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
1057ef62cebSEmmanuel Vadot		};
1067ef62cebSEmmanuel Vadot
1077ef62cebSEmmanuel Vadot		user_led: led-1 {
1087ef62cebSEmmanuel Vadot			label = "read:user";
1097ef62cebSEmmanuel Vadot			default-state = "off";
1107ef62cebSEmmanuel Vadot			gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
1117ef62cebSEmmanuel Vadot		};
1127ef62cebSEmmanuel Vadot
1137ef62cebSEmmanuel Vadot		heartbeat_led: led-2 {
1147ef62cebSEmmanuel Vadot			label = "green:heartbeat";
1157ef62cebSEmmanuel Vadot			linux,default-trigger = "heartbeat";
1167ef62cebSEmmanuel Vadot			gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
1177ef62cebSEmmanuel Vadot		};
1187ef62cebSEmmanuel Vadot
1197ef62cebSEmmanuel Vadot		wlan_active_led: led-3 {
1207ef62cebSEmmanuel Vadot			label = "yellow:wlan";
1217ef62cebSEmmanuel Vadot			gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
1227ef62cebSEmmanuel Vadot			linux,default-trigger = "phy0tx";
1237ef62cebSEmmanuel Vadot			default-state = "off";
1247ef62cebSEmmanuel Vadot		};
1257ef62cebSEmmanuel Vadot
1267ef62cebSEmmanuel Vadot		bt_active_led: led-4 {
1277ef62cebSEmmanuel Vadot			label = "blue:bt";
1287ef62cebSEmmanuel Vadot			gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>;
1297ef62cebSEmmanuel Vadot			linux,default-trigger = "hci0-power";
1307ef62cebSEmmanuel Vadot			default-state = "off";
1317ef62cebSEmmanuel Vadot		};
1327ef62cebSEmmanuel Vadot	};
1337ef62cebSEmmanuel Vadot
1347ef62cebSEmmanuel Vadot	rt5651-sound {
1357ef62cebSEmmanuel Vadot		compatible = "simple-audio-card";
1367ef62cebSEmmanuel Vadot		simple-audio-card,name = "realtek,rt5651-codec";
1377ef62cebSEmmanuel Vadot		simple-audio-card,format = "i2s";
1387ef62cebSEmmanuel Vadot		simple-audio-card,mclk-fs = <256>;
1397ef62cebSEmmanuel Vadot		simple-audio-card,widgets =
1407ef62cebSEmmanuel Vadot			"Microphone", "Mic Jack",
1417ef62cebSEmmanuel Vadot			"Headphone", "Headphone Jack";
1427ef62cebSEmmanuel Vadot		simple-audio-card,routing =
1437ef62cebSEmmanuel Vadot			"Mic Jack", "MICBIAS1",
1447ef62cebSEmmanuel Vadot			"IN1P", "Mic Jack",
1457ef62cebSEmmanuel Vadot			"Headphone Jack", "HPOL",
1467ef62cebSEmmanuel Vadot			"Headphone Jack", "HPOR";
1477ef62cebSEmmanuel Vadot		simple-audio-card,cpu {
1487ef62cebSEmmanuel Vadot			sound-dai = <&i2s1>;
1497ef62cebSEmmanuel Vadot		};
1507ef62cebSEmmanuel Vadot		simple-audio-card,codec {
1517ef62cebSEmmanuel Vadot			sound-dai = <&rt5651>;
1527ef62cebSEmmanuel Vadot		};
1537ef62cebSEmmanuel Vadot	};
1547ef62cebSEmmanuel Vadot
1557ef62cebSEmmanuel Vadot	sdio_pwrseq: sdio-pwrseq {
1567ef62cebSEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
1577ef62cebSEmmanuel Vadot		clocks = <&rk808 1>;
1587ef62cebSEmmanuel Vadot		clock-names = "ext_clock";
1597ef62cebSEmmanuel Vadot		pinctrl-names = "default";
1607ef62cebSEmmanuel Vadot		pinctrl-0 = <&wifi_enable_h>;
1617ef62cebSEmmanuel Vadot
1627ef62cebSEmmanuel Vadot		/*
1637ef62cebSEmmanuel Vadot		 * On the module itself this is one of these (depending
1647ef62cebSEmmanuel Vadot		 * on the actual card populated):
1657ef62cebSEmmanuel Vadot		 * - SDIO_RESET_L_WL_REG_ON
1667ef62cebSEmmanuel Vadot		 * - PDN (power down when low)
1677ef62cebSEmmanuel Vadot		 */
1687ef62cebSEmmanuel Vadot		reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
1697ef62cebSEmmanuel Vadot	};
1707ef62cebSEmmanuel Vadot
1717ef62cebSEmmanuel Vadot	/* switched by pmic_sleep */
1727ef62cebSEmmanuel Vadot	vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
1737ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
1747ef62cebSEmmanuel Vadot		regulator-name = "vcc1v8_s3";
1757ef62cebSEmmanuel Vadot		regulator-always-on;
1767ef62cebSEmmanuel Vadot		regulator-boot-on;
1777ef62cebSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
1787ef62cebSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
1797ef62cebSEmmanuel Vadot		vin-supply = <&vcc_1v8>;
1807ef62cebSEmmanuel Vadot	};
1817ef62cebSEmmanuel Vadot
1827ef62cebSEmmanuel Vadot	vcc3v3_sys: vcc3v3-sys {
1837ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
1847ef62cebSEmmanuel Vadot		regulator-name = "vcc3v3_sys";
1857ef62cebSEmmanuel Vadot		regulator-always-on;
1867ef62cebSEmmanuel Vadot		regulator-boot-on;
1877ef62cebSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
1887ef62cebSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
1897ef62cebSEmmanuel Vadot		vin-supply = <&dc_12v>;
1907ef62cebSEmmanuel Vadot	};
1917ef62cebSEmmanuel Vadot
1927ef62cebSEmmanuel Vadot	vcc5v0_sys: vcc5v0-sys {
1937ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
1947ef62cebSEmmanuel Vadot		regulator-name = "vcc5v0_sys";
1957ef62cebSEmmanuel Vadot		regulator-always-on;
1967ef62cebSEmmanuel Vadot		regulator-boot-on;
1977ef62cebSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1987ef62cebSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1997ef62cebSEmmanuel Vadot		vin-supply = <&dc_12v>;
2007ef62cebSEmmanuel Vadot	};
2017ef62cebSEmmanuel Vadot
2027ef62cebSEmmanuel Vadot	/* For USB3.0 Port1/2 */
2037ef62cebSEmmanuel Vadot	vcc5v0_host1: vcc5v0-host1-regulator {
2047ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
2057ef62cebSEmmanuel Vadot		enable-active-high;
2067ef62cebSEmmanuel Vadot		gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
2077ef62cebSEmmanuel Vadot		pinctrl-names = "default";
2087ef62cebSEmmanuel Vadot		pinctrl-0 = <&vcc5v0_host1_en>;
2097ef62cebSEmmanuel Vadot		regulator-name = "vcc5v0_host1";
2107ef62cebSEmmanuel Vadot		regulator-always-on;
2117ef62cebSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
2127ef62cebSEmmanuel Vadot	};
2137ef62cebSEmmanuel Vadot
2147ef62cebSEmmanuel Vadot	/* For USB2.0 Port1/2 */
2157ef62cebSEmmanuel Vadot	vcc5v0_host3: vcc5v0-host3-regulator {
2167ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
2177ef62cebSEmmanuel Vadot		enable-active-high;
2187ef62cebSEmmanuel Vadot		gpio = <&gpio0 RK_PB0 GPIO_ACTIVE_HIGH>;
2197ef62cebSEmmanuel Vadot		pinctrl-names = "default";
2207ef62cebSEmmanuel Vadot		pinctrl-0 = <&vcc5v0_host3_en>;
2217ef62cebSEmmanuel Vadot		regulator-name = "vcc5v0_host3";
2227ef62cebSEmmanuel Vadot		regulator-always-on;
2237ef62cebSEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
2247ef62cebSEmmanuel Vadot	};
2257ef62cebSEmmanuel Vadot
2267ef62cebSEmmanuel Vadot	vcc5v0_typec: vcc5v0-typec-regulator {
2277ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
2287ef62cebSEmmanuel Vadot		enable-active-high;
2297ef62cebSEmmanuel Vadot		gpio = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>;
2307ef62cebSEmmanuel Vadot		pinctrl-names = "default";
2317ef62cebSEmmanuel Vadot		pinctrl-0 = <&vcc5v0_typec_en>;
2327ef62cebSEmmanuel Vadot		regulator-name = "vcc5v0_typec";
2337ef62cebSEmmanuel Vadot		regulator-always-on;
2347ef62cebSEmmanuel Vadot		vin-supply = <&vcc3v3_sys>;
2357ef62cebSEmmanuel Vadot	};
2367ef62cebSEmmanuel Vadot
2377ef62cebSEmmanuel Vadot	vdd_log: vdd-log {
2387ef62cebSEmmanuel Vadot		compatible = "regulator-fixed";
2397ef62cebSEmmanuel Vadot		regulator-name = "vdd_log";
2407ef62cebSEmmanuel Vadot		regulator-always-on;
2417ef62cebSEmmanuel Vadot		regulator-boot-on;
2427ef62cebSEmmanuel Vadot		regulator-min-microvolt = <900000>;
2437ef62cebSEmmanuel Vadot		regulator-max-microvolt = <900000>;
2447ef62cebSEmmanuel Vadot	};
2457ef62cebSEmmanuel Vadot};
2467ef62cebSEmmanuel Vadot
2477ef62cebSEmmanuel Vadot&cpu_l0 {
2487ef62cebSEmmanuel Vadot	cpu-supply = <&vdd_cpu_l>;
2497ef62cebSEmmanuel Vadot};
2507ef62cebSEmmanuel Vadot
2517ef62cebSEmmanuel Vadot&cpu_l1 {
2527ef62cebSEmmanuel Vadot	cpu-supply = <&vdd_cpu_l>;
2537ef62cebSEmmanuel Vadot};
2547ef62cebSEmmanuel Vadot
2557ef62cebSEmmanuel Vadot&cpu_l2 {
2567ef62cebSEmmanuel Vadot	cpu-supply = <&vdd_cpu_l>;
2577ef62cebSEmmanuel Vadot};
2587ef62cebSEmmanuel Vadot
2597ef62cebSEmmanuel Vadot&cpu_l3 {
2607ef62cebSEmmanuel Vadot	cpu-supply = <&vdd_cpu_l>;
2617ef62cebSEmmanuel Vadot};
2627ef62cebSEmmanuel Vadot
2637ef62cebSEmmanuel Vadot&cpu_b0 {
2647ef62cebSEmmanuel Vadot	cpu-supply = <&vdd_cpu_b>;
2657ef62cebSEmmanuel Vadot};
2667ef62cebSEmmanuel Vadot
2677ef62cebSEmmanuel Vadot&cpu_b1 {
2687ef62cebSEmmanuel Vadot	cpu-supply = <&vdd_cpu_b>;
2697ef62cebSEmmanuel Vadot};
2707ef62cebSEmmanuel Vadot
2717ef62cebSEmmanuel Vadot&emmc_phy {
2727ef62cebSEmmanuel Vadot	status = "okay";
2737ef62cebSEmmanuel Vadot};
2747ef62cebSEmmanuel Vadot
2757ef62cebSEmmanuel Vadot&gmac {
2767ef62cebSEmmanuel Vadot	assigned-clocks = <&cru SCLK_RMII_SRC>;
2777ef62cebSEmmanuel Vadot	assigned-clock-parents = <&clkin_gmac>;
2787ef62cebSEmmanuel Vadot	clock_in_out = "input";
2797ef62cebSEmmanuel Vadot	phy-supply = <&vcc_lan>;
2807ef62cebSEmmanuel Vadot	phy-mode = "rgmii";
2817ef62cebSEmmanuel Vadot	pinctrl-names = "default";
2827ef62cebSEmmanuel Vadot	pinctrl-0 = <&rgmii_pins>;
2837ef62cebSEmmanuel Vadot	snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
2847ef62cebSEmmanuel Vadot	snps,reset-active-low;
2857ef62cebSEmmanuel Vadot	snps,reset-delays-us = <0 10000 50000>;
2867ef62cebSEmmanuel Vadot	tx_delay = <0x28>;
2877ef62cebSEmmanuel Vadot	rx_delay = <0x11>;
2887ef62cebSEmmanuel Vadot	status = "okay";
2897ef62cebSEmmanuel Vadot};
2907ef62cebSEmmanuel Vadot
2917ef62cebSEmmanuel Vadot&gpu {
2927ef62cebSEmmanuel Vadot	mali-supply = <&vdd_gpu>;
2937ef62cebSEmmanuel Vadot	status = "okay";
2947ef62cebSEmmanuel Vadot};
2957ef62cebSEmmanuel Vadot
2967ef62cebSEmmanuel Vadot&hdmi {
2977ef62cebSEmmanuel Vadot	ddc-i2c-bus = <&i2c3>;
2987ef62cebSEmmanuel Vadot	pinctrl-names = "default";
2997ef62cebSEmmanuel Vadot	pinctrl-0 = <&hdmi_cec>;
3007ef62cebSEmmanuel Vadot	status = "okay";
3017ef62cebSEmmanuel Vadot};
3027ef62cebSEmmanuel Vadot
3037ef62cebSEmmanuel Vadot&i2c0 {
3047ef62cebSEmmanuel Vadot	status = "okay";
3057ef62cebSEmmanuel Vadot
3067ef62cebSEmmanuel Vadot	rk808: pmic@1b {
3077ef62cebSEmmanuel Vadot		compatible = "rockchip,rk808";
3087ef62cebSEmmanuel Vadot		reg = <0x1b>;
3097ef62cebSEmmanuel Vadot		interrupt-parent = <&gpio1>;
3107ef62cebSEmmanuel Vadot		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
3117ef62cebSEmmanuel Vadot		pinctrl-names = "default";
3127ef62cebSEmmanuel Vadot		pinctrl-0 = <&pmic_int_l>;
3137ef62cebSEmmanuel Vadot		rockchip,system-power-controller;
3147ef62cebSEmmanuel Vadot		wakeup-source;
3157ef62cebSEmmanuel Vadot		#clock-cells = <1>;
3167ef62cebSEmmanuel Vadot		clock-output-names = "xin32k", "rk808-clkout2";
3177ef62cebSEmmanuel Vadot
3187ef62cebSEmmanuel Vadot		vcc1-supply = <&vcc3v3_sys>;
3197ef62cebSEmmanuel Vadot		vcc2-supply = <&vcc3v3_sys>;
3207ef62cebSEmmanuel Vadot		vcc3-supply = <&vcc3v3_sys>;
3217ef62cebSEmmanuel Vadot		vcc4-supply = <&vcc3v3_sys>;
3227ef62cebSEmmanuel Vadot		vcc6-supply = <&vcc3v3_sys>;
3237ef62cebSEmmanuel Vadot		vcc7-supply = <&vcc3v3_sys>;
3247ef62cebSEmmanuel Vadot		vcc8-supply = <&vcc3v3_sys>;
3257ef62cebSEmmanuel Vadot		vcc9-supply = <&vcc3v3_sys>;
3267ef62cebSEmmanuel Vadot		vcc10-supply = <&vcc3v3_sys>;
3277ef62cebSEmmanuel Vadot		vcc11-supply = <&vcc3v3_sys>;
3287ef62cebSEmmanuel Vadot		vcc12-supply = <&vcc3v3_sys>;
3297ef62cebSEmmanuel Vadot		vddio-supply = <&vcc_3v0>;
3307ef62cebSEmmanuel Vadot
3317ef62cebSEmmanuel Vadot		regulators {
3327ef62cebSEmmanuel Vadot			vdd_center: DCDC_REG1 {
3337ef62cebSEmmanuel Vadot				regulator-name = "vdd_center";
3347ef62cebSEmmanuel Vadot				regulator-min-microvolt = <750000>;
3357ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
3367ef62cebSEmmanuel Vadot				regulator-ramp-delay = <6001>;
3377ef62cebSEmmanuel Vadot				regulator-always-on;
3387ef62cebSEmmanuel Vadot				regulator-boot-on;
3397ef62cebSEmmanuel Vadot
3407ef62cebSEmmanuel Vadot				regulator-state-mem {
3417ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
3427ef62cebSEmmanuel Vadot				};
3437ef62cebSEmmanuel Vadot			};
3447ef62cebSEmmanuel Vadot
3457ef62cebSEmmanuel Vadot			vdd_cpu_l: DCDC_REG2 {
3467ef62cebSEmmanuel Vadot				regulator-name = "vdd_cpu_l";
3477ef62cebSEmmanuel Vadot				regulator-min-microvolt = <750000>;
3487ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1350000>;
3497ef62cebSEmmanuel Vadot				regulator-ramp-delay = <6001>;
3507ef62cebSEmmanuel Vadot				regulator-always-on;
3517ef62cebSEmmanuel Vadot				regulator-boot-on;
3527ef62cebSEmmanuel Vadot
3537ef62cebSEmmanuel Vadot				regulator-state-mem {
3547ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
3557ef62cebSEmmanuel Vadot				};
3567ef62cebSEmmanuel Vadot			};
3577ef62cebSEmmanuel Vadot
3587ef62cebSEmmanuel Vadot			vcc_ddr: DCDC_REG3 {
3597ef62cebSEmmanuel Vadot				regulator-name = "vcc_ddr";
3607ef62cebSEmmanuel Vadot				regulator-always-on;
3617ef62cebSEmmanuel Vadot				regulator-boot-on;
3627ef62cebSEmmanuel Vadot				regulator-state-mem {
3637ef62cebSEmmanuel Vadot					regulator-on-in-suspend;
3647ef62cebSEmmanuel Vadot				};
3657ef62cebSEmmanuel Vadot			};
3667ef62cebSEmmanuel Vadot
3677ef62cebSEmmanuel Vadot			vcc_1v8: DCDC_REG4 {
3687ef62cebSEmmanuel Vadot				regulator-name = "vcc_1v8";
3697ef62cebSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
3707ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
3717ef62cebSEmmanuel Vadot				regulator-always-on;
3727ef62cebSEmmanuel Vadot				regulator-boot-on;
3737ef62cebSEmmanuel Vadot
3747ef62cebSEmmanuel Vadot				regulator-state-mem {
3757ef62cebSEmmanuel Vadot					regulator-on-in-suspend;
3767ef62cebSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
3777ef62cebSEmmanuel Vadot				};
3787ef62cebSEmmanuel Vadot			};
3797ef62cebSEmmanuel Vadot
3807ef62cebSEmmanuel Vadot			vcc1v8_dvp: LDO_REG1 {
3817ef62cebSEmmanuel Vadot				regulator-name = "vcc1v8_dvp";
3827ef62cebSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
3837ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
3847ef62cebSEmmanuel Vadot				regulator-always-on;
3857ef62cebSEmmanuel Vadot				regulator-boot-on;
3867ef62cebSEmmanuel Vadot
3877ef62cebSEmmanuel Vadot				regulator-state-mem {
3887ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
3897ef62cebSEmmanuel Vadot				};
3907ef62cebSEmmanuel Vadot			};
3917ef62cebSEmmanuel Vadot
3927ef62cebSEmmanuel Vadot			vcc2v8_dvp: LDO_REG2 {
3937ef62cebSEmmanuel Vadot				regulator-name = "vcc2v8_dvp";
3947ef62cebSEmmanuel Vadot				regulator-min-microvolt = <2800000>;
3957ef62cebSEmmanuel Vadot				regulator-max-microvolt = <2800000>;
3967ef62cebSEmmanuel Vadot				regulator-always-on;
3977ef62cebSEmmanuel Vadot				regulator-boot-on;
3987ef62cebSEmmanuel Vadot
3997ef62cebSEmmanuel Vadot				regulator-state-mem {
4007ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
4017ef62cebSEmmanuel Vadot				};
4027ef62cebSEmmanuel Vadot			};
4037ef62cebSEmmanuel Vadot
4047ef62cebSEmmanuel Vadot			vcc1v8_pmu: LDO_REG3 {
4057ef62cebSEmmanuel Vadot				regulator-name = "vcc1v8_pmu";
4067ef62cebSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
4077ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
4087ef62cebSEmmanuel Vadot				regulator-always-on;
4097ef62cebSEmmanuel Vadot				regulator-boot-on;
4107ef62cebSEmmanuel Vadot
4117ef62cebSEmmanuel Vadot				regulator-state-mem {
4127ef62cebSEmmanuel Vadot					regulator-on-in-suspend;
4137ef62cebSEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
4147ef62cebSEmmanuel Vadot				};
4157ef62cebSEmmanuel Vadot			};
4167ef62cebSEmmanuel Vadot
4177ef62cebSEmmanuel Vadot			vcc_sdio: LDO_REG4 {
4187ef62cebSEmmanuel Vadot				regulator-name = "vcc_sdio";
4197ef62cebSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
4207ef62cebSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
4217ef62cebSEmmanuel Vadot				regulator-always-on;
4227ef62cebSEmmanuel Vadot				regulator-boot-on;
4237ef62cebSEmmanuel Vadot
4247ef62cebSEmmanuel Vadot				regulator-state-mem {
4257ef62cebSEmmanuel Vadot					regulator-on-in-suspend;
4267ef62cebSEmmanuel Vadot					regulator-suspend-microvolt = <3000000>;
4277ef62cebSEmmanuel Vadot				};
4287ef62cebSEmmanuel Vadot			};
4297ef62cebSEmmanuel Vadot
4307ef62cebSEmmanuel Vadot			vcca3v0_codec: LDO_REG5 {
4317ef62cebSEmmanuel Vadot				regulator-name = "vcca3v0_codec";
4327ef62cebSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
4337ef62cebSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
4347ef62cebSEmmanuel Vadot				regulator-always-on;
4357ef62cebSEmmanuel Vadot				regulator-boot-on;
4367ef62cebSEmmanuel Vadot
4377ef62cebSEmmanuel Vadot				regulator-state-mem {
4387ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
4397ef62cebSEmmanuel Vadot				};
4407ef62cebSEmmanuel Vadot			};
4417ef62cebSEmmanuel Vadot
4427ef62cebSEmmanuel Vadot			vcc_1v5: LDO_REG6 {
4437ef62cebSEmmanuel Vadot				regulator-name = "vcc_1v5";
4447ef62cebSEmmanuel Vadot				regulator-min-microvolt = <1500000>;
4457ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1500000>;
4467ef62cebSEmmanuel Vadot				regulator-always-on;
4477ef62cebSEmmanuel Vadot				regulator-boot-on;
4487ef62cebSEmmanuel Vadot
4497ef62cebSEmmanuel Vadot				regulator-state-mem {
4507ef62cebSEmmanuel Vadot					regulator-on-in-suspend;
4517ef62cebSEmmanuel Vadot					regulator-suspend-microvolt = <1500000>;
4527ef62cebSEmmanuel Vadot				};
4537ef62cebSEmmanuel Vadot			};
4547ef62cebSEmmanuel Vadot
4557ef62cebSEmmanuel Vadot			vcca1v8_codec: LDO_REG7 {
4567ef62cebSEmmanuel Vadot				regulator-name = "vcca1v8_codec";
4577ef62cebSEmmanuel Vadot				regulator-min-microvolt = <1800000>;
4587ef62cebSEmmanuel Vadot				regulator-max-microvolt = <1800000>;
4597ef62cebSEmmanuel Vadot				regulator-always-on;
4607ef62cebSEmmanuel Vadot				regulator-boot-on;
4617ef62cebSEmmanuel Vadot
4627ef62cebSEmmanuel Vadot				regulator-state-mem {
4637ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
4647ef62cebSEmmanuel Vadot				};
4657ef62cebSEmmanuel Vadot			};
4667ef62cebSEmmanuel Vadot
4677ef62cebSEmmanuel Vadot			vcc_3v0: LDO_REG8 {
4687ef62cebSEmmanuel Vadot				regulator-name = "vcc_3v0";
4697ef62cebSEmmanuel Vadot				regulator-min-microvolt = <3000000>;
4707ef62cebSEmmanuel Vadot				regulator-max-microvolt = <3000000>;
4717ef62cebSEmmanuel Vadot				regulator-always-on;
4727ef62cebSEmmanuel Vadot				regulator-boot-on;
4737ef62cebSEmmanuel Vadot
4747ef62cebSEmmanuel Vadot				regulator-state-mem {
4757ef62cebSEmmanuel Vadot					regulator-on-in-suspend;
4767ef62cebSEmmanuel Vadot					regulator-suspend-microvolt = <3000000>;
4777ef62cebSEmmanuel Vadot				};
4787ef62cebSEmmanuel Vadot			};
4797ef62cebSEmmanuel Vadot
4807ef62cebSEmmanuel Vadot			vcc3v3_s3: vcc_lan: SWITCH_REG1 {
4817ef62cebSEmmanuel Vadot				regulator-name = "vcc3v3_s3";
4827ef62cebSEmmanuel Vadot				regulator-always-on;
4837ef62cebSEmmanuel Vadot				regulator-boot-on;
4847ef62cebSEmmanuel Vadot				regulator-state-mem {
4857ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
4867ef62cebSEmmanuel Vadot				};
4877ef62cebSEmmanuel Vadot			};
4887ef62cebSEmmanuel Vadot
4897ef62cebSEmmanuel Vadot			vcc3v3_s0: SWITCH_REG2 {
4907ef62cebSEmmanuel Vadot				regulator-name = "vcc3v3_s0";
4917ef62cebSEmmanuel Vadot				regulator-always-on;
4927ef62cebSEmmanuel Vadot				regulator-boot-on;
4937ef62cebSEmmanuel Vadot				regulator-state-mem {
4947ef62cebSEmmanuel Vadot					regulator-off-in-suspend;
4957ef62cebSEmmanuel Vadot				};
4967ef62cebSEmmanuel Vadot			};
4977ef62cebSEmmanuel Vadot		};
4987ef62cebSEmmanuel Vadot	};
4997ef62cebSEmmanuel Vadot
5007ef62cebSEmmanuel Vadot	vdd_cpu_b: regulator@40 {
5017ef62cebSEmmanuel Vadot		compatible = "silergy,syr827";
5027ef62cebSEmmanuel Vadot		reg = <0x40>;
5037ef62cebSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
5047ef62cebSEmmanuel Vadot		regulator-name = "vdd_cpu_b";
5057ef62cebSEmmanuel Vadot		pinctrl-names = "default";
5067ef62cebSEmmanuel Vadot		pinctrl-0 = <&vsel1_pin>;
5077ef62cebSEmmanuel Vadot		regulator-min-microvolt = <712500>;
5087ef62cebSEmmanuel Vadot		regulator-max-microvolt = <1500000>;
5097ef62cebSEmmanuel Vadot		regulator-ramp-delay = <1000>;
5107ef62cebSEmmanuel Vadot		regulator-always-on;
5117ef62cebSEmmanuel Vadot		regulator-boot-on;
5127ef62cebSEmmanuel Vadot		vin-supply = <&vcc3v3_sys>;
5137ef62cebSEmmanuel Vadot
5147ef62cebSEmmanuel Vadot		regulator-state-mem {
5157ef62cebSEmmanuel Vadot			regulator-off-in-suspend;
5167ef62cebSEmmanuel Vadot		};
5177ef62cebSEmmanuel Vadot	};
5187ef62cebSEmmanuel Vadot
5197ef62cebSEmmanuel Vadot	vdd_gpu: regulator@41 {
5207ef62cebSEmmanuel Vadot		compatible = "silergy,syr828";
5217ef62cebSEmmanuel Vadot		reg = <0x41>;
5227ef62cebSEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
5237ef62cebSEmmanuel Vadot		regulator-name = "vdd_gpu";
5247ef62cebSEmmanuel Vadot		pinctrl-names = "default";
5257ef62cebSEmmanuel Vadot		pinctrl-0 = <&vsel2_pin>;
5267ef62cebSEmmanuel Vadot		regulator-min-microvolt = <712500>;
5277ef62cebSEmmanuel Vadot		regulator-max-microvolt = <1500000>;
5287ef62cebSEmmanuel Vadot		regulator-ramp-delay = <1000>;
5297ef62cebSEmmanuel Vadot		regulator-always-on;
5307ef62cebSEmmanuel Vadot		regulator-boot-on;
5317ef62cebSEmmanuel Vadot		vin-supply = <&vcc3v3_sys>;
5327ef62cebSEmmanuel Vadot
5337ef62cebSEmmanuel Vadot		regulator-state-mem {
5347ef62cebSEmmanuel Vadot			regulator-off-in-suspend;
5357ef62cebSEmmanuel Vadot		};
5367ef62cebSEmmanuel Vadot	};
5377ef62cebSEmmanuel Vadot};
5387ef62cebSEmmanuel Vadot
5397ef62cebSEmmanuel Vadot&i2c1 {
5407ef62cebSEmmanuel Vadot	i2c-scl-rising-time-ns = <300>;
5417ef62cebSEmmanuel Vadot	i2c-scl-falling-time-ns = <15>;
5427ef62cebSEmmanuel Vadot	status = "okay";
5437ef62cebSEmmanuel Vadot
5447ef62cebSEmmanuel Vadot	rt5651: audio-codec@1a {
5457ef62cebSEmmanuel Vadot		compatible = "rockchip,rt5651";
5467ef62cebSEmmanuel Vadot		reg = <0x1a>;
5477ef62cebSEmmanuel Vadot		clocks = <&cru SCLK_I2S_8CH_OUT>;
5487ef62cebSEmmanuel Vadot		clock-names = "mclk";
5497ef62cebSEmmanuel Vadot		hp-det-gpio = <&gpio4 RK_PD4 GPIO_ACTIVE_LOW>;
5507ef62cebSEmmanuel Vadot		spk-con-gpio = <&gpio0 RK_PB3 GPIO_ACTIVE_HIGH>;
5517ef62cebSEmmanuel Vadot		#sound-dai-cells = <0>;
5527ef62cebSEmmanuel Vadot	};
5537ef62cebSEmmanuel Vadot
5547ef62cebSEmmanuel Vadot};
5557ef62cebSEmmanuel Vadot
5567ef62cebSEmmanuel Vadot&i2c3 {
5577ef62cebSEmmanuel Vadot	i2c-scl-rising-time-ns = <450>;
5587ef62cebSEmmanuel Vadot	i2c-scl-falling-time-ns = <15>;
5597ef62cebSEmmanuel Vadot	status = "okay";
5607ef62cebSEmmanuel Vadot};
5617ef62cebSEmmanuel Vadot
5627ef62cebSEmmanuel Vadot&i2c4 {
5637ef62cebSEmmanuel Vadot	i2c-scl-rising-time-ns = <600>;
5647ef62cebSEmmanuel Vadot	i2c-scl-falling-time-ns = <20>;
5657ef62cebSEmmanuel Vadot	status = "okay";
5667ef62cebSEmmanuel Vadot
5677ef62cebSEmmanuel Vadot	fusb0: typec-portc@22 {
5687ef62cebSEmmanuel Vadot		compatible = "fcs,fusb302";
5697ef62cebSEmmanuel Vadot		reg = <0x22>;
5707ef62cebSEmmanuel Vadot		interrupt-parent = <&gpio1>;
5717ef62cebSEmmanuel Vadot		interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
5727ef62cebSEmmanuel Vadot		pinctrl-names = "default";
5737ef62cebSEmmanuel Vadot		pinctrl-0 = <&fusb0_int>;
5747ef62cebSEmmanuel Vadot		vbus-supply = <&vcc5v0_typec>;
5757ef62cebSEmmanuel Vadot
5767ef62cebSEmmanuel Vadot		ports {
5777ef62cebSEmmanuel Vadot			#address-cells = <1>;
5787ef62cebSEmmanuel Vadot			#size-cells = <0>;
5797ef62cebSEmmanuel Vadot
5807ef62cebSEmmanuel Vadot			port@0 {
5817ef62cebSEmmanuel Vadot				reg = <0>;
5827ef62cebSEmmanuel Vadot				usbc0_role_sw: endpoint@0 {
5837ef62cebSEmmanuel Vadot					remote-endpoint = <&dwc3_0_role_switch>;
5847ef62cebSEmmanuel Vadot				};
5857ef62cebSEmmanuel Vadot			};
5867ef62cebSEmmanuel Vadot		};
5877ef62cebSEmmanuel Vadot
5887ef62cebSEmmanuel Vadot		connector {
5897ef62cebSEmmanuel Vadot			compatible = "usb-c-connector";
5907ef62cebSEmmanuel Vadot			data-role = "dual";
5917ef62cebSEmmanuel Vadot			label = "USB-C";
5927ef62cebSEmmanuel Vadot
5937ef62cebSEmmanuel Vadot			ports {
5947ef62cebSEmmanuel Vadot				#address-cells = <1>;
5957ef62cebSEmmanuel Vadot				#size-cells = <0>;
5967ef62cebSEmmanuel Vadot
5977ef62cebSEmmanuel Vadot				port@0 {
5987ef62cebSEmmanuel Vadot					reg = <0>;
5997ef62cebSEmmanuel Vadot
6007ef62cebSEmmanuel Vadot					usbc_hs: endpoint {
6017ef62cebSEmmanuel Vadot						remote-endpoint = <&u2phy0_typec_hs>;
6027ef62cebSEmmanuel Vadot					};
6037ef62cebSEmmanuel Vadot				};
6047ef62cebSEmmanuel Vadot
6057ef62cebSEmmanuel Vadot				port@1 {
6067ef62cebSEmmanuel Vadot					reg = <1>;
6077ef62cebSEmmanuel Vadot
6087ef62cebSEmmanuel Vadot					usbc_ss: endpoint {
6097ef62cebSEmmanuel Vadot						remote-endpoint = <&tcphy0_typec_ss>;
6107ef62cebSEmmanuel Vadot					};
6117ef62cebSEmmanuel Vadot				};
6127ef62cebSEmmanuel Vadot			};
6137ef62cebSEmmanuel Vadot		};
6147ef62cebSEmmanuel Vadot	};
6157ef62cebSEmmanuel Vadot};
6167ef62cebSEmmanuel Vadot
6177ef62cebSEmmanuel Vadot&i2s1 {
6187ef62cebSEmmanuel Vadot	rockchip,playback-channels = <2>;
6197ef62cebSEmmanuel Vadot	rockchip,capture-channels = <2>;
6207ef62cebSEmmanuel Vadot	status = "okay";
6217ef62cebSEmmanuel Vadot};
6227ef62cebSEmmanuel Vadot
6237ef62cebSEmmanuel Vadot&i2s2 {
6247ef62cebSEmmanuel Vadot	status = "okay";
6257ef62cebSEmmanuel Vadot};
6267ef62cebSEmmanuel Vadot
6277ef62cebSEmmanuel Vadot&io_domains {
6287ef62cebSEmmanuel Vadot	status = "okay";
6297ef62cebSEmmanuel Vadot
6307ef62cebSEmmanuel Vadot	audio-supply = <&vcca1v8_codec>;
6317ef62cebSEmmanuel Vadot	bt656-supply = <&vcc_3v0>;
6327ef62cebSEmmanuel Vadot	gpio1830-supply = <&vcc_3v0>;
6337ef62cebSEmmanuel Vadot	sdmmc-supply = <&vcc_sdio>;
6347ef62cebSEmmanuel Vadot};
6357ef62cebSEmmanuel Vadot
6367ef62cebSEmmanuel Vadot&pmu_io_domains {
6377ef62cebSEmmanuel Vadot	status = "okay";
6387ef62cebSEmmanuel Vadot
6397ef62cebSEmmanuel Vadot	pmu1830-supply = <&vcc_3v0>;
6407ef62cebSEmmanuel Vadot};
6417ef62cebSEmmanuel Vadot
6427ef62cebSEmmanuel Vadot&pinctrl {
6437ef62cebSEmmanuel Vadot	buttons {
6447ef62cebSEmmanuel Vadot		pwrbtn: pwrbtn {
6457ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
6467ef62cebSEmmanuel Vadot		};
6477ef62cebSEmmanuel Vadot	};
6487ef62cebSEmmanuel Vadot
6497ef62cebSEmmanuel Vadot	bt {
6507ef62cebSEmmanuel Vadot		bt_enable_h: bt-enable-h {
6517ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
6527ef62cebSEmmanuel Vadot		};
6537ef62cebSEmmanuel Vadot
6547ef62cebSEmmanuel Vadot		bt_host_wake_l: bt-host-wake-l {
6557ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
6567ef62cebSEmmanuel Vadot		};
6577ef62cebSEmmanuel Vadot
6587ef62cebSEmmanuel Vadot		bt_wake_l: bt-wake-l {
6597ef62cebSEmmanuel Vadot			rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
6607ef62cebSEmmanuel Vadot		};
6617ef62cebSEmmanuel Vadot	};
6627ef62cebSEmmanuel Vadot
6637ef62cebSEmmanuel Vadot	fusb302x {
6647ef62cebSEmmanuel Vadot		fusb0_int: fusb0-int {
6657ef62cebSEmmanuel Vadot			rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
6667ef62cebSEmmanuel Vadot		};
6677ef62cebSEmmanuel Vadot	};
6687ef62cebSEmmanuel Vadot
6697ef62cebSEmmanuel Vadot	lcd-panel {
6707ef62cebSEmmanuel Vadot		lcd_panel_reset: lcd-panel-reset {
6717ef62cebSEmmanuel Vadot			rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up>;
6727ef62cebSEmmanuel Vadot		};
6737ef62cebSEmmanuel Vadot	};
6747ef62cebSEmmanuel Vadot
6757ef62cebSEmmanuel Vadot	leds {
6767ef62cebSEmmanuel Vadot		work_led_pin: work-led-pin {
6777ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
6787ef62cebSEmmanuel Vadot		};
6797ef62cebSEmmanuel Vadot
6807ef62cebSEmmanuel Vadot		user_led_pin: user-led-pin {
6817ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>;
6827ef62cebSEmmanuel Vadot		};
6837ef62cebSEmmanuel Vadot
6847ef62cebSEmmanuel Vadot		heartbeat_led_pin: heartbeat-led-pin {
6857ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
6867ef62cebSEmmanuel Vadot		};
6877ef62cebSEmmanuel Vadot
6887ef62cebSEmmanuel Vadot		wlan_active_led_pin: wlan-led-pin {
6897ef62cebSEmmanuel Vadot			rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
6907ef62cebSEmmanuel Vadot		};
6917ef62cebSEmmanuel Vadot
6927ef62cebSEmmanuel Vadot		bt_active_led_pin: bt-led-pin {
6937ef62cebSEmmanuel Vadot			rockchip,pins = <2 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
6947ef62cebSEmmanuel Vadot		};
6957ef62cebSEmmanuel Vadot
6967ef62cebSEmmanuel Vadot
6977ef62cebSEmmanuel Vadot	};
6987ef62cebSEmmanuel Vadot
6997ef62cebSEmmanuel Vadot	pmic {
7007ef62cebSEmmanuel Vadot		pmic_int_l: pmic-int-l {
7017ef62cebSEmmanuel Vadot			rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
7027ef62cebSEmmanuel Vadot		};
7037ef62cebSEmmanuel Vadot
7047ef62cebSEmmanuel Vadot		vsel1_pin: vsel1-pin {
7057ef62cebSEmmanuel Vadot			rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
7067ef62cebSEmmanuel Vadot		};
7077ef62cebSEmmanuel Vadot
7087ef62cebSEmmanuel Vadot		vsel2_pin: vsel2-pin {
7097ef62cebSEmmanuel Vadot			rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
7107ef62cebSEmmanuel Vadot		};
7117ef62cebSEmmanuel Vadot	};
7127ef62cebSEmmanuel Vadot
7137ef62cebSEmmanuel Vadot	rt5651 {
7147ef62cebSEmmanuel Vadot		rt5651_hpcon: rt5640-hpcon {
7157ef62cebSEmmanuel Vadot			rockchip,pins = <4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
7167ef62cebSEmmanuel Vadot		};
7177ef62cebSEmmanuel Vadot	};
7187ef62cebSEmmanuel Vadot
7197ef62cebSEmmanuel Vadot	sdio-pwrseq {
7207ef62cebSEmmanuel Vadot		wifi_enable_h: wifi-enable-h {
7217ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
7227ef62cebSEmmanuel Vadot		};
7237ef62cebSEmmanuel Vadot	};
7247ef62cebSEmmanuel Vadot
7257ef62cebSEmmanuel Vadot	usb-typec {
7267ef62cebSEmmanuel Vadot		vcc5v0_typec_en: vcc5v0_typec_en {
7277ef62cebSEmmanuel Vadot			rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
7287ef62cebSEmmanuel Vadot		};
7297ef62cebSEmmanuel Vadot	};
7307ef62cebSEmmanuel Vadot
7317ef62cebSEmmanuel Vadot	usb2 {
7327ef62cebSEmmanuel Vadot		vcc5v0_host3_en: vcc5v0-host3-en {
7337ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
7347ef62cebSEmmanuel Vadot		};
7357ef62cebSEmmanuel Vadot
7367ef62cebSEmmanuel Vadot		vcc5v0_host1_en: vcc5v0-host1-en {
7377ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
7387ef62cebSEmmanuel Vadot		};
7397ef62cebSEmmanuel Vadot	};
7407ef62cebSEmmanuel Vadot
7417ef62cebSEmmanuel Vadot	wifi {
7427ef62cebSEmmanuel Vadot		wifi_host_wake_l: wifi-host-wake-l {
7437ef62cebSEmmanuel Vadot			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
7447ef62cebSEmmanuel Vadot		};
7457ef62cebSEmmanuel Vadot	};
7467ef62cebSEmmanuel Vadot};
7477ef62cebSEmmanuel Vadot
7487ef62cebSEmmanuel Vadot&pwm0 {
7497ef62cebSEmmanuel Vadot	status = "okay";
7507ef62cebSEmmanuel Vadot};
7517ef62cebSEmmanuel Vadot
7527ef62cebSEmmanuel Vadot&saradc {
7537ef62cebSEmmanuel Vadot	vref-supply = <&vcca1v8_s3>;
7547ef62cebSEmmanuel Vadot	status = "okay";
7557ef62cebSEmmanuel Vadot};
7567ef62cebSEmmanuel Vadot
7577ef62cebSEmmanuel Vadot&sdio0 {
7587ef62cebSEmmanuel Vadot	/* WiFi & BT combo module AMPAK AP6255 */
7597ef62cebSEmmanuel Vadot	#address-cells = <1>;
7607ef62cebSEmmanuel Vadot	#size-cells = <0>;
7617ef62cebSEmmanuel Vadot	bus-width = <4>;
7627ef62cebSEmmanuel Vadot	clock-frequency = <50000000>;
7637ef62cebSEmmanuel Vadot	cap-sdio-irq;
7647ef62cebSEmmanuel Vadot	cap-sd-highspeed;
7657ef62cebSEmmanuel Vadot	keep-power-in-suspend;
7667ef62cebSEmmanuel Vadot	mmc-pwrseq = <&sdio_pwrseq>;
7677ef62cebSEmmanuel Vadot	non-removable;
7687ef62cebSEmmanuel Vadot	pinctrl-names = "default";
7697ef62cebSEmmanuel Vadot	pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
7707ef62cebSEmmanuel Vadot	sd-uhs-sdr104;
7717ef62cebSEmmanuel Vadot	status = "okay";
7727ef62cebSEmmanuel Vadot
7737ef62cebSEmmanuel Vadot	brcmf: wifi@1 {
7747ef62cebSEmmanuel Vadot		compatible = "brcm,bcm4329-fmac";
7757ef62cebSEmmanuel Vadot		reg = <1>;
7767ef62cebSEmmanuel Vadot		interrupt-parent = <&gpio0>;
777f126890aSEmmanuel Vadot		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_HIGH>;
7787ef62cebSEmmanuel Vadot		interrupt-names = "host-wake";
7797ef62cebSEmmanuel Vadot		pinctrl-names = "default";
7807ef62cebSEmmanuel Vadot		pinctrl-0 = <&wifi_host_wake_l>;
7817ef62cebSEmmanuel Vadot	};
7827ef62cebSEmmanuel Vadot};
7837ef62cebSEmmanuel Vadot
7847ef62cebSEmmanuel Vadot&sdmmc {
7857ef62cebSEmmanuel Vadot	bus-width = <4>;
7867ef62cebSEmmanuel Vadot	cap-mmc-highspeed;
7877ef62cebSEmmanuel Vadot	cap-sd-highspeed;
7887ef62cebSEmmanuel Vadot	cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
7897ef62cebSEmmanuel Vadot	disable-wp;
7907ef62cebSEmmanuel Vadot	max-frequency = <150000000>;
7917ef62cebSEmmanuel Vadot	pinctrl-names = "default";
7927ef62cebSEmmanuel Vadot	pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>;
7937ef62cebSEmmanuel Vadot	status = "okay";
7947ef62cebSEmmanuel Vadot};
7957ef62cebSEmmanuel Vadot
7967ef62cebSEmmanuel Vadot&sdhci {
7977ef62cebSEmmanuel Vadot	bus-width = <8>;
7987ef62cebSEmmanuel Vadot	non-removable;
7997ef62cebSEmmanuel Vadot	status = "okay";
8007ef62cebSEmmanuel Vadot};
8017ef62cebSEmmanuel Vadot
8027ef62cebSEmmanuel Vadot&tcphy0 {
8037ef62cebSEmmanuel Vadot	status = "okay";
8047ef62cebSEmmanuel Vadot};
8057ef62cebSEmmanuel Vadot
8067ef62cebSEmmanuel Vadot&tcphy0_usb3 {
8077ef62cebSEmmanuel Vadot	orientation-switch;
8087ef62cebSEmmanuel Vadot	port {
8097ef62cebSEmmanuel Vadot		tcphy0_typec_ss: endpoint {
8107ef62cebSEmmanuel Vadot			remote-endpoint = <&usbc_ss>;
8117ef62cebSEmmanuel Vadot		};
8127ef62cebSEmmanuel Vadot	};
8137ef62cebSEmmanuel Vadot};
8147ef62cebSEmmanuel Vadot
8157ef62cebSEmmanuel Vadot&tcphy1 {
8167ef62cebSEmmanuel Vadot	status = "okay";
8177ef62cebSEmmanuel Vadot};
8187ef62cebSEmmanuel Vadot
8197ef62cebSEmmanuel Vadot&tsadc {
8207ef62cebSEmmanuel Vadot	/* tshut mode 0:CRU 1:GPIO */
8217ef62cebSEmmanuel Vadot	rockchip,hw-tshut-mode = <1>;
8227ef62cebSEmmanuel Vadot	/* tshut polarity 0:LOW 1:HIGH */
8237ef62cebSEmmanuel Vadot	rockchip,hw-tshut-polarity = <1>;
8247ef62cebSEmmanuel Vadot	status = "okay";
8257ef62cebSEmmanuel Vadot};
8267ef62cebSEmmanuel Vadot
8277ef62cebSEmmanuel Vadot&u2phy0 {
8287ef62cebSEmmanuel Vadot	status = "okay";
8297ef62cebSEmmanuel Vadot
8307ef62cebSEmmanuel Vadot	u2phy0_otg: otg-port {
8317ef62cebSEmmanuel Vadot		status = "okay";
8327ef62cebSEmmanuel Vadot	};
8337ef62cebSEmmanuel Vadot
8347ef62cebSEmmanuel Vadot	u2phy0_host: host-port {
8357ef62cebSEmmanuel Vadot		phy-supply = <&vcc5v0_host3>;
8367ef62cebSEmmanuel Vadot		status = "okay";
8377ef62cebSEmmanuel Vadot	};
8387ef62cebSEmmanuel Vadot
8397ef62cebSEmmanuel Vadot	port {
8407ef62cebSEmmanuel Vadot		u2phy0_typec_hs: endpoint {
8417ef62cebSEmmanuel Vadot			remote-endpoint = <&usbc_hs>;
8427ef62cebSEmmanuel Vadot		};
8437ef62cebSEmmanuel Vadot	};
8447ef62cebSEmmanuel Vadot};
8457ef62cebSEmmanuel Vadot
8467ef62cebSEmmanuel Vadot&u2phy1 {
8477ef62cebSEmmanuel Vadot	status = "okay";
8487ef62cebSEmmanuel Vadot
8497ef62cebSEmmanuel Vadot	u2phy1_otg: otg-port {
8507ef62cebSEmmanuel Vadot		status = "okay";
8517ef62cebSEmmanuel Vadot	};
8527ef62cebSEmmanuel Vadot
8537ef62cebSEmmanuel Vadot	u2phy1_host: host-port {
8547ef62cebSEmmanuel Vadot		phy-supply = <&vcc5v0_host3>;
8557ef62cebSEmmanuel Vadot		status = "okay";
8567ef62cebSEmmanuel Vadot	};
8577ef62cebSEmmanuel Vadot};
8587ef62cebSEmmanuel Vadot
8597ef62cebSEmmanuel Vadot&uart0 {
8607ef62cebSEmmanuel Vadot	pinctrl-names = "default";
8617ef62cebSEmmanuel Vadot	pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
8627ef62cebSEmmanuel Vadot	status = "okay";
8637ef62cebSEmmanuel Vadot
8647ef62cebSEmmanuel Vadot	bluetooth {
8657ef62cebSEmmanuel Vadot		compatible = "brcm,bcm4345c5";
8667ef62cebSEmmanuel Vadot		clocks = <&rk808 1>;
8677ef62cebSEmmanuel Vadot		clock-names = "lpo";
8687ef62cebSEmmanuel Vadot		device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
8697ef62cebSEmmanuel Vadot		host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
8707ef62cebSEmmanuel Vadot		shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
8717ef62cebSEmmanuel Vadot		max-speed = <1500000>;
8727ef62cebSEmmanuel Vadot		pinctrl-names = "default";
8737ef62cebSEmmanuel Vadot		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_enable_h>;
8747ef62cebSEmmanuel Vadot		vbat-supply = <&vcc3v3_sys>;
8757ef62cebSEmmanuel Vadot		vddio-supply = <&vcc_1v8>;
8767ef62cebSEmmanuel Vadot	};
8777ef62cebSEmmanuel Vadot};
8787ef62cebSEmmanuel Vadot
8797ef62cebSEmmanuel Vadot&uart2 {
8807ef62cebSEmmanuel Vadot	status = "okay";
8817ef62cebSEmmanuel Vadot};
8827ef62cebSEmmanuel Vadot
8837ef62cebSEmmanuel Vadot&usb_host0_ehci {
8847ef62cebSEmmanuel Vadot	status = "okay";
8857ef62cebSEmmanuel Vadot};
8867ef62cebSEmmanuel Vadot
8877ef62cebSEmmanuel Vadot&usb_host0_ohci {
8887ef62cebSEmmanuel Vadot	status = "okay";
8897ef62cebSEmmanuel Vadot};
8907ef62cebSEmmanuel Vadot
8917ef62cebSEmmanuel Vadot&usb_host1_ehci {
8927ef62cebSEmmanuel Vadot	status = "okay";
8937ef62cebSEmmanuel Vadot};
8947ef62cebSEmmanuel Vadot
8957ef62cebSEmmanuel Vadot&usb_host1_ohci {
8967ef62cebSEmmanuel Vadot	status = "okay";
8977ef62cebSEmmanuel Vadot};
8987ef62cebSEmmanuel Vadot
8997ef62cebSEmmanuel Vadot&usbdrd3_0 {
9007ef62cebSEmmanuel Vadot	status = "okay";
9017ef62cebSEmmanuel Vadot};
9027ef62cebSEmmanuel Vadot
9037ef62cebSEmmanuel Vadot&usbdrd_dwc3_0 {
9047ef62cebSEmmanuel Vadot	status = "okay";
9057ef62cebSEmmanuel Vadot	usb-role-switch;
9067ef62cebSEmmanuel Vadot
9077ef62cebSEmmanuel Vadot	port {
9087ef62cebSEmmanuel Vadot		#address-cells = <1>;
9097ef62cebSEmmanuel Vadot		#size-cells = <0>;
9107ef62cebSEmmanuel Vadot		dwc3_0_role_switch: endpoint@0 {
9117ef62cebSEmmanuel Vadot			reg = <0>;
9127ef62cebSEmmanuel Vadot			remote-endpoint = <&usbc0_role_sw>;
9137ef62cebSEmmanuel Vadot		};
9147ef62cebSEmmanuel Vadot	};
9157ef62cebSEmmanuel Vadot};
9167ef62cebSEmmanuel Vadot
9177ef62cebSEmmanuel Vadot&usbdrd3_1 {
9187ef62cebSEmmanuel Vadot	status = "okay";
9197ef62cebSEmmanuel Vadot};
9207ef62cebSEmmanuel Vadot
9217ef62cebSEmmanuel Vadot&usbdrd_dwc3_1 {
9227ef62cebSEmmanuel Vadot	status = "okay";
9237ef62cebSEmmanuel Vadot	dr_mode = "host";
9247ef62cebSEmmanuel Vadot};
9257ef62cebSEmmanuel Vadot
9267ef62cebSEmmanuel Vadot&vopb {
9277ef62cebSEmmanuel Vadot	status = "okay";
9287ef62cebSEmmanuel Vadot};
9297ef62cebSEmmanuel Vadot
9307ef62cebSEmmanuel Vadot&vopb_mmu {
9317ef62cebSEmmanuel Vadot	status = "okay";
9327ef62cebSEmmanuel Vadot};
9337ef62cebSEmmanuel Vadot
9347ef62cebSEmmanuel Vadot&vopl {
9357ef62cebSEmmanuel Vadot	status = "okay";
9367ef62cebSEmmanuel Vadot};
9377ef62cebSEmmanuel Vadot
9387ef62cebSEmmanuel Vadot&vopl_mmu {
9397ef62cebSEmmanuel Vadot	status = "okay";
9407ef62cebSEmmanuel Vadot};
941