xref: /linux/scripts/dtc/include-prefixes/arm64/rockchip/rk3399-orangepi.dts (revision 3fd6c59042dbba50391e30862beac979491145fe)
108b64bd2SAlexis Ballier// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
208b64bd2SAlexis Ballier/*
308b64bd2SAlexis Ballier * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd.
408b64bd2SAlexis Ballier */
508b64bd2SAlexis Ballier
608b64bd2SAlexis Ballier/dts-v1/;
708b64bd2SAlexis Ballier
808b64bd2SAlexis Ballier#include "dt-bindings/pwm/pwm.h"
908b64bd2SAlexis Ballier#include "dt-bindings/input/input.h"
10c043dee9SKrzysztof Kozlowski#include <dt-bindings/interrupt-controller/irq.h>
11e56ed188SAlexis Ballier#include "dt-bindings/usb/pd.h"
1208b64bd2SAlexis Ballier#include "rk3399.dtsi"
1308b64bd2SAlexis Ballier
1408b64bd2SAlexis Ballier/ {
1508b64bd2SAlexis Ballier	model = "Orange Pi RK3399 Board";
16*7ec958edSTim Lunn	compatible = "xunlong,rk3399-orangepi", "rockchip,rk3399";
1708b64bd2SAlexis Ballier
185dcbe7e3SHeiko Stuebner	aliases {
195d90cb1eSDragan Simic		ethernet0 = &gmac;
205dcbe7e3SHeiko Stuebner		mmc0 = &sdio0;
215dcbe7e3SHeiko Stuebner		mmc1 = &sdmmc;
225dcbe7e3SHeiko Stuebner		mmc2 = &sdhci;
235dcbe7e3SHeiko Stuebner	};
245dcbe7e3SHeiko Stuebner
2508b64bd2SAlexis Ballier	chosen {
2608b64bd2SAlexis Ballier		stdout-path = "serial2:1500000n8";
2708b64bd2SAlexis Ballier	};
2808b64bd2SAlexis Ballier
2908b64bd2SAlexis Ballier	clkin_gmac: external-gmac-clock {
3008b64bd2SAlexis Ballier		compatible = "fixed-clock";
3108b64bd2SAlexis Ballier		clock-frequency = <125000000>;
3208b64bd2SAlexis Ballier		clock-output-names = "clkin_gmac";
3308b64bd2SAlexis Ballier		#clock-cells = <0>;
3408b64bd2SAlexis Ballier	};
3508b64bd2SAlexis Ballier
3608b64bd2SAlexis Ballier	adc-keys {
3708b64bd2SAlexis Ballier		compatible = "adc-keys";
3808b64bd2SAlexis Ballier		io-channels = <&saradc 1>;
3908b64bd2SAlexis Ballier		io-channel-names = "buttons";
4008b64bd2SAlexis Ballier		keyup-threshold-microvolt = <1800000>;
4108b64bd2SAlexis Ballier		poll-interval = <100>;
4208b64bd2SAlexis Ballier
4308b64bd2SAlexis Ballier		button-up {
4408b64bd2SAlexis Ballier			label = "Volume Up";
4508b64bd2SAlexis Ballier			linux,code = <KEY_VOLUMEUP>;
4608b64bd2SAlexis Ballier			press-threshold-microvolt = <100000>;
4708b64bd2SAlexis Ballier		};
4808b64bd2SAlexis Ballier
4908b64bd2SAlexis Ballier		button-down {
5008b64bd2SAlexis Ballier			label = "Volume Down";
5108b64bd2SAlexis Ballier			linux,code = <KEY_VOLUMEDOWN>;
5208b64bd2SAlexis Ballier			press-threshold-microvolt = <300000>;
5308b64bd2SAlexis Ballier		};
5408b64bd2SAlexis Ballier
55f2bd2e76SJohan Jonker		button-back {
5608b64bd2SAlexis Ballier			label = "Back";
5708b64bd2SAlexis Ballier			linux,code = <KEY_BACK>;
5808b64bd2SAlexis Ballier			press-threshold-microvolt = <985000>;
5908b64bd2SAlexis Ballier		};
6008b64bd2SAlexis Ballier
61f2bd2e76SJohan Jonker		button-menu {
6208b64bd2SAlexis Ballier			label = "Menu";
6308b64bd2SAlexis Ballier			linux,code = <KEY_MENU>;
6408b64bd2SAlexis Ballier			press-threshold-microvolt = <1314000>;
6508b64bd2SAlexis Ballier		};
6608b64bd2SAlexis Ballier	};
6708b64bd2SAlexis Ballier
6808b64bd2SAlexis Ballier	dc_12v: regulator-dc-12v {
6908b64bd2SAlexis Ballier		compatible = "regulator-fixed";
7008b64bd2SAlexis Ballier		regulator-name = "dc_12v";
7108b64bd2SAlexis Ballier		regulator-always-on;
7208b64bd2SAlexis Ballier		regulator-boot-on;
7308b64bd2SAlexis Ballier		regulator-min-microvolt = <12000000>;
7408b64bd2SAlexis Ballier		regulator-max-microvolt = <12000000>;
7508b64bd2SAlexis Ballier	};
7608b64bd2SAlexis Ballier
7708b64bd2SAlexis Ballier	keys: gpio-keys {
7808b64bd2SAlexis Ballier		compatible = "gpio-keys";
7908b64bd2SAlexis Ballier		autorepeat;
8008b64bd2SAlexis Ballier
81517ed0ffSKrzysztof Kozlowski		key-power {
8208b64bd2SAlexis Ballier			debounce-interval = <100>;
8308b64bd2SAlexis Ballier			gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
8408b64bd2SAlexis Ballier			label = "GPIO Power";
8508b64bd2SAlexis Ballier			linux,code = <KEY_POWER>;
8608b64bd2SAlexis Ballier			linux,input-type = <1>;
8708b64bd2SAlexis Ballier			pinctrl-names = "default";
8808b64bd2SAlexis Ballier			pinctrl-0 = <&pwr_btn>;
8908b64bd2SAlexis Ballier			wakeup-source;
9008b64bd2SAlexis Ballier		};
9108b64bd2SAlexis Ballier	};
9208b64bd2SAlexis Ballier
9308b64bd2SAlexis Ballier	sdio_pwrseq: sdio-pwrseq {
9408b64bd2SAlexis Ballier		compatible = "mmc-pwrseq-simple";
9508b64bd2SAlexis Ballier		clocks = <&rk808 1>;
9608b64bd2SAlexis Ballier		clock-names = "ext_clock";
9708b64bd2SAlexis Ballier		pinctrl-names = "default";
9808b64bd2SAlexis Ballier		pinctrl-0 = <&wifi_reg_on_h>;
9908b64bd2SAlexis Ballier		reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
10008b64bd2SAlexis Ballier	};
10108b64bd2SAlexis Ballier
10208b64bd2SAlexis Ballier	/* switched by pmic_sleep */
10308b64bd2SAlexis Ballier	vcc1v8_s3: vcca1v8_s3: regulator-vcc1v8-s3 {
10408b64bd2SAlexis Ballier		compatible = "regulator-fixed";
10508b64bd2SAlexis Ballier		regulator-name = "vcc1v8_s3";
10608b64bd2SAlexis Ballier		regulator-always-on;
10708b64bd2SAlexis Ballier		regulator-boot-on;
10808b64bd2SAlexis Ballier		regulator-min-microvolt = <1800000>;
10908b64bd2SAlexis Ballier		regulator-max-microvolt = <1800000>;
11008b64bd2SAlexis Ballier		vin-supply = <&vcc_1v8>;
11108b64bd2SAlexis Ballier	};
11208b64bd2SAlexis Ballier
11308b64bd2SAlexis Ballier	vcc3v0_sd: regulator-vcc3v0-sd {
11408b64bd2SAlexis Ballier		compatible = "regulator-fixed";
11508b64bd2SAlexis Ballier		enable-active-high;
11608b64bd2SAlexis Ballier		gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
11708b64bd2SAlexis Ballier		pinctrl-names = "default";
11808b64bd2SAlexis Ballier		pinctrl-0 = <&sdmmc0_pwr_h>;
11908b64bd2SAlexis Ballier		regulator-boot-on;
12008b64bd2SAlexis Ballier		regulator-max-microvolt = <3000000>;
12108b64bd2SAlexis Ballier		regulator-min-microvolt = <3000000>;
12208b64bd2SAlexis Ballier		regulator-name = "vcc3v0_sd";
12308b64bd2SAlexis Ballier		vin-supply = <&vcc3v3_sys>;
12408b64bd2SAlexis Ballier	};
12508b64bd2SAlexis Ballier
12608b64bd2SAlexis Ballier	vcc3v3_sys: regulator-vcc3v3-sys {
12708b64bd2SAlexis Ballier		compatible = "regulator-fixed";
12808b64bd2SAlexis Ballier		regulator-name = "vcc3v3_sys";
12908b64bd2SAlexis Ballier		regulator-always-on;
13008b64bd2SAlexis Ballier		regulator-boot-on;
13108b64bd2SAlexis Ballier		regulator-min-microvolt = <3300000>;
13208b64bd2SAlexis Ballier		regulator-max-microvolt = <3300000>;
13308b64bd2SAlexis Ballier		vin-supply = <&vcc_sys>;
13408b64bd2SAlexis Ballier	};
13508b64bd2SAlexis Ballier
13608b64bd2SAlexis Ballier	vcc5v0_host: regulator-vcc5v0-host {
13708b64bd2SAlexis Ballier		compatible = "regulator-fixed";
13808b64bd2SAlexis Ballier		enable-active-high;
13908b64bd2SAlexis Ballier		gpio = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
14008b64bd2SAlexis Ballier		pinctrl-names = "default";
14108b64bd2SAlexis Ballier		pinctrl-0 = <&vcc5v0_host_en>;
14208b64bd2SAlexis Ballier		regulator-name = "vcc5v0_host";
14308b64bd2SAlexis Ballier		regulator-always-on;
14408b64bd2SAlexis Ballier		vin-supply = <&vcc_sys>;
14508b64bd2SAlexis Ballier	};
14608b64bd2SAlexis Ballier
1475e3f8027SAlexis Ballier	vbus_typec: regulator-vbus-typec {
14808b64bd2SAlexis Ballier		compatible = "regulator-fixed";
14908b64bd2SAlexis Ballier		enable-active-high;
15008b64bd2SAlexis Ballier		gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
15108b64bd2SAlexis Ballier		pinctrl-names = "default";
1525e3f8027SAlexis Ballier		pinctrl-0 = <&vcc5v0_typec_en>;
1535e3f8027SAlexis Ballier		regulator-name = "vbus_typec";
15408b64bd2SAlexis Ballier		vin-supply = <&vcc_sys>;
15508b64bd2SAlexis Ballier	};
15608b64bd2SAlexis Ballier
15708b64bd2SAlexis Ballier	vcc_sys: regulator-vcc-sys {
15808b64bd2SAlexis Ballier		compatible = "regulator-fixed";
15908b64bd2SAlexis Ballier		regulator-name = "vcc_sys";
16008b64bd2SAlexis Ballier		regulator-always-on;
16108b64bd2SAlexis Ballier		regulator-boot-on;
16208b64bd2SAlexis Ballier		regulator-min-microvolt = <5000000>;
16308b64bd2SAlexis Ballier		regulator-max-microvolt = <5000000>;
16408b64bd2SAlexis Ballier		vin-supply = <&dc_12v>;
16508b64bd2SAlexis Ballier	};
16608b64bd2SAlexis Ballier
16708b64bd2SAlexis Ballier	vdd_log: regulator-vdd-log {
16808b64bd2SAlexis Ballier		compatible = "pwm-regulator";
16908b64bd2SAlexis Ballier		pwms = <&pwm2 0 25000 1>;
170dc570e8eSHeiko Stuebner		pwm-supply = <&vcc_sys>;
17108b64bd2SAlexis Ballier		regulator-name = "vdd_log";
17208b64bd2SAlexis Ballier		regulator-always-on;
17308b64bd2SAlexis Ballier		regulator-boot-on;
17408b64bd2SAlexis Ballier		regulator-min-microvolt = <800000>;
17508b64bd2SAlexis Ballier		regulator-max-microvolt = <1400000>;
17608b64bd2SAlexis Ballier	};
17708b64bd2SAlexis Ballier};
17808b64bd2SAlexis Ballier
17908b64bd2SAlexis Ballier&cpu_l0 {
18008b64bd2SAlexis Ballier	cpu-supply = <&vdd_cpu_l>;
18108b64bd2SAlexis Ballier};
18208b64bd2SAlexis Ballier
18308b64bd2SAlexis Ballier&cpu_l1 {
18408b64bd2SAlexis Ballier	cpu-supply = <&vdd_cpu_l>;
18508b64bd2SAlexis Ballier};
18608b64bd2SAlexis Ballier
18708b64bd2SAlexis Ballier&cpu_l2 {
18808b64bd2SAlexis Ballier	cpu-supply = <&vdd_cpu_l>;
18908b64bd2SAlexis Ballier};
19008b64bd2SAlexis Ballier
19108b64bd2SAlexis Ballier&cpu_l3 {
19208b64bd2SAlexis Ballier	cpu-supply = <&vdd_cpu_l>;
19308b64bd2SAlexis Ballier};
19408b64bd2SAlexis Ballier
19508b64bd2SAlexis Ballier&cpu_b0 {
19608b64bd2SAlexis Ballier	cpu-supply = <&vdd_cpu_b>;
19708b64bd2SAlexis Ballier};
19808b64bd2SAlexis Ballier
19908b64bd2SAlexis Ballier&cpu_b1 {
20008b64bd2SAlexis Ballier	cpu-supply = <&vdd_cpu_b>;
20108b64bd2SAlexis Ballier};
20208b64bd2SAlexis Ballier
20308b64bd2SAlexis Ballier&emmc_phy {
20408b64bd2SAlexis Ballier	status = "okay";
20508b64bd2SAlexis Ballier};
20608b64bd2SAlexis Ballier
20708b64bd2SAlexis Ballier&gmac {
20808b64bd2SAlexis Ballier	assigned-clocks = <&cru SCLK_RMII_SRC>;
20908b64bd2SAlexis Ballier	assigned-clock-parents = <&clkin_gmac>;
21008b64bd2SAlexis Ballier	clock_in_out = "input";
21108b64bd2SAlexis Ballier	phy-supply = <&vcc3v3_s3>;
21208b64bd2SAlexis Ballier	phy-mode = "rgmii";
213e5ab00edSAlexis Ballier	phy-handle = <&rtl8211e>;
21408b64bd2SAlexis Ballier	pinctrl-names = "default";
215e5ab00edSAlexis Ballier	pinctrl-0 = <&rgmii_pins>, <&phy_intb>, <&phy_rstb>;
21608b64bd2SAlexis Ballier	tx_delay = <0x28>;
21708b64bd2SAlexis Ballier	rx_delay = <0x11>;
21808b64bd2SAlexis Ballier	status = "okay";
219e5ab00edSAlexis Ballier
220e5ab00edSAlexis Ballier	mdio {
221e5ab00edSAlexis Ballier		compatible = "snps,dwmac-mdio";
222e5ab00edSAlexis Ballier		#address-cells = <1>;
223e5ab00edSAlexis Ballier		#size-cells = <0>;
224e5ab00edSAlexis Ballier
225b2bb7691SJohan Jonker		rtl8211e: ethernet-phy@1 {
226e5ab00edSAlexis Ballier			reg = <1>;
227e5ab00edSAlexis Ballier			interrupt-parent = <&gpio3>;
228e5ab00edSAlexis Ballier			interrupts = <RK_PB2 IRQ_TYPE_LEVEL_LOW>;
229e5ab00edSAlexis Ballier			reset-assert-us = <10000>;
230e5ab00edSAlexis Ballier			reset-deassert-us = <30000>;
231e5ab00edSAlexis Ballier			reset-gpios = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
232e5ab00edSAlexis Ballier		};
233e5ab00edSAlexis Ballier	};
23408b64bd2SAlexis Ballier};
23508b64bd2SAlexis Ballier
23608b64bd2SAlexis Ballier&gpu {
23708b64bd2SAlexis Ballier	mali-supply = <&vdd_gpu>;
23808b64bd2SAlexis Ballier	status = "okay";
23908b64bd2SAlexis Ballier};
24008b64bd2SAlexis Ballier
24108b64bd2SAlexis Ballier&hdmi {
24208b64bd2SAlexis Ballier	ddc-i2c-bus = <&i2c3>;
24308b64bd2SAlexis Ballier	status = "okay";
24408b64bd2SAlexis Ballier};
24508b64bd2SAlexis Ballier
24608b64bd2SAlexis Ballier&hdmi_sound {
24708b64bd2SAlexis Ballier	status = "okay";
24808b64bd2SAlexis Ballier};
24908b64bd2SAlexis Ballier
25008b64bd2SAlexis Ballier&i2c0 {
25108b64bd2SAlexis Ballier	clock-frequency = <400000>;
25208b64bd2SAlexis Ballier	i2c-scl-rising-time-ns = <168>;
25308b64bd2SAlexis Ballier	i2c-scl-falling-time-ns = <4>;
25408b64bd2SAlexis Ballier	status = "okay";
25508b64bd2SAlexis Ballier
25608b64bd2SAlexis Ballier	rk808: pmic@1b {
25708b64bd2SAlexis Ballier		compatible = "rockchip,rk808";
25808b64bd2SAlexis Ballier		reg = <0x1b>;
25908b64bd2SAlexis Ballier		interrupt-parent = <&gpio1>;
26008b64bd2SAlexis Ballier		interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
26108b64bd2SAlexis Ballier		#clock-cells = <1>;
26208b64bd2SAlexis Ballier		clock-output-names = "rtc_clko_soc", "rtc_clko_wifi";
26308b64bd2SAlexis Ballier		pinctrl-names = "default";
26408b64bd2SAlexis Ballier		pinctrl-0 = <&pmic_int_l>;
26508b64bd2SAlexis Ballier		system-power-controller;
26608b64bd2SAlexis Ballier		wakeup-source;
26708b64bd2SAlexis Ballier
26808b64bd2SAlexis Ballier		vcc1-supply = <&vcc3v3_sys>;
26908b64bd2SAlexis Ballier		vcc2-supply = <&vcc3v3_sys>;
27008b64bd2SAlexis Ballier		vcc3-supply = <&vcc3v3_sys>;
27108b64bd2SAlexis Ballier		vcc4-supply = <&vcc3v3_sys>;
27208b64bd2SAlexis Ballier		vcc6-supply = <&vcc3v3_sys>;
27308b64bd2SAlexis Ballier		vcc7-supply = <&vcc3v3_sys>;
27408b64bd2SAlexis Ballier		vcc8-supply = <&vcc3v3_sys>;
27508b64bd2SAlexis Ballier		vcc9-supply = <&vcc3v3_sys>;
27608b64bd2SAlexis Ballier		vcc10-supply = <&vcc3v3_sys>;
27708b64bd2SAlexis Ballier		vcc11-supply = <&vcc3v3_sys>;
27808b64bd2SAlexis Ballier		vcc12-supply = <&vcc3v3_sys>;
27908b64bd2SAlexis Ballier		vddio-supply = <&vcc_3v0>;
28008b64bd2SAlexis Ballier
28108b64bd2SAlexis Ballier		regulators {
28208b64bd2SAlexis Ballier			vdd_center: DCDC_REG1 {
28308b64bd2SAlexis Ballier				regulator-name = "vdd_center";
28408b64bd2SAlexis Ballier				regulator-always-on;
28508b64bd2SAlexis Ballier				regulator-boot-on;
28608b64bd2SAlexis Ballier				regulator-min-microvolt = <700000>;
28708b64bd2SAlexis Ballier				regulator-max-microvolt = <1500000>;
28808b64bd2SAlexis Ballier				regulator-ramp-delay = <6001>;
28908b64bd2SAlexis Ballier				regulator-state-mem {
29008b64bd2SAlexis Ballier					regulator-off-in-suspend;
29108b64bd2SAlexis Ballier				};
29208b64bd2SAlexis Ballier			};
29308b64bd2SAlexis Ballier
29408b64bd2SAlexis Ballier			vdd_cpu_l: DCDC_REG2 {
29508b64bd2SAlexis Ballier				regulator-name = "vdd_cpu_l";
29608b64bd2SAlexis Ballier				regulator-always-on;
29708b64bd2SAlexis Ballier				regulator-boot-on;
29808b64bd2SAlexis Ballier				regulator-min-microvolt = <700000>;
29908b64bd2SAlexis Ballier				regulator-max-microvolt = <1500000>;
30008b64bd2SAlexis Ballier				regulator-ramp-delay = <6001>;
30108b64bd2SAlexis Ballier				regulator-state-mem {
30208b64bd2SAlexis Ballier					regulator-off-in-suspend;
30308b64bd2SAlexis Ballier				};
30408b64bd2SAlexis Ballier			};
30508b64bd2SAlexis Ballier
30608b64bd2SAlexis Ballier			vcc_ddr: DCDC_REG3 {
30708b64bd2SAlexis Ballier				regulator-name = "vcc_ddr";
30808b64bd2SAlexis Ballier				regulator-always-on;
30908b64bd2SAlexis Ballier				regulator-boot-on;
31008b64bd2SAlexis Ballier				regulator-state-mem {
31108b64bd2SAlexis Ballier					regulator-on-in-suspend;
31208b64bd2SAlexis Ballier				};
31308b64bd2SAlexis Ballier			};
31408b64bd2SAlexis Ballier
31508b64bd2SAlexis Ballier			vcc_1v8: DCDC_REG4 {
31608b64bd2SAlexis Ballier				regulator-name = "vcc_1v8";
31708b64bd2SAlexis Ballier				regulator-always-on;
31808b64bd2SAlexis Ballier				regulator-boot-on;
31908b64bd2SAlexis Ballier				regulator-min-microvolt = <1800000>;
32008b64bd2SAlexis Ballier				regulator-max-microvolt = <3300000>;
32108b64bd2SAlexis Ballier				regulator-state-mem {
32208b64bd2SAlexis Ballier					regulator-on-in-suspend;
32308b64bd2SAlexis Ballier					regulator-suspend-microvolt = <1800000>;
32408b64bd2SAlexis Ballier				};
32508b64bd2SAlexis Ballier			};
32608b64bd2SAlexis Ballier
32708b64bd2SAlexis Ballier			vcc1v8_dvp: LDO_REG1 {
32808b64bd2SAlexis Ballier				regulator-name = "vcc1v8_dvp";
32908b64bd2SAlexis Ballier				regulator-always-on;
33008b64bd2SAlexis Ballier				regulator-boot-on;
33108b64bd2SAlexis Ballier				regulator-min-microvolt = <1800000>;
33208b64bd2SAlexis Ballier				regulator-max-microvolt = <3400000>;
33308b64bd2SAlexis Ballier				regulator-state-mem {
33408b64bd2SAlexis Ballier					regulator-off-in-suspend;
33508b64bd2SAlexis Ballier				};
33608b64bd2SAlexis Ballier			};
33708b64bd2SAlexis Ballier
33808b64bd2SAlexis Ballier			vcc3v0_tp: LDO_REG2 {
33908b64bd2SAlexis Ballier				regulator-name = "vcc3v0_tp";
34008b64bd2SAlexis Ballier				regulator-always-on;
34108b64bd2SAlexis Ballier				regulator-boot-on;
34208b64bd2SAlexis Ballier				regulator-min-microvolt = <1800000>;
34308b64bd2SAlexis Ballier				regulator-max-microvolt = <3400000>;
34408b64bd2SAlexis Ballier				regulator-state-mem {
34508b64bd2SAlexis Ballier					regulator-off-in-suspend;
34608b64bd2SAlexis Ballier				};
34708b64bd2SAlexis Ballier			};
34808b64bd2SAlexis Ballier
34908b64bd2SAlexis Ballier			vcc1v8_pmupll: LDO_REG3 {
35008b64bd2SAlexis Ballier				regulator-name = "vcc1v8_pmupll";
35108b64bd2SAlexis Ballier				regulator-always-on;
35208b64bd2SAlexis Ballier				regulator-boot-on;
35308b64bd2SAlexis Ballier				regulator-min-microvolt = <800000>;
35408b64bd2SAlexis Ballier				regulator-max-microvolt = <2500000>;
35508b64bd2SAlexis Ballier				regulator-state-mem {
35608b64bd2SAlexis Ballier					regulator-on-in-suspend;
35708b64bd2SAlexis Ballier					regulator-suspend-microvolt = <1800000>;
35808b64bd2SAlexis Ballier				};
35908b64bd2SAlexis Ballier			};
36008b64bd2SAlexis Ballier
36108b64bd2SAlexis Ballier			vcc_sdio: LDO_REG4 {
36208b64bd2SAlexis Ballier				regulator-name = "vcc_sdio";
36308b64bd2SAlexis Ballier				regulator-always-on;
36408b64bd2SAlexis Ballier				regulator-boot-on;
36508b64bd2SAlexis Ballier				regulator-min-microvolt = <1800000>;
36608b64bd2SAlexis Ballier				regulator-max-microvolt = <3400000>;
36708b64bd2SAlexis Ballier				regulator-state-mem {
36808b64bd2SAlexis Ballier					regulator-on-in-suspend;
36908b64bd2SAlexis Ballier					regulator-suspend-microvolt = <3000000>;
37008b64bd2SAlexis Ballier				};
37108b64bd2SAlexis Ballier			};
37208b64bd2SAlexis Ballier
37308b64bd2SAlexis Ballier			vcca3v0_codec: LDO_REG5 {
37408b64bd2SAlexis Ballier				regulator-name = "vcca3v0_codec";
37508b64bd2SAlexis Ballier				regulator-always-on;
37608b64bd2SAlexis Ballier				regulator-boot-on;
37708b64bd2SAlexis Ballier				regulator-min-microvolt = <1800000>;
37808b64bd2SAlexis Ballier				regulator-max-microvolt = <3400000>;
37908b64bd2SAlexis Ballier				regulator-state-mem {
38008b64bd2SAlexis Ballier					regulator-off-in-suspend;
38108b64bd2SAlexis Ballier				};
38208b64bd2SAlexis Ballier			};
38308b64bd2SAlexis Ballier
38408b64bd2SAlexis Ballier			vcc_1v5: LDO_REG6 {
38508b64bd2SAlexis Ballier				regulator-name = "vcc_1v5";
38608b64bd2SAlexis Ballier				regulator-always-on;
38708b64bd2SAlexis Ballier				regulator-boot-on;
38808b64bd2SAlexis Ballier				regulator-min-microvolt = <800000>;
38908b64bd2SAlexis Ballier				regulator-max-microvolt = <2500000>;
39008b64bd2SAlexis Ballier				regulator-state-mem {
39108b64bd2SAlexis Ballier					regulator-on-in-suspend;
39208b64bd2SAlexis Ballier					regulator-suspend-microvolt = <1500000>;
39308b64bd2SAlexis Ballier				};
39408b64bd2SAlexis Ballier			};
39508b64bd2SAlexis Ballier
39608b64bd2SAlexis Ballier			vcca1v8_codec: LDO_REG7 {
39708b64bd2SAlexis Ballier				regulator-name = "vcca1v8_codec";
39808b64bd2SAlexis Ballier				regulator-always-on;
39908b64bd2SAlexis Ballier				regulator-boot-on;
40008b64bd2SAlexis Ballier				regulator-min-microvolt = <800000>;
40108b64bd2SAlexis Ballier				regulator-max-microvolt = <2500000>;
40208b64bd2SAlexis Ballier				regulator-state-mem {
40308b64bd2SAlexis Ballier					regulator-off-in-suspend;
40408b64bd2SAlexis Ballier				};
40508b64bd2SAlexis Ballier			};
40608b64bd2SAlexis Ballier
40708b64bd2SAlexis Ballier			vcc_3v0: LDO_REG8 {
40808b64bd2SAlexis Ballier				regulator-name = "vcc_3v0";
40908b64bd2SAlexis Ballier				regulator-always-on;
41008b64bd2SAlexis Ballier				regulator-boot-on;
41108b64bd2SAlexis Ballier				regulator-min-microvolt = <1800000>;
41208b64bd2SAlexis Ballier				regulator-max-microvolt = <3400000>;
41308b64bd2SAlexis Ballier				regulator-state-mem {
41408b64bd2SAlexis Ballier					regulator-on-in-suspend;
41508b64bd2SAlexis Ballier					regulator-suspend-microvolt = <3000000>;
41608b64bd2SAlexis Ballier				};
41708b64bd2SAlexis Ballier			};
41808b64bd2SAlexis Ballier
41908b64bd2SAlexis Ballier			vcc3v3_s3: SWITCH_REG1 {
42008b64bd2SAlexis Ballier				regulator-name = "vcc3v3_s3";
42108b64bd2SAlexis Ballier				regulator-always-on;
42208b64bd2SAlexis Ballier				regulator-boot-on;
42308b64bd2SAlexis Ballier				regulator-state-mem {
42408b64bd2SAlexis Ballier					regulator-off-in-suspend;
42508b64bd2SAlexis Ballier				};
42608b64bd2SAlexis Ballier			};
42708b64bd2SAlexis Ballier
42808b64bd2SAlexis Ballier			vcc3v3_s0: SWITCH_REG2 {
42908b64bd2SAlexis Ballier				regulator-name = "vcc3v3_s0";
43008b64bd2SAlexis Ballier				regulator-always-on;
43108b64bd2SAlexis Ballier				regulator-boot-on;
43208b64bd2SAlexis Ballier				regulator-state-mem {
43308b64bd2SAlexis Ballier					regulator-off-in-suspend;
43408b64bd2SAlexis Ballier				};
43508b64bd2SAlexis Ballier			};
43608b64bd2SAlexis Ballier		};
43708b64bd2SAlexis Ballier	};
43808b64bd2SAlexis Ballier
43908b64bd2SAlexis Ballier	vdd_cpu_b: regulator@40 {
44008b64bd2SAlexis Ballier		compatible = "silergy,syr827";
44108b64bd2SAlexis Ballier		reg = <0x40>;
44208b64bd2SAlexis Ballier		fcs,suspend-voltage-selector = <1>;
443dbb0a828SAlexis Ballier		pinctrl-names = "default";
444dbb0a828SAlexis Ballier		pinctrl-0 = <&cpu_b_sleep>;
44508b64bd2SAlexis Ballier		regulator-name = "vdd_cpu_b";
44608b64bd2SAlexis Ballier		regulator-min-microvolt = <712500>;
44708b64bd2SAlexis Ballier		regulator-max-microvolt = <1500000>;
44808b64bd2SAlexis Ballier		regulator-ramp-delay = <1000>;
44908b64bd2SAlexis Ballier		regulator-always-on;
45008b64bd2SAlexis Ballier		regulator-boot-on;
45108b64bd2SAlexis Ballier		vin-supply = <&vcc3v3_sys>;
45208b64bd2SAlexis Ballier
45308b64bd2SAlexis Ballier		regulator-state-mem {
45408b64bd2SAlexis Ballier			regulator-off-in-suspend;
45508b64bd2SAlexis Ballier		};
45608b64bd2SAlexis Ballier	};
45708b64bd2SAlexis Ballier
45808b64bd2SAlexis Ballier	vdd_gpu: regulator@41 {
45908b64bd2SAlexis Ballier		compatible = "silergy,syr828";
46008b64bd2SAlexis Ballier		reg = <0x41>;
46108b64bd2SAlexis Ballier		fcs,suspend-voltage-selector = <1>;
462dbb0a828SAlexis Ballier		pinctrl-names = "default";
463dbb0a828SAlexis Ballier		pinctrl-0 = <&gpu_sleep>;
46408b64bd2SAlexis Ballier		regulator-name = "vdd_gpu";
46508b64bd2SAlexis Ballier		regulator-min-microvolt = <712500>;
46608b64bd2SAlexis Ballier		regulator-max-microvolt = <1500000>;
46708b64bd2SAlexis Ballier		regulator-ramp-delay = <1000>;
46808b64bd2SAlexis Ballier		regulator-always-on;
46908b64bd2SAlexis Ballier		regulator-boot-on;
47008b64bd2SAlexis Ballier		vin-supply = <&vcc3v3_sys>;
47108b64bd2SAlexis Ballier
47208b64bd2SAlexis Ballier		regulator-state-mem {
47308b64bd2SAlexis Ballier			regulator-off-in-suspend;
47408b64bd2SAlexis Ballier		};
47508b64bd2SAlexis Ballier	};
47608b64bd2SAlexis Ballier};
47708b64bd2SAlexis Ballier
47808b64bd2SAlexis Ballier&i2c1 {
47908b64bd2SAlexis Ballier	i2c-scl-rising-time-ns = <450>;
48008b64bd2SAlexis Ballier	i2c-scl-falling-time-ns = <15>;
48108b64bd2SAlexis Ballier	status = "okay";
48208b64bd2SAlexis Ballier};
48308b64bd2SAlexis Ballier
48408b64bd2SAlexis Ballier&i2c3 {
48508b64bd2SAlexis Ballier	i2c-scl-rising-time-ns = <450>;
48608b64bd2SAlexis Ballier	i2c-scl-falling-time-ns = <15>;
48708b64bd2SAlexis Ballier	status = "okay";
48808b64bd2SAlexis Ballier};
48908b64bd2SAlexis Ballier
49008b64bd2SAlexis Ballier&i2c4 {
49108b64bd2SAlexis Ballier	clock-frequency = <400000>;
49208b64bd2SAlexis Ballier	i2c-scl-rising-time-ns = <450>;
49308b64bd2SAlexis Ballier	i2c-scl-falling-time-ns = <15>;
49408b64bd2SAlexis Ballier	status = "okay";
49508b64bd2SAlexis Ballier
49608b64bd2SAlexis Ballier	ak09911@c {
49708b64bd2SAlexis Ballier		compatible = "asahi-kasei,ak09911";
49808b64bd2SAlexis Ballier		reg = <0x0c>;
49908b64bd2SAlexis Ballier		vdd-supply = <&vcc3v3_s3>;
500ba12fdd5SAlexis Ballier		vid-supply = <&vcc3v3_s3>;
50108b64bd2SAlexis Ballier	};
50208b64bd2SAlexis Ballier
50308b64bd2SAlexis Ballier	mpu6500@68 {
50408b64bd2SAlexis Ballier		compatible = "invensense,mpu6500";
50508b64bd2SAlexis Ballier		reg = <0x68>;
50608b64bd2SAlexis Ballier		interrupt-parent = <&gpio1>;
50708b64bd2SAlexis Ballier		interrupts = <RK_PC6 IRQ_TYPE_EDGE_RISING>;
50808b64bd2SAlexis Ballier		pinctrl-names = "default";
50908b64bd2SAlexis Ballier		pinctrl-0 = <&gsensor_int_l>;
51008b64bd2SAlexis Ballier		vddio-supply = <&vcc3v3_s3>;
51108b64bd2SAlexis Ballier	};
51208b64bd2SAlexis Ballier
51308b64bd2SAlexis Ballier	lsm6ds3@6a {
51408b64bd2SAlexis Ballier		compatible = "st,lsm6ds3";
51508b64bd2SAlexis Ballier		reg = <0x6a>;
51608b64bd2SAlexis Ballier		interrupt-parent = <&gpio1>;
51708b64bd2SAlexis Ballier		interrupts = <RK_PD0 IRQ_TYPE_EDGE_RISING>;
51808b64bd2SAlexis Ballier		pinctrl-names = "default";
51908b64bd2SAlexis Ballier		pinctrl-0 = <&gyr_int_l>;
52008b64bd2SAlexis Ballier		vdd-supply = <&vcc3v3_s3>;
52108b64bd2SAlexis Ballier		vddio-supply = <&vcc3v3_s3>;
52208b64bd2SAlexis Ballier	};
52308b64bd2SAlexis Ballier
52408b64bd2SAlexis Ballier	cm32181@10 {
52508b64bd2SAlexis Ballier		compatible = "capella,cm32181";
52608b64bd2SAlexis Ballier		reg = <0x10>;
52708b64bd2SAlexis Ballier		interrupt-parent = <&gpio4>;
52808b64bd2SAlexis Ballier		interrupts = <RK_PD0 IRQ_TYPE_EDGE_RISING>;
52908b64bd2SAlexis Ballier		pinctrl-names = "default";
53008b64bd2SAlexis Ballier		pinctrl-0 = <&light_int_l>;
53108b64bd2SAlexis Ballier		vdd-supply = <&vcc3v3_s3>;
53208b64bd2SAlexis Ballier	};
5335e3f8027SAlexis Ballier
5345e3f8027SAlexis Ballier	fusb302@22 {
5355e3f8027SAlexis Ballier		compatible = "fcs,fusb302";
5365e3f8027SAlexis Ballier		reg = <0x22>;
5375e3f8027SAlexis Ballier		interrupt-parent = <&gpio1>;
5385e3f8027SAlexis Ballier		interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
5395e3f8027SAlexis Ballier		pinctrl-names = "default";
5405e3f8027SAlexis Ballier		pinctrl-0 = <&chg_cc_int_l>;
5415e3f8027SAlexis Ballier		vbus-supply = <&vbus_typec>;
542e56ed188SAlexis Ballier
543e56ed188SAlexis Ballier		typec_con: connector {
544e56ed188SAlexis Ballier			compatible = "usb-c-connector";
545e56ed188SAlexis Ballier			data-role = "host";
546e56ed188SAlexis Ballier			label = "USB-C";
547e56ed188SAlexis Ballier			op-sink-microwatt = <1000000>;
548e56ed188SAlexis Ballier			power-role = "dual";
549e56ed188SAlexis Ballier			sink-pdos =
550e56ed188SAlexis Ballier				<PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
551e56ed188SAlexis Ballier			source-pdos =
552e56ed188SAlexis Ballier				<PDO_FIXED(5000, 1400, PDO_FIXED_USB_COMM)>;
553e56ed188SAlexis Ballier			try-power-role = "sink";
554e56ed188SAlexis Ballier
555e56ed188SAlexis Ballier			ports {
556e56ed188SAlexis Ballier				#address-cells = <1>;
557e56ed188SAlexis Ballier				#size-cells = <0>;
558e56ed188SAlexis Ballier
559e56ed188SAlexis Ballier				port@0 {
560e56ed188SAlexis Ballier					reg = <0>;
561e56ed188SAlexis Ballier					typec_hs: endpoint {
562e56ed188SAlexis Ballier						remote-endpoint = <&u2phy0_typec_hs>;
563e56ed188SAlexis Ballier					};
564e56ed188SAlexis Ballier				};
565e56ed188SAlexis Ballier				port@1 {
566e56ed188SAlexis Ballier					reg = <1>;
567e56ed188SAlexis Ballier					typec_ss: endpoint {
568e56ed188SAlexis Ballier						remote-endpoint = <&tcphy0_typec_ss>;
569e56ed188SAlexis Ballier					};
570e56ed188SAlexis Ballier				};
571e56ed188SAlexis Ballier				port@2 {
572e56ed188SAlexis Ballier					reg = <2>;
573e56ed188SAlexis Ballier					typec_dp: endpoint {
574e56ed188SAlexis Ballier						remote-endpoint = <&tcphy0_typec_dp>;
575e56ed188SAlexis Ballier					};
576e56ed188SAlexis Ballier				};
577e56ed188SAlexis Ballier			};
578e56ed188SAlexis Ballier		};
5795e3f8027SAlexis Ballier	};
58008b64bd2SAlexis Ballier};
58108b64bd2SAlexis Ballier
58208b64bd2SAlexis Ballier&io_domains {
58308b64bd2SAlexis Ballier	status = "okay";
58408b64bd2SAlexis Ballier	bt656-supply = <&vcc_3v0>;
58508b64bd2SAlexis Ballier	audio-supply = <&vcca1v8_codec>;
58608b64bd2SAlexis Ballier	sdmmc-supply = <&vcc_sdio>;
58708b64bd2SAlexis Ballier	gpio1830-supply = <&vcc_3v0>;
58808b64bd2SAlexis Ballier};
58908b64bd2SAlexis Ballier
59008b64bd2SAlexis Ballier&pmu_io_domains {
59108b64bd2SAlexis Ballier	status = "okay";
59208b64bd2SAlexis Ballier	pmu1830-supply = <&vcc_3v0>;
59308b64bd2SAlexis Ballier};
59408b64bd2SAlexis Ballier
59508b64bd2SAlexis Ballier&pinctrl {
59608b64bd2SAlexis Ballier	buttons {
59708b64bd2SAlexis Ballier		pwr_btn: pwr-btn {
59808b64bd2SAlexis Ballier			rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
59908b64bd2SAlexis Ballier		};
60008b64bd2SAlexis Ballier	};
60108b64bd2SAlexis Ballier
602302a729cSJohan Jonker	gmac {
603e5ab00edSAlexis Ballier		phy_intb: phy-intb {
604e5ab00edSAlexis Ballier			rockchip,pins = <3 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
605e5ab00edSAlexis Ballier		};
606e5ab00edSAlexis Ballier
607e5ab00edSAlexis Ballier		phy_rstb: phy-rstb {
608e5ab00edSAlexis Ballier			rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
609e5ab00edSAlexis Ballier		};
610e5ab00edSAlexis Ballier	};
611e5ab00edSAlexis Ballier
61208b64bd2SAlexis Ballier	pmic {
613dbb0a828SAlexis Ballier		cpu_b_sleep: cpu-b-sleep {
614dbb0a828SAlexis Ballier			rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
615dbb0a828SAlexis Ballier		};
616dbb0a828SAlexis Ballier
617dbb0a828SAlexis Ballier		gpu_sleep: gpu-sleep {
618dbb0a828SAlexis Ballier			rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
619dbb0a828SAlexis Ballier		};
620dbb0a828SAlexis Ballier
62108b64bd2SAlexis Ballier		pmic_int_l: pmic-int-l {
62208b64bd2SAlexis Ballier			rockchip,pins =
62308b64bd2SAlexis Ballier				<1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
62408b64bd2SAlexis Ballier		};
62508b64bd2SAlexis Ballier	};
62608b64bd2SAlexis Ballier
62708b64bd2SAlexis Ballier	sd {
62808b64bd2SAlexis Ballier		sdmmc0_pwr_h: sdmmc0-pwr-h {
62908b64bd2SAlexis Ballier			rockchip,pins =
630d64420e8SHeiko Stuebner				<0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
63108b64bd2SAlexis Ballier		};
63208b64bd2SAlexis Ballier	};
63308b64bd2SAlexis Ballier
63408b64bd2SAlexis Ballier	usb2 {
63508b64bd2SAlexis Ballier		vcc5v0_host_en: vcc5v0-host-en {
63608b64bd2SAlexis Ballier			rockchip,pins =
63708b64bd2SAlexis Ballier				<4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
63808b64bd2SAlexis Ballier		};
63908b64bd2SAlexis Ballier
6405e3f8027SAlexis Ballier		vcc5v0_typec_en: vcc5v0-typec-en {
64108b64bd2SAlexis Ballier			rockchip,pins =
64208b64bd2SAlexis Ballier				<1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
64308b64bd2SAlexis Ballier		};
64408b64bd2SAlexis Ballier	};
64508b64bd2SAlexis Ballier
64608b64bd2SAlexis Ballier	sdio-pwrseq {
64708b64bd2SAlexis Ballier		wifi_reg_on_h: wifi-reg-on-h {
64808b64bd2SAlexis Ballier			rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
64908b64bd2SAlexis Ballier		};
65008b64bd2SAlexis Ballier	};
65108b64bd2SAlexis Ballier
65208b64bd2SAlexis Ballier	wifi {
65308b64bd2SAlexis Ballier		wifi_host_wake_l: wifi-host-wake-l {
65408b64bd2SAlexis Ballier			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
65508b64bd2SAlexis Ballier		};
65608b64bd2SAlexis Ballier	};
65708b64bd2SAlexis Ballier
65808b64bd2SAlexis Ballier	bluetooth {
65908b64bd2SAlexis Ballier		bt_reg_on_h: bt-enable-h {
66008b64bd2SAlexis Ballier			rockchip,pins = <0 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
66108b64bd2SAlexis Ballier		};
66208b64bd2SAlexis Ballier
66308b64bd2SAlexis Ballier		bt_host_wake_l: bt-host-wake-l {
66408b64bd2SAlexis Ballier			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
66508b64bd2SAlexis Ballier		};
66608b64bd2SAlexis Ballier
66708b64bd2SAlexis Ballier		bt_wake_l: bt-wake-l {
66808b64bd2SAlexis Ballier			rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
66908b64bd2SAlexis Ballier		};
67008b64bd2SAlexis Ballier	};
67108b64bd2SAlexis Ballier
67208b64bd2SAlexis Ballier	mpu6500 {
67308b64bd2SAlexis Ballier		gsensor_int_l: gsensor-int-l {
67408b64bd2SAlexis Ballier			rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
67508b64bd2SAlexis Ballier		};
67608b64bd2SAlexis Ballier	};
67708b64bd2SAlexis Ballier
67808b64bd2SAlexis Ballier	lsm6ds3 {
67908b64bd2SAlexis Ballier		gyr_int_l: gyr-int-l {
68008b64bd2SAlexis Ballier			rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
68108b64bd2SAlexis Ballier		};
68208b64bd2SAlexis Ballier	};
68308b64bd2SAlexis Ballier
68408b64bd2SAlexis Ballier	cm32181 {
68508b64bd2SAlexis Ballier		light_int_l: light-int-l {
68608b64bd2SAlexis Ballier			rockchip,pins = <4 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
68708b64bd2SAlexis Ballier		};
68808b64bd2SAlexis Ballier	};
6895e3f8027SAlexis Ballier
6905e3f8027SAlexis Ballier	fusb302 {
6915e3f8027SAlexis Ballier		chg_cc_int_l: chg-cc-int-l {
6925e3f8027SAlexis Ballier			rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
6935e3f8027SAlexis Ballier		};
6945e3f8027SAlexis Ballier	};
69508b64bd2SAlexis Ballier};
69608b64bd2SAlexis Ballier
69708b64bd2SAlexis Ballier&pwm0 {
69808b64bd2SAlexis Ballier	status = "okay";
69908b64bd2SAlexis Ballier};
70008b64bd2SAlexis Ballier
70108b64bd2SAlexis Ballier&pwm2 {
70208b64bd2SAlexis Ballier	status = "okay";
70308b64bd2SAlexis Ballier};
70408b64bd2SAlexis Ballier
70508b64bd2SAlexis Ballier&saradc {
70608b64bd2SAlexis Ballier	vref-supply = <&vcca1v8_s3>;
70708b64bd2SAlexis Ballier	status = "okay";
70808b64bd2SAlexis Ballier};
70908b64bd2SAlexis Ballier
71008b64bd2SAlexis Ballier&sdhci {
71108b64bd2SAlexis Ballier	bus-width = <8>;
71208b64bd2SAlexis Ballier	mmc-hs400-1_8v;
71308b64bd2SAlexis Ballier	mmc-hs400-enhanced-strobe;
71408b64bd2SAlexis Ballier	non-removable;
71508b64bd2SAlexis Ballier	status = "okay";
71608b64bd2SAlexis Ballier};
71708b64bd2SAlexis Ballier
71808b64bd2SAlexis Ballier&sdio0 {
71908b64bd2SAlexis Ballier	bus-width = <4>;
72008b64bd2SAlexis Ballier	cap-sd-highspeed;
72108b64bd2SAlexis Ballier	cap-sdio-irq;
72208b64bd2SAlexis Ballier	clock-frequency = <50000000>;
72308b64bd2SAlexis Ballier	disable-wp;
72408b64bd2SAlexis Ballier	keep-power-in-suspend;
72508b64bd2SAlexis Ballier	max-frequency = <50000000>;
72608b64bd2SAlexis Ballier	mmc-pwrseq = <&sdio_pwrseq>;
72708b64bd2SAlexis Ballier	non-removable;
72808b64bd2SAlexis Ballier	pinctrl-names = "default";
72908b64bd2SAlexis Ballier	pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
73008b64bd2SAlexis Ballier	sd-uhs-sdr104;
73196ff264bSJohan Jonker	#address-cells = <1>;
73296ff264bSJohan Jonker	#size-cells = <0>;
73308b64bd2SAlexis Ballier	status = "okay";
73408b64bd2SAlexis Ballier
73508b64bd2SAlexis Ballier	brcmf: wifi@1 {
73696ff264bSJohan Jonker		reg = <1>;
73708b64bd2SAlexis Ballier		compatible = "brcm,bcm4329-fmac";
73808b64bd2SAlexis Ballier		interrupt-parent = <&gpio0>;
739c043dee9SKrzysztof Kozlowski		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_HIGH>;
74008b64bd2SAlexis Ballier		interrupt-names = "host-wake";
74108b64bd2SAlexis Ballier		pinctrl-names = "default";
74208b64bd2SAlexis Ballier		pinctrl-0 = <&wifi_host_wake_l>;
74308b64bd2SAlexis Ballier	};
74408b64bd2SAlexis Ballier};
74508b64bd2SAlexis Ballier
74608b64bd2SAlexis Ballier&sdmmc {
74708b64bd2SAlexis Ballier	bus-width = <4>;
74808b64bd2SAlexis Ballier	cap-mmc-highspeed;
74908b64bd2SAlexis Ballier	cap-sd-highspeed;
75008b64bd2SAlexis Ballier	cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
75108b64bd2SAlexis Ballier	clock-frequency = <150000000>;
75208b64bd2SAlexis Ballier	disable-wp;
75308b64bd2SAlexis Ballier	max-frequency = <150000000>;
75408b64bd2SAlexis Ballier	pinctrl-names = "default";
75508b64bd2SAlexis Ballier	pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
75608b64bd2SAlexis Ballier	vmmc-supply = <&vcc3v0_sd>;
75708b64bd2SAlexis Ballier	vqmmc-supply = <&vcc_sdio>;
75808b64bd2SAlexis Ballier	status = "okay";
75908b64bd2SAlexis Ballier};
76008b64bd2SAlexis Ballier
76108b64bd2SAlexis Ballier&tcphy0 {
76208b64bd2SAlexis Ballier	status = "okay";
76308b64bd2SAlexis Ballier};
76408b64bd2SAlexis Ballier
765e56ed188SAlexis Ballier&tcphy0_dp {
766e56ed188SAlexis Ballier	port {
767e56ed188SAlexis Ballier		tcphy0_typec_dp: endpoint {
768e56ed188SAlexis Ballier			remote-endpoint = <&typec_dp>;
769e56ed188SAlexis Ballier		};
770e56ed188SAlexis Ballier	};
771e56ed188SAlexis Ballier};
772e56ed188SAlexis Ballier
773e56ed188SAlexis Ballier&tcphy0_usb3 {
774e56ed188SAlexis Ballier	port {
775e56ed188SAlexis Ballier		tcphy0_typec_ss: endpoint {
776e56ed188SAlexis Ballier			remote-endpoint = <&typec_ss>;
777e56ed188SAlexis Ballier		};
778e56ed188SAlexis Ballier	};
779e56ed188SAlexis Ballier};
780e56ed188SAlexis Ballier
78108b64bd2SAlexis Ballier&tcphy1 {
78208b64bd2SAlexis Ballier	status = "okay";
78308b64bd2SAlexis Ballier};
78408b64bd2SAlexis Ballier
78508b64bd2SAlexis Ballier&tsadc {
78608b64bd2SAlexis Ballier	rockchip,hw-tshut-mode = <1>;
78708b64bd2SAlexis Ballier	rockchip,hw-tshut-polarity = <1>;
78808b64bd2SAlexis Ballier	status = "okay";
78908b64bd2SAlexis Ballier};
79008b64bd2SAlexis Ballier
79108b64bd2SAlexis Ballier&u2phy0 {
79208b64bd2SAlexis Ballier	status = "okay";
79308b64bd2SAlexis Ballier
79408b64bd2SAlexis Ballier	u2phy0_otg: otg-port {
7955e3f8027SAlexis Ballier		phy-supply = <&vbus_typec>;
79608b64bd2SAlexis Ballier		status = "okay";
79708b64bd2SAlexis Ballier	};
79808b64bd2SAlexis Ballier
79908b64bd2SAlexis Ballier	u2phy0_host: host-port {
80008b64bd2SAlexis Ballier		phy-supply = <&vcc5v0_host>;
80108b64bd2SAlexis Ballier		status = "okay";
80208b64bd2SAlexis Ballier	};
803e56ed188SAlexis Ballier
804e56ed188SAlexis Ballier	port {
805e56ed188SAlexis Ballier		u2phy0_typec_hs: endpoint {
806e56ed188SAlexis Ballier			remote-endpoint = <&typec_hs>;
807e56ed188SAlexis Ballier		};
808e56ed188SAlexis Ballier	};
80908b64bd2SAlexis Ballier};
81008b64bd2SAlexis Ballier
81108b64bd2SAlexis Ballier&u2phy1 {
81208b64bd2SAlexis Ballier	status = "okay";
81308b64bd2SAlexis Ballier
81408b64bd2SAlexis Ballier	u2phy1_otg: otg-port {
81508b64bd2SAlexis Ballier		status = "okay";
81608b64bd2SAlexis Ballier	};
81708b64bd2SAlexis Ballier
81808b64bd2SAlexis Ballier	u2phy1_host: host-port {
81908b64bd2SAlexis Ballier		phy-supply = <&vcc5v0_host>;
82008b64bd2SAlexis Ballier		status = "okay";
82108b64bd2SAlexis Ballier	};
82208b64bd2SAlexis Ballier};
82308b64bd2SAlexis Ballier
82408b64bd2SAlexis Ballier&uart0 {
82508b64bd2SAlexis Ballier	pinctrl-names = "default";
82608b64bd2SAlexis Ballier	pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
82708b64bd2SAlexis Ballier	status = "okay";
82808b64bd2SAlexis Ballier
82908b64bd2SAlexis Ballier	bluetooth {
83008b64bd2SAlexis Ballier		compatible = "brcm,bcm43438-bt";
83108b64bd2SAlexis Ballier		clocks = <&rk808 1>;
832f5639599SAlexis Ballier		clock-names = "lpo";
83308b64bd2SAlexis Ballier		device-wakeup-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_HIGH>;
83408b64bd2SAlexis Ballier		host-wakeup-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
83508b64bd2SAlexis Ballier		shutdown-gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
83608b64bd2SAlexis Ballier		pinctrl-names = "default";
83708b64bd2SAlexis Ballier		pinctrl-0 = <&bt_host_wake_l &bt_wake_l &bt_reg_on_h>;
838f5639599SAlexis Ballier		vbat-supply = <&vcc3v3_sys>;
839f5639599SAlexis Ballier		vddio-supply = <&vcc_1v8>;
84008b64bd2SAlexis Ballier	};
84108b64bd2SAlexis Ballier};
84208b64bd2SAlexis Ballier
84308b64bd2SAlexis Ballier&uart2 {
84408b64bd2SAlexis Ballier	status = "okay";
84508b64bd2SAlexis Ballier};
84608b64bd2SAlexis Ballier
84708b64bd2SAlexis Ballier&usb_host0_ehci {
84808b64bd2SAlexis Ballier	status = "okay";
84908b64bd2SAlexis Ballier};
85008b64bd2SAlexis Ballier
85108b64bd2SAlexis Ballier&usb_host0_ohci {
85208b64bd2SAlexis Ballier	status = "okay";
85308b64bd2SAlexis Ballier};
85408b64bd2SAlexis Ballier
85508b64bd2SAlexis Ballier&usb_host1_ehci {
85608b64bd2SAlexis Ballier	status = "okay";
85708b64bd2SAlexis Ballier};
85808b64bd2SAlexis Ballier
85908b64bd2SAlexis Ballier&usb_host1_ohci {
86008b64bd2SAlexis Ballier	status = "okay";
86108b64bd2SAlexis Ballier};
86208b64bd2SAlexis Ballier
86308b64bd2SAlexis Ballier&usbdrd3_0 {
86408b64bd2SAlexis Ballier	status = "okay";
86508b64bd2SAlexis Ballier};
86608b64bd2SAlexis Ballier
86708b64bd2SAlexis Ballier&usbdrd_dwc3_0 {
86808b64bd2SAlexis Ballier	status = "okay";
869e56ed188SAlexis Ballier	dr_mode = "host";
87008b64bd2SAlexis Ballier};
87108b64bd2SAlexis Ballier
87208b64bd2SAlexis Ballier&usbdrd3_1 {
87308b64bd2SAlexis Ballier	status = "okay";
87408b64bd2SAlexis Ballier};
87508b64bd2SAlexis Ballier
87608b64bd2SAlexis Ballier&usbdrd_dwc3_1 {
87708b64bd2SAlexis Ballier	status = "okay";
87808b64bd2SAlexis Ballier	dr_mode = "host";
87908b64bd2SAlexis Ballier};
88008b64bd2SAlexis Ballier
88108b64bd2SAlexis Ballier&vopb {
88208b64bd2SAlexis Ballier	status = "okay";
88308b64bd2SAlexis Ballier};
88408b64bd2SAlexis Ballier
88508b64bd2SAlexis Ballier&vopb_mmu {
88608b64bd2SAlexis Ballier	status = "okay";
88708b64bd2SAlexis Ballier};
88808b64bd2SAlexis Ballier
88908b64bd2SAlexis Ballier&vopl {
89008b64bd2SAlexis Ballier	status = "okay";
89108b64bd2SAlexis Ballier};
89208b64bd2SAlexis Ballier
89308b64bd2SAlexis Ballier&vopl_mmu {
89408b64bd2SAlexis Ballier	status = "okay";
89508b64bd2SAlexis Ballier};
896