xref: /linux/arch/arm64/boot/dts/rockchip/rk3588-armsom-w3.dts (revision ab93e0dd72c37d378dd936f031ffb83ff2bd87ce) !
150c51bc2SJianfeng Liu// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
250c51bc2SJianfeng Liu
350c51bc2SJianfeng Liu/dts-v1/;
450c51bc2SJianfeng Liu
550c51bc2SJianfeng Liu#include <dt-bindings/gpio/gpio.h>
650c51bc2SJianfeng Liu#include <dt-bindings/leds/common.h>
7*39227520SJianfeng Liu#include <dt-bindings/soc/rockchip,vop2.h>
850c51bc2SJianfeng Liu#include "rk3588-armsom-lm7.dtsi"
950c51bc2SJianfeng Liu
1050c51bc2SJianfeng Liu/ {
1150c51bc2SJianfeng Liu	model = "ArmSoM W3";
1250c51bc2SJianfeng Liu	compatible = "armsom,w3", "armsom,lm7", "rockchip,rk3588";
1350c51bc2SJianfeng Liu
1450c51bc2SJianfeng Liu	aliases {
1550c51bc2SJianfeng Liu		mmc1 = &sdmmc;
1650c51bc2SJianfeng Liu		mmc2 = &sdio;
1750c51bc2SJianfeng Liu	};
1850c51bc2SJianfeng Liu
1950c51bc2SJianfeng Liu	analog-sound {
2050c51bc2SJianfeng Liu		compatible = "audio-graph-card";
2150c51bc2SJianfeng Liu		label = "rk3588-es8316";
2250c51bc2SJianfeng Liu
2350c51bc2SJianfeng Liu		widgets = "Microphone", "Mic Jack",
2450c51bc2SJianfeng Liu			  "Headphone", "Headphones";
2550c51bc2SJianfeng Liu
2650c51bc2SJianfeng Liu		routing = "MIC2", "Mic Jack",
2750c51bc2SJianfeng Liu			  "Headphones", "HPOL",
2850c51bc2SJianfeng Liu			  "Headphones", "HPOR";
2950c51bc2SJianfeng Liu
3050c51bc2SJianfeng Liu		dais = <&i2s0_8ch_p0>;
3150c51bc2SJianfeng Liu		hp-det-gpio = <&gpio1 RK_PD5 GPIO_ACTIVE_HIGH>;
3250c51bc2SJianfeng Liu		pinctrl-names = "default";
3350c51bc2SJianfeng Liu		pinctrl-0 = <&hp_detect>;
3450c51bc2SJianfeng Liu	};
3550c51bc2SJianfeng Liu
36*39227520SJianfeng Liu	hdmi0-con {
37*39227520SJianfeng Liu		compatible = "hdmi-connector";
38*39227520SJianfeng Liu		type = "a";
39*39227520SJianfeng Liu
40*39227520SJianfeng Liu		port {
41*39227520SJianfeng Liu			hdmi0_con_in: endpoint {
42*39227520SJianfeng Liu				remote-endpoint = <&hdmi0_out_con>;
43*39227520SJianfeng Liu			};
44*39227520SJianfeng Liu		};
45*39227520SJianfeng Liu	};
46*39227520SJianfeng Liu
47*39227520SJianfeng Liu	hdmi1-con {
48*39227520SJianfeng Liu		compatible = "hdmi-connector";
49*39227520SJianfeng Liu		type = "a";
50*39227520SJianfeng Liu
51*39227520SJianfeng Liu		port {
52*39227520SJianfeng Liu			hdmi1_con_in: endpoint {
53*39227520SJianfeng Liu				remote-endpoint = <&hdmi1_out_con>;
54*39227520SJianfeng Liu			};
55*39227520SJianfeng Liu		};
56*39227520SJianfeng Liu	};
57*39227520SJianfeng Liu
5850c51bc2SJianfeng Liu	leds {
5950c51bc2SJianfeng Liu		compatible = "gpio-leds";
6050c51bc2SJianfeng Liu		pinctrl-names = "default";
6150c51bc2SJianfeng Liu		pinctrl-0 = <&led_rgb_b>;
6250c51bc2SJianfeng Liu
6350c51bc2SJianfeng Liu		led-rgb-b {
6450c51bc2SJianfeng Liu			function = LED_FUNCTION_STATUS;
6550c51bc2SJianfeng Liu			color = <LED_COLOR_ID_BLUE>;
6650c51bc2SJianfeng Liu			gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
6750c51bc2SJianfeng Liu			linux,default-trigger = "heartbeat";
6850c51bc2SJianfeng Liu		};
6950c51bc2SJianfeng Liu
7050c51bc2SJianfeng Liu		led-rgb-r {
7150c51bc2SJianfeng Liu			function = LED_FUNCTION_STATUS;
7250c51bc2SJianfeng Liu			color = <LED_COLOR_ID_RED>;
7350c51bc2SJianfeng Liu			gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>;
7450c51bc2SJianfeng Liu			linux,default-trigger = "none";
7550c51bc2SJianfeng Liu		};
7650c51bc2SJianfeng Liu	};
7750c51bc2SJianfeng Liu
7850c51bc2SJianfeng Liu	fan: pwm-fan {
7950c51bc2SJianfeng Liu		compatible = "pwm-fan";
8050c51bc2SJianfeng Liu		cooling-levels = <0 120 150 180 210 240 255>;
8150c51bc2SJianfeng Liu		fan-supply = <&vcc5v0_sys>;
8250c51bc2SJianfeng Liu		pwms = <&pwm1 0 50000 0>;
8350c51bc2SJianfeng Liu		#cooling-cells = <2>;
8450c51bc2SJianfeng Liu	};
8550c51bc2SJianfeng Liu
8650c51bc2SJianfeng Liu	rfkill {
8750c51bc2SJianfeng Liu		compatible = "rfkill-gpio";
8850c51bc2SJianfeng Liu		label = "rfkill-pcie-wlan";
8950c51bc2SJianfeng Liu		radio-type = "wlan";
9050c51bc2SJianfeng Liu		shutdown-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
9150c51bc2SJianfeng Liu	};
9250c51bc2SJianfeng Liu
9350c51bc2SJianfeng Liu	rfkill-bt {
9450c51bc2SJianfeng Liu		compatible = "rfkill-gpio";
9550c51bc2SJianfeng Liu		label = "rfkill-m2-bt";
9650c51bc2SJianfeng Liu		radio-type = "bluetooth";
9750c51bc2SJianfeng Liu		shutdown-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>;
9850c51bc2SJianfeng Liu	};
9950c51bc2SJianfeng Liu
1005c96e633SJohan Jonker	vcc3v3_pcie2x1l0: regulator-vcc3v3-pcie2x1l0 {
10150c51bc2SJianfeng Liu		compatible = "regulator-fixed";
10250c51bc2SJianfeng Liu		enable-active-high;
10350c51bc2SJianfeng Liu		gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
10450c51bc2SJianfeng Liu		pinctrl-names = "default";
10550c51bc2SJianfeng Liu		pinctrl-0 = <&pcie2_0_vcc3v3_en>;
10650c51bc2SJianfeng Liu		regulator-name = "vcc3v3_pcie2x1l0";
10750c51bc2SJianfeng Liu		regulator-always-on;
10850c51bc2SJianfeng Liu		regulator-boot-on;
10950c51bc2SJianfeng Liu		regulator-min-microvolt = <3300000>;
11050c51bc2SJianfeng Liu		regulator-max-microvolt = <3300000>;
11150c51bc2SJianfeng Liu		startup-delay-us = <50000>;
11250c51bc2SJianfeng Liu		vin-supply = <&vcc5v0_sys>;
11350c51bc2SJianfeng Liu	};
11450c51bc2SJianfeng Liu
1155c96e633SJohan Jonker	vcc3v3_pcie2x1l2: regulator-vcc3v3-pcie2x1l2 {
11650c51bc2SJianfeng Liu		compatible = "regulator-fixed";
11750c51bc2SJianfeng Liu		regulator-name = "vcc3v3_pcie2x1l2";
11850c51bc2SJianfeng Liu		regulator-min-microvolt = <3300000>;
11950c51bc2SJianfeng Liu		regulator-max-microvolt = <3300000>;
12050c51bc2SJianfeng Liu		startup-delay-us = <5000>;
12150c51bc2SJianfeng Liu		vin-supply = <&vcc_3v3_s3>;
12250c51bc2SJianfeng Liu	};
12350c51bc2SJianfeng Liu
1245c96e633SJohan Jonker	vcc3v3_pcie30: regulator-vcc3v3-pcie30 {
12550c51bc2SJianfeng Liu		compatible = "regulator-fixed";
12650c51bc2SJianfeng Liu		enable-active-high;
12750c51bc2SJianfeng Liu		gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
12850c51bc2SJianfeng Liu		pinctrl-names = "default";
12950c51bc2SJianfeng Liu		pinctrl-0 = <&pcie3_vcc3v3_en>;
13050c51bc2SJianfeng Liu		regulator-name = "vcc3v3_pcie30";
13150c51bc2SJianfeng Liu		regulator-min-microvolt = <3300000>;
13250c51bc2SJianfeng Liu		regulator-max-microvolt = <3300000>;
13350c51bc2SJianfeng Liu		startup-delay-us = <5000>;
13450c51bc2SJianfeng Liu		vin-supply = <&vcc5v0_sys>;
13550c51bc2SJianfeng Liu	};
13650c51bc2SJianfeng Liu
1375c96e633SJohan Jonker	vcc5v0_host: regulator-vcc5v0-host {
13850c51bc2SJianfeng Liu		compatible = "regulator-fixed";
13950c51bc2SJianfeng Liu		regulator-name = "vcc5v0_host";
14050c51bc2SJianfeng Liu		regulator-boot-on;
14150c51bc2SJianfeng Liu		regulator-always-on;
14250c51bc2SJianfeng Liu		regulator-min-microvolt = <5000000>;
14350c51bc2SJianfeng Liu		regulator-max-microvolt = <5000000>;
14450c51bc2SJianfeng Liu		enable-active-high;
14550c51bc2SJianfeng Liu		gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
14650c51bc2SJianfeng Liu		pinctrl-names = "default";
14750c51bc2SJianfeng Liu		pinctrl-0 = <&vcc5v0_host_en>;
14850c51bc2SJianfeng Liu		vin-supply = <&vcc5v0_sys>;
14950c51bc2SJianfeng Liu	};
15050c51bc2SJianfeng Liu};
15150c51bc2SJianfeng Liu
15250c51bc2SJianfeng Liu&combphy0_ps {
15350c51bc2SJianfeng Liu	status = "okay";
15450c51bc2SJianfeng Liu};
15550c51bc2SJianfeng Liu
15650c51bc2SJianfeng Liu&combphy1_ps {
15750c51bc2SJianfeng Liu	status = "okay";
15850c51bc2SJianfeng Liu};
15950c51bc2SJianfeng Liu
16050c51bc2SJianfeng Liu&combphy2_psu {
16150c51bc2SJianfeng Liu	status = "okay";
16250c51bc2SJianfeng Liu};
16350c51bc2SJianfeng Liu
164*39227520SJianfeng Liu&hdmi0 {
165*39227520SJianfeng Liu	status = "okay";
166*39227520SJianfeng Liu};
167*39227520SJianfeng Liu
168*39227520SJianfeng Liu&hdmi0_in {
169*39227520SJianfeng Liu	hdmi0_in_vp0: endpoint {
170*39227520SJianfeng Liu		remote-endpoint = <&vp0_out_hdmi0>;
171*39227520SJianfeng Liu	};
172*39227520SJianfeng Liu};
173*39227520SJianfeng Liu
174*39227520SJianfeng Liu&hdmi0_out {
175*39227520SJianfeng Liu	hdmi0_out_con: endpoint {
176*39227520SJianfeng Liu		remote-endpoint = <&hdmi0_con_in>;
177*39227520SJianfeng Liu	};
178*39227520SJianfeng Liu};
179*39227520SJianfeng Liu
180*39227520SJianfeng Liu&hdmi0_sound {
181*39227520SJianfeng Liu	status = "okay";
182*39227520SJianfeng Liu};
183*39227520SJianfeng Liu
184*39227520SJianfeng Liu&hdmi1 {
185*39227520SJianfeng Liu	status = "okay";
186*39227520SJianfeng Liu};
187*39227520SJianfeng Liu
188*39227520SJianfeng Liu&hdmi1_in {
189*39227520SJianfeng Liu	hdmi1_in_vp1: endpoint {
190*39227520SJianfeng Liu		remote-endpoint = <&vp1_out_hdmi1>;
191*39227520SJianfeng Liu	};
192*39227520SJianfeng Liu};
193*39227520SJianfeng Liu
194*39227520SJianfeng Liu&hdmi1_out {
195*39227520SJianfeng Liu	hdmi1_out_con: endpoint {
196*39227520SJianfeng Liu		remote-endpoint = <&hdmi1_con_in>;
197*39227520SJianfeng Liu	};
198*39227520SJianfeng Liu};
199*39227520SJianfeng Liu
200*39227520SJianfeng Liu&hdmi1_sound {
201*39227520SJianfeng Liu	status = "okay";
202*39227520SJianfeng Liu};
203*39227520SJianfeng Liu
204*39227520SJianfeng Liu&hdptxphy0 {
205*39227520SJianfeng Liu	status = "okay";
206*39227520SJianfeng Liu};
207*39227520SJianfeng Liu
208*39227520SJianfeng Liu&hdptxphy1 {
209*39227520SJianfeng Liu	status = "okay";
210*39227520SJianfeng Liu};
211*39227520SJianfeng Liu
21250c51bc2SJianfeng Liu&i2c6 {
21350c51bc2SJianfeng Liu	status = "okay";
21450c51bc2SJianfeng Liu
21550c51bc2SJianfeng Liu	hym8563: rtc@51 {
21650c51bc2SJianfeng Liu		compatible = "haoyu,hym8563";
21750c51bc2SJianfeng Liu		reg = <0x51>;
21850c51bc2SJianfeng Liu		#clock-cells = <0>;
21950c51bc2SJianfeng Liu		clock-output-names = "hym8563";
22050c51bc2SJianfeng Liu		pinctrl-names = "default";
22150c51bc2SJianfeng Liu		pinctrl-0 = <&hym8563_int>;
22250c51bc2SJianfeng Liu		interrupt-parent = <&gpio0>;
22350c51bc2SJianfeng Liu		interrupts = <RK_PB0 IRQ_TYPE_LEVEL_LOW>;
22450c51bc2SJianfeng Liu		wakeup-source;
22550c51bc2SJianfeng Liu	};
22650c51bc2SJianfeng Liu};
22750c51bc2SJianfeng Liu
22850c51bc2SJianfeng Liu&i2c7 {
22950c51bc2SJianfeng Liu	status = "okay";
23050c51bc2SJianfeng Liu
23150c51bc2SJianfeng Liu	es8316: audio-codec@11 {
23250c51bc2SJianfeng Liu		compatible = "everest,es8316";
23350c51bc2SJianfeng Liu		reg = <0x11>;
23450c51bc2SJianfeng Liu		clocks = <&cru I2S0_8CH_MCLKOUT>;
23550c51bc2SJianfeng Liu		clock-names = "mclk";
23650c51bc2SJianfeng Liu		assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
23750c51bc2SJianfeng Liu		assigned-clock-rates = <12288000>;
23850c51bc2SJianfeng Liu		#sound-dai-cells = <0>;
23950c51bc2SJianfeng Liu
24050c51bc2SJianfeng Liu		port {
24150c51bc2SJianfeng Liu			es8316_p0_0: endpoint {
24250c51bc2SJianfeng Liu				remote-endpoint = <&i2s0_8ch_p0_0>;
24350c51bc2SJianfeng Liu			};
24450c51bc2SJianfeng Liu		};
24550c51bc2SJianfeng Liu	};
24650c51bc2SJianfeng Liu};
24750c51bc2SJianfeng Liu
24850c51bc2SJianfeng Liu&i2s0_8ch {
24950c51bc2SJianfeng Liu	pinctrl-names = "default";
25050c51bc2SJianfeng Liu	pinctrl-0 = <&i2s0_lrck
25150c51bc2SJianfeng Liu		     &i2s0_mclk
25250c51bc2SJianfeng Liu		     &i2s0_sclk
25350c51bc2SJianfeng Liu		     &i2s0_sdi0
25450c51bc2SJianfeng Liu		     &i2s0_sdo0>;
25550c51bc2SJianfeng Liu	status = "okay";
25650c51bc2SJianfeng Liu
25750c51bc2SJianfeng Liu	i2s0_8ch_p0: port {
25850c51bc2SJianfeng Liu		i2s0_8ch_p0_0: endpoint {
25950c51bc2SJianfeng Liu			dai-format = "i2s";
26050c51bc2SJianfeng Liu			mclk-fs = <256>;
26150c51bc2SJianfeng Liu			remote-endpoint = <&es8316_p0_0>;
26250c51bc2SJianfeng Liu		};
26350c51bc2SJianfeng Liu	};
26450c51bc2SJianfeng Liu};
26550c51bc2SJianfeng Liu
266*39227520SJianfeng Liu&i2s5_8ch {
267*39227520SJianfeng Liu	status = "okay";
268*39227520SJianfeng Liu};
269*39227520SJianfeng Liu
270*39227520SJianfeng Liu&i2s6_8ch {
271*39227520SJianfeng Liu	status = "okay";
272*39227520SJianfeng Liu};
273*39227520SJianfeng Liu
27450c51bc2SJianfeng Liu&package_thermal {
27550c51bc2SJianfeng Liu	polling-delay = <1000>;
27650c51bc2SJianfeng Liu
27750c51bc2SJianfeng Liu	trips {
27850c51bc2SJianfeng Liu		package_fan0: package-fan0 {
27950c51bc2SJianfeng Liu			temperature = <55000>;
28050c51bc2SJianfeng Liu			hysteresis = <2000>;
28150c51bc2SJianfeng Liu			type = "active";
28250c51bc2SJianfeng Liu		};
28350c51bc2SJianfeng Liu
28450c51bc2SJianfeng Liu		package_fan1: package-fan1 {
28550c51bc2SJianfeng Liu			temperature = <65000>;
28650c51bc2SJianfeng Liu			hysteresis = <2000>;
28750c51bc2SJianfeng Liu			type = "active";
28850c51bc2SJianfeng Liu		};
28950c51bc2SJianfeng Liu	};
29050c51bc2SJianfeng Liu
29150c51bc2SJianfeng Liu	cooling-maps {
29250c51bc2SJianfeng Liu		map0 {
29350c51bc2SJianfeng Liu			trip = <&package_fan0>;
29450c51bc2SJianfeng Liu			cooling-device = <&fan THERMAL_NO_LIMIT 1>;
29550c51bc2SJianfeng Liu		};
29650c51bc2SJianfeng Liu
29750c51bc2SJianfeng Liu		map1 {
29850c51bc2SJianfeng Liu			trip = <&package_fan1>;
29950c51bc2SJianfeng Liu			cooling-device = <&fan 2 THERMAL_NO_LIMIT>;
30050c51bc2SJianfeng Liu		};
30150c51bc2SJianfeng Liu	};
30250c51bc2SJianfeng Liu};
30350c51bc2SJianfeng Liu
30450c51bc2SJianfeng Liu&pcie2x1l0 {
30550c51bc2SJianfeng Liu	pinctrl-names = "default";
30650c51bc2SJianfeng Liu	pinctrl-0 = <&pcie2_0_rst>;
30750c51bc2SJianfeng Liu	reset-gpios = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
30850c51bc2SJianfeng Liu	vpcie3v3-supply = <&vcc3v3_pcie2x1l0>;
30950c51bc2SJianfeng Liu	status = "okay";
31050c51bc2SJianfeng Liu};
31150c51bc2SJianfeng Liu
31250c51bc2SJianfeng Liu&pcie2x1l2 {
31350c51bc2SJianfeng Liu	pinctrl-names = "default";
31450c51bc2SJianfeng Liu	pinctrl-0 = <&pcie2_2_rst>;
31550c51bc2SJianfeng Liu	reset-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>;
31650c51bc2SJianfeng Liu	vpcie3v3-supply = <&vcc3v3_pcie2x1l2>;
31750c51bc2SJianfeng Liu	status = "okay";
31850c51bc2SJianfeng Liu};
31950c51bc2SJianfeng Liu
32050c51bc2SJianfeng Liu&pcie30phy {
32150c51bc2SJianfeng Liu	status = "okay";
32250c51bc2SJianfeng Liu};
32350c51bc2SJianfeng Liu
32450c51bc2SJianfeng Liu&pcie3x4 {
32550c51bc2SJianfeng Liu	pinctrl-names = "default";
32650c51bc2SJianfeng Liu	pinctrl-0 = <&pcie3_rst>;
32750c51bc2SJianfeng Liu	reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
32850c51bc2SJianfeng Liu	vpcie3v3-supply = <&vcc3v3_pcie30>;
32950c51bc2SJianfeng Liu	status = "okay";
33050c51bc2SJianfeng Liu};
33150c51bc2SJianfeng Liu
33250c51bc2SJianfeng Liu&pinctrl {
33350c51bc2SJianfeng Liu	hym8563 {
33450c51bc2SJianfeng Liu		hym8563_int: hym8563-int {
33550c51bc2SJianfeng Liu			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
33650c51bc2SJianfeng Liu		};
33750c51bc2SJianfeng Liu	};
33850c51bc2SJianfeng Liu
33950c51bc2SJianfeng Liu	leds {
34050c51bc2SJianfeng Liu		led_rgb_b: led-rgb-b {
34150c51bc2SJianfeng Liu			rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
34250c51bc2SJianfeng Liu		};
34350c51bc2SJianfeng Liu	};
34450c51bc2SJianfeng Liu
34550c51bc2SJianfeng Liu	sound {
34650c51bc2SJianfeng Liu		hp_detect: hp-detect {
34750c51bc2SJianfeng Liu			rockchip,pins = <1 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
34850c51bc2SJianfeng Liu		};
34950c51bc2SJianfeng Liu	};
35050c51bc2SJianfeng Liu
35150c51bc2SJianfeng Liu	pcie2 {
35250c51bc2SJianfeng Liu		pcie2_0_rst: pcie2-0-rst {
35350c51bc2SJianfeng Liu			rockchip,pins = <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
35450c51bc2SJianfeng Liu		};
35550c51bc2SJianfeng Liu
35650c51bc2SJianfeng Liu		pcie2_0_vcc3v3_en: pcie2-0-vcc-en {
35750c51bc2SJianfeng Liu			rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
35850c51bc2SJianfeng Liu		};
35950c51bc2SJianfeng Liu
36050c51bc2SJianfeng Liu		pcie2_2_rst: pcie2-2-rst {
36150c51bc2SJianfeng Liu			rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
36250c51bc2SJianfeng Liu		};
36350c51bc2SJianfeng Liu	};
36450c51bc2SJianfeng Liu
36550c51bc2SJianfeng Liu	pcie3 {
36650c51bc2SJianfeng Liu		pcie3_rst: pcie3-rst {
36750c51bc2SJianfeng Liu			rockchip,pins = <4 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
36850c51bc2SJianfeng Liu		};
36950c51bc2SJianfeng Liu
37050c51bc2SJianfeng Liu		pcie3_vcc3v3_en: pcie3-vcc3v3-en {
37150c51bc2SJianfeng Liu			rockchip,pins = <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
37250c51bc2SJianfeng Liu		};
37350c51bc2SJianfeng Liu	};
37450c51bc2SJianfeng Liu
37550c51bc2SJianfeng Liu	usb {
37650c51bc2SJianfeng Liu		vcc5v0_host_en: vcc5v0-host-en {
37750c51bc2SJianfeng Liu			rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
37850c51bc2SJianfeng Liu		};
37950c51bc2SJianfeng Liu	};
38050c51bc2SJianfeng Liu};
38150c51bc2SJianfeng Liu
38250c51bc2SJianfeng Liu&pwm1 {
38350c51bc2SJianfeng Liu	status = "okay";
38450c51bc2SJianfeng Liu};
38550c51bc2SJianfeng Liu
38650c51bc2SJianfeng Liu&sdmmc {
38750c51bc2SJianfeng Liu	bus-width = <4>;
38850c51bc2SJianfeng Liu	cap-mmc-highspeed;
38950c51bc2SJianfeng Liu	cap-sd-highspeed;
39050c51bc2SJianfeng Liu	cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
39150c51bc2SJianfeng Liu	disable-wp;
39250c51bc2SJianfeng Liu	max-frequency = <200000000>;
39350c51bc2SJianfeng Liu	no-sdio;
39450c51bc2SJianfeng Liu	no-mmc;
39550c51bc2SJianfeng Liu	sd-uhs-sdr104;
39650c51bc2SJianfeng Liu	vmmc-supply = <&vcc_3v3_s3>;
39750c51bc2SJianfeng Liu	vqmmc-supply = <&vccio_sd_s0>;
39850c51bc2SJianfeng Liu	status = "okay";
39950c51bc2SJianfeng Liu};
40050c51bc2SJianfeng Liu
40150c51bc2SJianfeng Liu&sdio {
40250c51bc2SJianfeng Liu	bus-width = <4>;
40350c51bc2SJianfeng Liu	cap-sdio-irq;
40450c51bc2SJianfeng Liu	disable-wp;
40550c51bc2SJianfeng Liu	keep-power-in-suspend;
40650c51bc2SJianfeng Liu	max-frequency = <200000000>;
40750c51bc2SJianfeng Liu	no-sd;
40850c51bc2SJianfeng Liu	no-mmc;
40950c51bc2SJianfeng Liu	non-removable;
41050c51bc2SJianfeng Liu	pinctrl-names = "default";
41150c51bc2SJianfeng Liu	pinctrl-0 = <&sdiom0_pins>;
41250c51bc2SJianfeng Liu	sd-uhs-sdr12;
41350c51bc2SJianfeng Liu	sd-uhs-sdr25;
41450c51bc2SJianfeng Liu	sd-uhs-sdr50;
41550c51bc2SJianfeng Liu	sd-uhs-sdr104;
41650c51bc2SJianfeng Liu	vmmc-supply = <&vcc3v3_pcie2x1l0>;
41750c51bc2SJianfeng Liu	vqmmc-supply = <&vcc_1v8_s3>;
41850c51bc2SJianfeng Liu	wakeup-source;
41950c51bc2SJianfeng Liu	status = "okay";
42050c51bc2SJianfeng Liu};
42150c51bc2SJianfeng Liu
42250c51bc2SJianfeng Liu&uart2 {
42350c51bc2SJianfeng Liu	pinctrl-0 = <&uart2m0_xfer>;
42450c51bc2SJianfeng Liu	status = "okay";
42550c51bc2SJianfeng Liu};
42650c51bc2SJianfeng Liu
42750c51bc2SJianfeng Liu&uart6 {
42850c51bc2SJianfeng Liu	pinctrl-names = "default";
42950c51bc2SJianfeng Liu	pinctrl-0 = <&uart6m1_xfer &uart6m1_ctsn &uart6m1_rtsn>;
43050c51bc2SJianfeng Liu	status = "okay";
43150c51bc2SJianfeng Liu};
43250c51bc2SJianfeng Liu
43350c51bc2SJianfeng Liu&u2phy1 {
43450c51bc2SJianfeng Liu	status = "okay";
43550c51bc2SJianfeng Liu};
43650c51bc2SJianfeng Liu
43750c51bc2SJianfeng Liu&u2phy1_otg {
43850c51bc2SJianfeng Liu	status = "okay";
43950c51bc2SJianfeng Liu};
44050c51bc2SJianfeng Liu
44150c51bc2SJianfeng Liu&u2phy2 {
44250c51bc2SJianfeng Liu	status = "okay";
44350c51bc2SJianfeng Liu};
44450c51bc2SJianfeng Liu
44550c51bc2SJianfeng Liu&u2phy2_host {
44650c51bc2SJianfeng Liu	/* connected to USB hub, which is powered by vcc5v0_sys */
44750c51bc2SJianfeng Liu	phy-supply = <&vcc5v0_sys>;
44850c51bc2SJianfeng Liu	status = "okay";
44950c51bc2SJianfeng Liu};
45050c51bc2SJianfeng Liu
45150c51bc2SJianfeng Liu&u2phy3 {
45250c51bc2SJianfeng Liu	status = "okay";
45350c51bc2SJianfeng Liu};
45450c51bc2SJianfeng Liu
45550c51bc2SJianfeng Liu&u2phy3_host {
45650c51bc2SJianfeng Liu	phy-supply = <&vcc5v0_host>;
45750c51bc2SJianfeng Liu	status = "okay";
45850c51bc2SJianfeng Liu};
45950c51bc2SJianfeng Liu
46050c51bc2SJianfeng Liu&usbdp_phy1 {
46150c51bc2SJianfeng Liu	status = "okay";
46250c51bc2SJianfeng Liu};
46350c51bc2SJianfeng Liu
46450c51bc2SJianfeng Liu&usb_host0_ehci {
46550c51bc2SJianfeng Liu	status = "okay";
46650c51bc2SJianfeng Liu};
46750c51bc2SJianfeng Liu
46850c51bc2SJianfeng Liu&usb_host0_ohci {
46950c51bc2SJianfeng Liu	status = "okay";
47050c51bc2SJianfeng Liu};
47150c51bc2SJianfeng Liu
47250c51bc2SJianfeng Liu&usb_host1_ehci {
47350c51bc2SJianfeng Liu	status = "okay";
47450c51bc2SJianfeng Liu};
47550c51bc2SJianfeng Liu
47650c51bc2SJianfeng Liu&usb_host1_ohci {
47750c51bc2SJianfeng Liu	status = "okay";
47850c51bc2SJianfeng Liu};
47950c51bc2SJianfeng Liu
48050c51bc2SJianfeng Liu&usb_host1_xhci {
48150c51bc2SJianfeng Liu	dr_mode = "host";
48250c51bc2SJianfeng Liu	status = "okay";
48350c51bc2SJianfeng Liu};
48450c51bc2SJianfeng Liu
48550c51bc2SJianfeng Liu&usb_host2_xhci {
48650c51bc2SJianfeng Liu	status = "okay";
48750c51bc2SJianfeng Liu};
488*39227520SJianfeng Liu
489*39227520SJianfeng Liu&vop {
490*39227520SJianfeng Liu	status = "okay";
491*39227520SJianfeng Liu};
492*39227520SJianfeng Liu
493*39227520SJianfeng Liu&vop_mmu {
494*39227520SJianfeng Liu	status = "okay";
495*39227520SJianfeng Liu};
496*39227520SJianfeng Liu
497*39227520SJianfeng Liu&vp0 {
498*39227520SJianfeng Liu	vp0_out_hdmi0: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
499*39227520SJianfeng Liu		reg = <ROCKCHIP_VOP2_EP_HDMI0>;
500*39227520SJianfeng Liu		remote-endpoint = <&hdmi0_in_vp0>;
501*39227520SJianfeng Liu	};
502*39227520SJianfeng Liu};
503*39227520SJianfeng Liu
504*39227520SJianfeng Liu&vp1 {
505*39227520SJianfeng Liu	vp1_out_hdmi1: endpoint@ROCKCHIP_VOP2_EP_HDMI1 {
506*39227520SJianfeng Liu		reg = <ROCKCHIP_VOP2_EP_HDMI1>;
507*39227520SJianfeng Liu		remote-endpoint = <&hdmi1_in_vp1>;
508*39227520SJianfeng Liu	};
509*39227520SJianfeng Liu};
510