xref: /linux/scripts/dtc/include-prefixes/arm64/rockchip/rk3566-pinetab2.dtsi (revision 115e74a29b530d121891238e9551c4bcdf7b04b5)
11b7e1944SManuel Traut// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
21b7e1944SManuel Traut
31b7e1944SManuel Traut#include <dt-bindings/gpio/gpio.h>
41b7e1944SManuel Traut#include <dt-bindings/input/gpio-keys.h>
51b7e1944SManuel Traut#include <dt-bindings/input/input.h>
61b7e1944SManuel Traut#include <dt-bindings/leds/common.h>
71b7e1944SManuel Traut#include <dt-bindings/pinctrl/rockchip.h>
81b7e1944SManuel Traut#include <dt-bindings/soc/rockchip,vop2.h>
91b7e1944SManuel Traut#include <dt-bindings/usb/pd.h>
101b7e1944SManuel Traut#include "rk3566.dtsi"
111b7e1944SManuel Traut
121b7e1944SManuel Traut/ {
131b7e1944SManuel Traut	chassis-type = "tablet";
141b7e1944SManuel Traut
151b7e1944SManuel Traut	aliases {
161b7e1944SManuel Traut		mmc0 = &sdhci;
171b7e1944SManuel Traut		mmc1 = &sdmmc0;
181b7e1944SManuel Traut	};
191b7e1944SManuel Traut
201b7e1944SManuel Traut	chosen {
211b7e1944SManuel Traut		stdout-path = "serial2:1500000n8";
221b7e1944SManuel Traut	};
231b7e1944SManuel Traut
241b7e1944SManuel Traut	adc-keys {
251b7e1944SManuel Traut		compatible = "adc-keys";
261b7e1944SManuel Traut		io-channels = <&saradc 0>;
271b7e1944SManuel Traut		io-channel-names = "buttons";
281b7e1944SManuel Traut		keyup-threshold-microvolt = <1800000>;
291b7e1944SManuel Traut		poll-interval = <25>;
301b7e1944SManuel Traut
311b7e1944SManuel Traut		button-vol-up {
321b7e1944SManuel Traut			label = "Volume Up";
331b7e1944SManuel Traut			linux,code = <KEY_VOLUMEUP>;
341b7e1944SManuel Traut			press-threshold-microvolt = <297500>;
351b7e1944SManuel Traut		};
361b7e1944SManuel Traut
371b7e1944SManuel Traut		button-vol-down {
381b7e1944SManuel Traut			label = "Volume Down";
391b7e1944SManuel Traut			linux,code = <KEY_VOLUMEDOWN>;
401b7e1944SManuel Traut			press-threshold-microvolt = <1750>;
411b7e1944SManuel Traut		};
421b7e1944SManuel Traut	};
431b7e1944SManuel Traut
441b7e1944SManuel Traut	backlight: backlight {
451b7e1944SManuel Traut		compatible = "pwm-backlight";
461b7e1944SManuel Traut		pwms = <&pwm4 0 25000 0>;
471b7e1944SManuel Traut		brightness-levels = <20 220>;
481b7e1944SManuel Traut		num-interpolated-steps = <200>;
491b7e1944SManuel Traut		default-brightness-level = <100>;
501b7e1944SManuel Traut		power-supply = <&vcc_sys>;
511b7e1944SManuel Traut	};
521b7e1944SManuel Traut
531b7e1944SManuel Traut	battery: battery {
541b7e1944SManuel Traut		compatible = "simple-battery";
551b7e1944SManuel Traut		charge-full-design-microamp-hours = <6000000>;
561b7e1944SManuel Traut		charge-term-current-microamp = <300000>;
571b7e1944SManuel Traut		constant-charge-current-max-microamp = <2000000>;
581b7e1944SManuel Traut		constant-charge-voltage-max-microvolt = <4300000>;
591b7e1944SManuel Traut		voltage-max-design-microvolt = <4350000>;
601b7e1944SManuel Traut		voltage-min-design-microvolt = <3400000>;
611b7e1944SManuel Traut
621b7e1944SManuel Traut		ocv-capacity-celsius = <20>;
631b7e1944SManuel Traut		ocv-capacity-table-0 = <4322000 100>, <4250000 95>, <4192000 90>, <4136000 85>,
641b7e1944SManuel Traut				       <4080000 80>, <4022000 75>, <3972000 70>, <3928000 65>,
651b7e1944SManuel Traut				       <3885000 60>, <3833000 55>, <3798000 50>, <3780000 45>,
661b7e1944SManuel Traut				       <3776000 40>, <3773000 35>, <3755000 30>, <3706000 25>,
671b7e1944SManuel Traut				       <3640000 20>, <3589000 15>, <3535000 10>, <3492000 5>,
681b7e1944SManuel Traut				       <3400000 0>;
691b7e1944SManuel Traut	};
701b7e1944SManuel Traut
711b7e1944SManuel Traut	gpio_keys: gpio-keys {
721b7e1944SManuel Traut		compatible = "gpio-keys";
731b7e1944SManuel Traut		pinctrl-names = "default";
741b7e1944SManuel Traut		pinctrl-0 = <&kb_id_det>;
751b7e1944SManuel Traut
761b7e1944SManuel Traut		tablet-mode-switch {
771b7e1944SManuel Traut			debounce-interval = <20>;
781b7e1944SManuel Traut			gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
791b7e1944SManuel Traut			label = "Tablet Mode";
801b7e1944SManuel Traut			linux,input-type = <EV_SW>;
811b7e1944SManuel Traut			linux,code = <SW_TABLET_MODE>;
821b7e1944SManuel Traut		};
831b7e1944SManuel Traut	};
841b7e1944SManuel Traut
851b7e1944SManuel Traut	hdmi-connector {
861b7e1944SManuel Traut		compatible = "hdmi-connector";
871b7e1944SManuel Traut		type = "d";
881b7e1944SManuel Traut
891b7e1944SManuel Traut		port {
901b7e1944SManuel Traut			hdmi_con_in: endpoint {
911b7e1944SManuel Traut				remote-endpoint = <&hdmi_out_con>;
921b7e1944SManuel Traut			};
931b7e1944SManuel Traut		};
941b7e1944SManuel Traut	};
951b7e1944SManuel Traut
961b7e1944SManuel Traut	led-0 {
971b7e1944SManuel Traut		compatible = "regulator-led";
981b7e1944SManuel Traut		vled-supply = <&vcc5v0_flashled>;
991b7e1944SManuel Traut		color = <LED_COLOR_ID_WHITE>;
1001b7e1944SManuel Traut		function = LED_FUNCTION_FLASH;
1011b7e1944SManuel Traut	};
1021b7e1944SManuel Traut
1031b7e1944SManuel Traut	rk817-sound {
1041b7e1944SManuel Traut		compatible = "simple-audio-card";
1051b7e1944SManuel Traut		pinctrl-names = "default";
1061b7e1944SManuel Traut		pinctrl-0 = <&hp_det_l>;
1071b7e1944SManuel Traut		simple-audio-card,format = "i2s";
1081b7e1944SManuel Traut		simple-audio-card,name = "rk817_ext";
1091b7e1944SManuel Traut		simple-audio-card,mclk-fs = <256>;
1101b7e1944SManuel Traut
1111b7e1944SManuel Traut		simple-audio-card,widgets =
1121b7e1944SManuel Traut			"Microphone", "Mic Jack",
1131b7e1944SManuel Traut			"Headphone", "Headphones",
1141b7e1944SManuel Traut			"Speaker", "Internal Speakers";
1151b7e1944SManuel Traut
1161b7e1944SManuel Traut		simple-audio-card,routing =
1171b7e1944SManuel Traut			"MICR", "Mic Jack",
1181b7e1944SManuel Traut			"Headphones", "HPOL",
1191b7e1944SManuel Traut			"Headphones", "HPOR",
1201b7e1944SManuel Traut			"Internal Speakers", "Speaker Amplifier OUTL",
1211b7e1944SManuel Traut			"Internal Speakers", "Speaker Amplifier OUTR",
1221b7e1944SManuel Traut			"Speaker Amplifier INL", "HPOL",
1231b7e1944SManuel Traut			"Speaker Amplifier INR", "HPOR";
1247ac5c0a5SGeert Uytterhoeven		simple-audio-card,hp-det-gpios = <&gpio4 RK_PC6 GPIO_ACTIVE_LOW>;
1251b7e1944SManuel Traut		simple-audio-card,aux-devs = <&speaker_amp>;
1261b7e1944SManuel Traut		simple-audio-card,pin-switches = "Internal Speakers";
1271b7e1944SManuel Traut
1281b7e1944SManuel Traut		simple-audio-card,cpu {
1291b7e1944SManuel Traut			sound-dai = <&i2s1_8ch>;
1301b7e1944SManuel Traut		};
1311b7e1944SManuel Traut
1321b7e1944SManuel Traut		simple-audio-card,codec {
1331b7e1944SManuel Traut			sound-dai = <&rk817>;
1341b7e1944SManuel Traut		};
1351b7e1944SManuel Traut	};
1361b7e1944SManuel Traut
1371b7e1944SManuel Traut	speaker_amp: speaker-amplifier {
1381b7e1944SManuel Traut		compatible = "simple-audio-amplifier";
1391b7e1944SManuel Traut		pinctrl-names = "default";
1401b7e1944SManuel Traut		pinctrl-0 = <&spk_ctl>;
1411b7e1944SManuel Traut		enable-gpios = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
1421b7e1944SManuel Traut		sound-name-prefix = "Speaker Amplifier";
1431b7e1944SManuel Traut		VCC-supply = <&vcc_bat>;
1441b7e1944SManuel Traut	};
1451b7e1944SManuel Traut
1465c96e633SJohan Jonker	vcc_3v3: regulator-vcc-3v3 {
1471b7e1944SManuel Traut		compatible = "regulator-fixed";
1481b7e1944SManuel Traut		regulator-name = "vcc_3v3";
1491b7e1944SManuel Traut		regulator-always-on;
1501b7e1944SManuel Traut		regulator-boot-on;
1511b7e1944SManuel Traut		regulator-min-microvolt = <3300000>;
1521b7e1944SManuel Traut		regulator-max-microvolt = <3300000>;
1531b7e1944SManuel Traut		vin-supply = <&vcc3v3_sys>;
1541b7e1944SManuel Traut	};
1551b7e1944SManuel Traut
1565c96e633SJohan Jonker	vcc3v3_minipcie: regulator-vcc3v3-minipcie {
1571b7e1944SManuel Traut		compatible = "regulator-fixed";
1581b7e1944SManuel Traut		enable-active-high;
1591b7e1944SManuel Traut		gpio = <&gpio4 RK_PC3 GPIO_ACTIVE_HIGH>;
1601b7e1944SManuel Traut		pinctrl-names = "default";
1611b7e1944SManuel Traut		pinctrl-0 = <&pcie_pwren_h>;
1621b7e1944SManuel Traut		regulator-name = "vcc3v3_minipcie";
1631b7e1944SManuel Traut		regulator-min-microvolt = <3300000>;
1641b7e1944SManuel Traut		regulator-max-microvolt = <3300000>;
1651b7e1944SManuel Traut		vin-supply = <&vcc_sys>;
1661b7e1944SManuel Traut	};
1671b7e1944SManuel Traut
1685c96e633SJohan Jonker	vcc3v3_sd: regulator-vcc3v3-sd {
1691b7e1944SManuel Traut		compatible = "regulator-fixed";
1701b7e1944SManuel Traut		gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
1711b7e1944SManuel Traut		pinctrl-names = "default";
1721b7e1944SManuel Traut		pinctrl-0 = <&sdmmc_pwren_l>;
1731b7e1944SManuel Traut		regulator-name = "vcc3v3_sd";
1741b7e1944SManuel Traut		regulator-min-microvolt = <3300000>;
1751b7e1944SManuel Traut		regulator-max-microvolt = <3300000>;
1761b7e1944SManuel Traut		vin-supply = <&vcc3v3_sys>;
1771b7e1944SManuel Traut	};
1781b7e1944SManuel Traut
1795c96e633SJohan Jonker	vcc5v0_flashled: regulator-vcc5v0-flashled {
1801b7e1944SManuel Traut		compatible = "regulator-fixed";
1811b7e1944SManuel Traut		enable-active-high;
1821b7e1944SManuel Traut		gpio = <&gpio4 RK_PA5 GPIO_ACTIVE_HIGH>;
1831b7e1944SManuel Traut		pinctrl-names = "default";
1841b7e1944SManuel Traut		pinctrl-0 = <&flash_led_en_h>;
1851b7e1944SManuel Traut		regulator-name = "vcc5v0_flashled";
1861b7e1944SManuel Traut		regulator-min-microvolt = <5000000>;
1871b7e1944SManuel Traut		regulator-max-microvolt = <5000000>;
1881b7e1944SManuel Traut		vin-supply = <&vcc5v_midu>;
1891b7e1944SManuel Traut	};
1901b7e1944SManuel Traut
1915c96e633SJohan Jonker	vcc5v0_usb_host0: regulator-vcc5v0-usb-host0 {
1921b7e1944SManuel Traut		compatible = "regulator-fixed";
1931b7e1944SManuel Traut		enable-active-high;
1941b7e1944SManuel Traut		gpio = <&gpio4 RK_PC4 GPIO_ACTIVE_HIGH>;
1951b7e1944SManuel Traut		pinctrl-names = "default";
1961b7e1944SManuel Traut		pinctrl-0 = <&usb_host_pwren1_h>;
1971b7e1944SManuel Traut		regulator-name = "vcc5v0_usb_host0";
1981b7e1944SManuel Traut		regulator-min-microvolt = <5000000>;
1991b7e1944SManuel Traut		regulator-max-microvolt = <5000000>;
2001b7e1944SManuel Traut		vin-supply = <&vcc5v_midu>;
2011b7e1944SManuel Traut	};
2021b7e1944SManuel Traut
2035c96e633SJohan Jonker	vcc5v0_usb_host2: regulator-vcc5v0-usb-host2 {
2041b7e1944SManuel Traut		compatible = "regulator-fixed";
2051b7e1944SManuel Traut		enable-active-high;
2061b7e1944SManuel Traut		gpio = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>;
2071b7e1944SManuel Traut		pinctrl-names = "default";
2081b7e1944SManuel Traut		pinctrl-0 = <&usb_host_pwren2_h>;
2091b7e1944SManuel Traut		regulator-name = "vcc5v0_usb_host2";
2101b7e1944SManuel Traut		regulator-min-microvolt = <5000000>;
2111b7e1944SManuel Traut		regulator-max-microvolt = <5000000>;
2121b7e1944SManuel Traut		vin-supply = <&vcc5v_midu>;
2131b7e1944SManuel Traut	};
2141b7e1944SManuel Traut
2155c96e633SJohan Jonker	vcc_bat: regulator-vcc-bat {
2161b7e1944SManuel Traut		compatible = "regulator-fixed";
2171b7e1944SManuel Traut		regulator-name = "vcc_bat";
2181b7e1944SManuel Traut		regulator-always-on;
2191b7e1944SManuel Traut		regulator-boot-on;
2201b7e1944SManuel Traut	};
2211b7e1944SManuel Traut
2225c96e633SJohan Jonker	vcc_sys: regulator-vcc-sys {
2231b7e1944SManuel Traut		compatible = "regulator-fixed";
2241b7e1944SManuel Traut		regulator-name = "vcc_sys";
2251b7e1944SManuel Traut		regulator-always-on;
2261b7e1944SManuel Traut		regulator-boot-on;
2271b7e1944SManuel Traut		vin-supply = <&vcc_bat>;
2281b7e1944SManuel Traut	};
2291b7e1944SManuel Traut
2305c96e633SJohan Jonker	vdd1v2_dvp: regulator-vdd1v2-dvp {
2311b7e1944SManuel Traut		compatible = "regulator-fixed";
2321b7e1944SManuel Traut		regulator-name = "vdd1v2_dvp";
2331b7e1944SManuel Traut		regulator-min-microvolt = <1200000>;
2341b7e1944SManuel Traut		regulator-max-microvolt = <1200000>;
2351b7e1944SManuel Traut		vin-supply = <&vcc_3v3>;
2361b7e1944SManuel Traut	};
2371b7e1944SManuel Traut};
2381b7e1944SManuel Traut
2391b7e1944SManuel Traut&combphy1 {
2401b7e1944SManuel Traut	status = "okay";
2411b7e1944SManuel Traut};
2421b7e1944SManuel Traut
2431b7e1944SManuel Traut&combphy2 {
2441b7e1944SManuel Traut	status = "okay";
2451b7e1944SManuel Traut};
2461b7e1944SManuel Traut
2471b7e1944SManuel Traut&cpu0 {
2481b7e1944SManuel Traut	cpu-supply = <&vdd_cpu>;
2491b7e1944SManuel Traut};
2501b7e1944SManuel Traut
2511b7e1944SManuel Traut&cpu1 {
2521b7e1944SManuel Traut	cpu-supply = <&vdd_cpu>;
2531b7e1944SManuel Traut};
2541b7e1944SManuel Traut
2551b7e1944SManuel Traut&cpu2 {
2561b7e1944SManuel Traut	cpu-supply = <&vdd_cpu>;
2571b7e1944SManuel Traut};
2581b7e1944SManuel Traut
2591b7e1944SManuel Traut&cpu3 {
2601b7e1944SManuel Traut	cpu-supply = <&vdd_cpu>;
2611b7e1944SManuel Traut};
2621b7e1944SManuel Traut
2631b7e1944SManuel Traut&cru {
2641b7e1944SManuel Traut	assigned-clocks = <&pmucru CLK_RTC_32K>, <&cru PLL_GPLL>,
2651b7e1944SManuel Traut			  <&pmucru PLL_PPLL>, <&cru PLL_VPLL>;
2661b7e1944SManuel Traut	assigned-clock-rates = <32768>, <1200000000>, <200000000>, <500000000>;
2671b7e1944SManuel Traut	assigned-clock-parents = <&pmucru CLK_RTC32K_FRAC>;
2681b7e1944SManuel Traut};
2691b7e1944SManuel Traut
2701b7e1944SManuel Traut&csi_dphy {
2711b7e1944SManuel Traut	status = "okay";
2721b7e1944SManuel Traut};
2731b7e1944SManuel Traut
2741b7e1944SManuel Traut&dsi0 {
2751b7e1944SManuel Traut	status = "okay";
2761b7e1944SManuel Traut	clock-master;
2771b7e1944SManuel Traut	#address-cells = <1>;
2781b7e1944SManuel Traut	#size-cells = <0>;
2791b7e1944SManuel Traut
2801b7e1944SManuel Traut	lcd: panel@0 {
2811b7e1944SManuel Traut		compatible = "boe,th101mb31ig002-28a";
2821b7e1944SManuel Traut		reg = <0>;
2831b7e1944SManuel Traut		backlight = <&backlight>;
2841b7e1944SManuel Traut		enable-gpios = <&gpio0 RK_PC7 GPIO_ACTIVE_HIGH>;
2851b7e1944SManuel Traut		power-supply = <&vcc_3v3>;
286*8c17c938SDiederik de Haas		rotation = <90>;
2871b7e1944SManuel Traut
288*8c17c938SDiederik de Haas		port {
289*8c17c938SDiederik de Haas			panel_in_dsi: endpoint {
2901b7e1944SManuel Traut				remote-endpoint = <&dsi0_out_con>;
2911b7e1944SManuel Traut			};
2921b7e1944SManuel Traut		};
2931b7e1944SManuel Traut	};
2941b7e1944SManuel Traut};
2951b7e1944SManuel Traut
2961b7e1944SManuel Traut&dsi0_in {
2971b7e1944SManuel Traut	dsi0_in_vp1: endpoint {
2981b7e1944SManuel Traut		remote-endpoint = <&vp1_out_dsi0>;
2991b7e1944SManuel Traut	};
3001b7e1944SManuel Traut};
3011b7e1944SManuel Traut
3021b7e1944SManuel Traut&dsi0_out {
3031b7e1944SManuel Traut	dsi0_out_con: endpoint {
3041b7e1944SManuel Traut		remote-endpoint = <&panel_in_dsi>;
3051b7e1944SManuel Traut	};
3061b7e1944SManuel Traut};
3071b7e1944SManuel Traut
3081b7e1944SManuel Traut&dsi_dphy0 {
3091b7e1944SManuel Traut	status = "okay";
3101b7e1944SManuel Traut};
3111b7e1944SManuel Traut
3121b7e1944SManuel Traut&gpu {
3131b7e1944SManuel Traut	mali-supply = <&vdd_gpu_npu>;
3141b7e1944SManuel Traut	status = "okay";
3151b7e1944SManuel Traut};
3161b7e1944SManuel Traut
3171b7e1944SManuel Traut&hdmi {
3181b7e1944SManuel Traut	avdd-0v9-supply = <&vdda_0v9_p>;
3191b7e1944SManuel Traut	avdd-1v8-supply = <&vcc_1v8>;
3201b7e1944SManuel Traut	status = "okay";
3211b7e1944SManuel Traut};
3221b7e1944SManuel Traut
3231b7e1944SManuel Traut&hdmi_in {
3241b7e1944SManuel Traut	hdmi_in_vp0: endpoint {
3251b7e1944SManuel Traut		remote-endpoint = <&vp0_out_hdmi>;
3261b7e1944SManuel Traut	};
3271b7e1944SManuel Traut};
3281b7e1944SManuel Traut
3291b7e1944SManuel Traut&hdmi_out {
3301b7e1944SManuel Traut	hdmi_out_con: endpoint {
3311b7e1944SManuel Traut		remote-endpoint = <&hdmi_con_in>;
3321b7e1944SManuel Traut	};
3331b7e1944SManuel Traut};
3341b7e1944SManuel Traut
3351b7e1944SManuel Traut&hdmi_sound {
3361b7e1944SManuel Traut	status = "okay";
3371b7e1944SManuel Traut};
3381b7e1944SManuel Traut
3391b7e1944SManuel Traut&i2c0 {
3401b7e1944SManuel Traut	clock-frequency = <400000>;
3411b7e1944SManuel Traut	status = "okay";
3421b7e1944SManuel Traut
3431b7e1944SManuel Traut	vdd_cpu: regulator@1c {
3441b7e1944SManuel Traut		compatible = "tcs,tcs4525";
3451b7e1944SManuel Traut		reg = <0x1c>;
3461b7e1944SManuel Traut		fcs,suspend-voltage-selector = <1>;
3471b7e1944SManuel Traut		regulator-name = "vdd_cpu";
3481b7e1944SManuel Traut		regulator-min-microvolt = <800000>;
3491b7e1944SManuel Traut		regulator-max-microvolt = <1150000>;
3501b7e1944SManuel Traut		regulator-ramp-delay = <2300>;
3511b7e1944SManuel Traut		regulator-always-on;
3521b7e1944SManuel Traut		regulator-boot-on;
3531b7e1944SManuel Traut		vin-supply = <&vcc_sys>;
3541b7e1944SManuel Traut
3551b7e1944SManuel Traut		regulator-state-mem {
3561b7e1944SManuel Traut			regulator-off-in-suspend;
3571b7e1944SManuel Traut		};
3581b7e1944SManuel Traut	};
3591b7e1944SManuel Traut
3601b7e1944SManuel Traut	rk817: pmic@20 {
3611b7e1944SManuel Traut		compatible = "rockchip,rk817";
3621b7e1944SManuel Traut		reg = <0x20>;
3631b7e1944SManuel Traut		interrupt-parent = <&gpio0>;
3641b7e1944SManuel Traut		interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
3651b7e1944SManuel Traut		assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
3661b7e1944SManuel Traut		assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
3671b7e1944SManuel Traut		clock-names = "mclk";
3681b7e1944SManuel Traut		clocks = <&cru I2S1_MCLKOUT_TX>;
3691b7e1944SManuel Traut		clock-output-names = "rk808-clkout1", "rk808-clkout2";
3701b7e1944SManuel Traut		#clock-cells = <1>;
3711b7e1944SManuel Traut		pinctrl-names = "default";
3721b7e1944SManuel Traut		pinctrl-0 = <&pmic_int_l>, <&i2s1m0_mclk>;
373b99ac7e2SDiederik de Haas		system-power-controller;
3741b7e1944SManuel Traut		#sound-dai-cells = <0>;
3751b7e1944SManuel Traut		wakeup-source;
3761b7e1944SManuel Traut
3771b7e1944SManuel Traut		vcc1-supply = <&vcc_sys>;
3781b7e1944SManuel Traut		vcc2-supply = <&vcc_sys>;
3791b7e1944SManuel Traut		vcc3-supply = <&vcc_sys>;
3801b7e1944SManuel Traut		vcc4-supply = <&vcc_sys>;
3811b7e1944SManuel Traut		vcc5-supply = <&vcc_sys>;
3821b7e1944SManuel Traut		vcc6-supply = <&vcc_sys>;
3831b7e1944SManuel Traut		vcc7-supply = <&vcc_sys>;
3841b7e1944SManuel Traut		vcc8-supply = <&vcc_sys>;
3851b7e1944SManuel Traut		vcc9-supply = <&vcc5v_midu>;
3861b7e1944SManuel Traut
3871b7e1944SManuel Traut		regulators {
3881b7e1944SManuel Traut			vdd_logic: DCDC_REG1 {
3891b7e1944SManuel Traut				regulator-always-on;
3901b7e1944SManuel Traut				regulator-boot-on;
3911b7e1944SManuel Traut				regulator-min-microvolt = <500000>;
3921b7e1944SManuel Traut				regulator-max-microvolt = <1350000>;
3931b7e1944SManuel Traut				regulator-ramp-delay = <6001>;
3941b7e1944SManuel Traut				regulator-initial-mode = <0x2>;
3951b7e1944SManuel Traut				regulator-name = "vdd_logic";
3961b7e1944SManuel Traut				regulator-state-mem {
3971b7e1944SManuel Traut					regulator-off-in-suspend;
3981b7e1944SManuel Traut				};
3991b7e1944SManuel Traut			};
4001b7e1944SManuel Traut
4011b7e1944SManuel Traut			vdd_gpu_npu: DCDC_REG2 {
4021b7e1944SManuel Traut				regulator-min-microvolt = <500000>;
4031b7e1944SManuel Traut				regulator-max-microvolt = <1350000>;
4041b7e1944SManuel Traut				regulator-ramp-delay = <6001>;
4051b7e1944SManuel Traut				regulator-initial-mode = <0x2>;
4061b7e1944SManuel Traut				regulator-name = "vdd_gpu_npu";
4071b7e1944SManuel Traut				regulator-state-mem {
4081b7e1944SManuel Traut					regulator-off-in-suspend;
4091b7e1944SManuel Traut				};
4101b7e1944SManuel Traut			};
4111b7e1944SManuel Traut
4121b7e1944SManuel Traut			vcc_ddr: DCDC_REG3 {
4131b7e1944SManuel Traut				regulator-always-on;
4141b7e1944SManuel Traut				regulator-boot-on;
4151b7e1944SManuel Traut				regulator-initial-mode = <0x2>;
4161b7e1944SManuel Traut				regulator-name = "vcc_ddr";
4171b7e1944SManuel Traut				regulator-state-mem {
4181b7e1944SManuel Traut					regulator-on-in-suspend;
4191b7e1944SManuel Traut				};
4201b7e1944SManuel Traut			};
4211b7e1944SManuel Traut
4221b7e1944SManuel Traut			vcc3v3_sys: DCDC_REG4 {
4231b7e1944SManuel Traut				regulator-always-on;
4241b7e1944SManuel Traut				regulator-boot-on;
4251b7e1944SManuel Traut				regulator-min-microvolt = <3300000>;
4261b7e1944SManuel Traut				regulator-max-microvolt = <3300000>;
4271b7e1944SManuel Traut				regulator-initial-mode = <0x2>;
4281b7e1944SManuel Traut				regulator-name = "vcc3v3_sys";
4291b7e1944SManuel Traut				regulator-state-mem {
4301b7e1944SManuel Traut					regulator-off-in-suspend;
4311b7e1944SManuel Traut				};
4321b7e1944SManuel Traut			};
4331b7e1944SManuel Traut
4341b7e1944SManuel Traut			vcca1v8_pmu: LDO_REG1 {
4351b7e1944SManuel Traut				regulator-always-on;
4361b7e1944SManuel Traut				regulator-boot-on;
4371b7e1944SManuel Traut				regulator-min-microvolt = <1800000>;
4381b7e1944SManuel Traut				regulator-max-microvolt = <1800000>;
4391b7e1944SManuel Traut				regulator-name = "vcca1v8_pmu";
4401b7e1944SManuel Traut				regulator-state-mem {
4411b7e1944SManuel Traut					regulator-on-in-suspend;
4421b7e1944SManuel Traut				};
4431b7e1944SManuel Traut			};
4441b7e1944SManuel Traut
4451b7e1944SManuel Traut			vdda_0v9_p: LDO_REG2 {
4461b7e1944SManuel Traut				regulator-always-on;
4471b7e1944SManuel Traut				regulator-boot-on;
4481b7e1944SManuel Traut				regulator-min-microvolt = <900000>;
4491b7e1944SManuel Traut				regulator-max-microvolt = <900000>;
4501b7e1944SManuel Traut				regulator-name = "vdda_0v9_p";
4511b7e1944SManuel Traut				regulator-state-mem {
4521b7e1944SManuel Traut					regulator-off-in-suspend;
4531b7e1944SManuel Traut				};
4541b7e1944SManuel Traut			};
4551b7e1944SManuel Traut
4561b7e1944SManuel Traut			vdda0v9_pmu: LDO_REG3 {
4571b7e1944SManuel Traut				regulator-always-on;
4581b7e1944SManuel Traut				regulator-boot-on;
4591b7e1944SManuel Traut				regulator-min-microvolt = <900000>;
4601b7e1944SManuel Traut				regulator-max-microvolt = <900000>;
4611b7e1944SManuel Traut				regulator-name = "vdda0v9_pmu";
4621b7e1944SManuel Traut				regulator-state-mem {
4631b7e1944SManuel Traut					regulator-on-in-suspend;
4641b7e1944SManuel Traut				};
4651b7e1944SManuel Traut			};
4661b7e1944SManuel Traut
4671b7e1944SManuel Traut			vccio_acodec: LDO_REG4 {
4681b7e1944SManuel Traut				regulator-always-on;
4691b7e1944SManuel Traut				regulator-boot-on;
4701b7e1944SManuel Traut				regulator-min-microvolt = <3300000>;
4711b7e1944SManuel Traut				regulator-max-microvolt = <3300000>;
4721b7e1944SManuel Traut				regulator-name = "vccio_acodec";
4731b7e1944SManuel Traut				regulator-state-mem {
4741b7e1944SManuel Traut					regulator-off-in-suspend;
4751b7e1944SManuel Traut				};
4761b7e1944SManuel Traut			};
4771b7e1944SManuel Traut
4781b7e1944SManuel Traut			vccio_sd: LDO_REG5 {
4791b7e1944SManuel Traut				regulator-always-on;
4801b7e1944SManuel Traut				regulator-boot-on;
4811b7e1944SManuel Traut				regulator-min-microvolt = <1800000>;
4821b7e1944SManuel Traut				regulator-max-microvolt = <3300000>;
4831b7e1944SManuel Traut				regulator-name = "vccio_sd";
4841b7e1944SManuel Traut				regulator-state-mem {
4851b7e1944SManuel Traut					regulator-off-in-suspend;
4861b7e1944SManuel Traut				};
4871b7e1944SManuel Traut			};
4881b7e1944SManuel Traut
4891b7e1944SManuel Traut			vcc3v3_pmu: LDO_REG6 {
4901b7e1944SManuel Traut				regulator-always-on;
4911b7e1944SManuel Traut				regulator-boot-on;
4921b7e1944SManuel Traut				regulator-min-microvolt = <3300000>;
4931b7e1944SManuel Traut				regulator-max-microvolt = <3300000>;
4941b7e1944SManuel Traut				regulator-name = "vcc3v3_pmu";
4951b7e1944SManuel Traut				regulator-state-mem {
4961b7e1944SManuel Traut					regulator-on-in-suspend;
4971b7e1944SManuel Traut				};
4981b7e1944SManuel Traut			};
4991b7e1944SManuel Traut
5001b7e1944SManuel Traut			vcc_1v8: LDO_REG7 {
5011b7e1944SManuel Traut				regulator-always-on;
5021b7e1944SManuel Traut				regulator-boot-on;
5031b7e1944SManuel Traut				regulator-min-microvolt = <1800000>;
5041b7e1944SManuel Traut				regulator-max-microvolt = <1800000>;
5051b7e1944SManuel Traut				regulator-name = "vcc_1v8";
5061b7e1944SManuel Traut				regulator-state-mem {
5071b7e1944SManuel Traut					regulator-off-in-suspend;
5081b7e1944SManuel Traut				};
5091b7e1944SManuel Traut			};
5101b7e1944SManuel Traut
5111b7e1944SManuel Traut			vcc1v8_dvp: LDO_REG8 {
5121b7e1944SManuel Traut				regulator-always-on;
5131b7e1944SManuel Traut				regulator-boot-on;
5141b7e1944SManuel Traut				regulator-min-microvolt = <1800000>;
5151b7e1944SManuel Traut				regulator-max-microvolt = <1800000>;
5161b7e1944SManuel Traut				regulator-name = "vcc1v8_dvp";
5171b7e1944SManuel Traut				regulator-state-mem {
5181b7e1944SManuel Traut					regulator-off-in-suspend;
5191b7e1944SManuel Traut				};
5201b7e1944SManuel Traut			};
5211b7e1944SManuel Traut
5221b7e1944SManuel Traut			vcc2v8_dvp: LDO_REG9 {
5231b7e1944SManuel Traut				regulator-always-on;
5241b7e1944SManuel Traut				regulator-boot-on;
5251b7e1944SManuel Traut				regulator-min-microvolt = <2800000>;
5261b7e1944SManuel Traut				regulator-max-microvolt = <2800000>;
5271b7e1944SManuel Traut				regulator-name = "vcc2v8_dvp";
5281b7e1944SManuel Traut				regulator-state-mem {
5291b7e1944SManuel Traut					regulator-off-in-suspend;
5301b7e1944SManuel Traut				};
5311b7e1944SManuel Traut			};
5321b7e1944SManuel Traut
5331b7e1944SManuel Traut			vcc5v_midu: BOOST {
5341b7e1944SManuel Traut				regulator-always-on;
5351b7e1944SManuel Traut				regulator-boot-on;
5361b7e1944SManuel Traut				regulator-min-microvolt = <5000000>;
5371b7e1944SManuel Traut				regulator-max-microvolt = <5000000>;
5381b7e1944SManuel Traut				regulator-name = "boost";
5391b7e1944SManuel Traut				regulator-state-mem {
5401b7e1944SManuel Traut					regulator-off-in-suspend;
5411b7e1944SManuel Traut				};
5421b7e1944SManuel Traut			};
5431b7e1944SManuel Traut
5441b7e1944SManuel Traut			vbus: OTG_SWITCH {
5451b7e1944SManuel Traut				regulator-min-microvolt = <5000000>;
5461b7e1944SManuel Traut				regulator-max-microvolt = <5000000>;
5471b7e1944SManuel Traut				regulator-name = "otg_switch";
5481b7e1944SManuel Traut				regulator-state-mem {
5491b7e1944SManuel Traut					regulator-off-in-suspend;
5501b7e1944SManuel Traut				};
5511b7e1944SManuel Traut			};
5521b7e1944SManuel Traut		};
5531b7e1944SManuel Traut
5541b7e1944SManuel Traut		charger {
5551b7e1944SManuel Traut			monitored-battery = <&battery>;
5561b7e1944SManuel Traut			rockchip,resistor-sense-micro-ohms = <10000>;
5571b7e1944SManuel Traut			rockchip,sleep-enter-current-microamp = <300000>;
5581b7e1944SManuel Traut			rockchip,sleep-filter-current-microamp = <100000>;
5591b7e1944SManuel Traut		};
5601b7e1944SManuel Traut	};
5611b7e1944SManuel Traut};
5621b7e1944SManuel Traut
5631b7e1944SManuel Traut&i2c1 {
5641b7e1944SManuel Traut	clock-frequency = <400000>;
5651b7e1944SManuel Traut	status = "okay";
5661b7e1944SManuel Traut
5671b7e1944SManuel Traut	touchscreen@5d {
5681b7e1944SManuel Traut		compatible = "goodix,gt911";
5691b7e1944SManuel Traut		reg = <0x5d>;
5701b7e1944SManuel Traut		interrupt-parent = <&gpio0>;
5711b7e1944SManuel Traut		interrupts = <RK_PB0 IRQ_TYPE_EDGE_FALLING>;
5721b7e1944SManuel Traut		pinctrl-names = "default";
5731b7e1944SManuel Traut		pinctrl-0 = <&tp_int_l_pmuio2>, <&tp_rst_l_pmuio2>;
5741b7e1944SManuel Traut		AVDD28-supply = <&vcc3v3_pmu>;
5751b7e1944SManuel Traut		VDDIO-supply = <&vcca1v8_pmu>;
5761b7e1944SManuel Traut		irq-gpios = <&gpio0 RK_PB0 GPIO_ACTIVE_HIGH>;
5771b7e1944SManuel Traut		reset-gpios = <&gpio0 RK_PC2 GPIO_ACTIVE_HIGH>;
5781b7e1944SManuel Traut	};
5791b7e1944SManuel Traut};
5801b7e1944SManuel Traut
5811b7e1944SManuel Traut&i2c2 {
5821b7e1944SManuel Traut	clock-frequency = <400000>;
5831b7e1944SManuel Traut	pinctrl-0 = <&i2c2m1_xfer>;
5841b7e1944SManuel Traut	status = "okay";
5851b7e1944SManuel Traut
5861b7e1944SManuel Traut	vcm@c {
5871b7e1944SManuel Traut		compatible = "dongwoon,dw9714";
5881b7e1944SManuel Traut		reg = <0x0c>;
5891b7e1944SManuel Traut		vcc-supply = <&vcc1v8_dvp>;
5901b7e1944SManuel Traut	};
5911b7e1944SManuel Traut
5921b7e1944SManuel Traut	camera@36 {
5931b7e1944SManuel Traut		compatible = "ovti,ov5648";
5941b7e1944SManuel Traut		reg = <0x36>;
5951b7e1944SManuel Traut		pinctrl-names = "default";
5961b7e1944SManuel Traut		pinctrl-0 = <&camerab_pdn_l &camerab_rst_l>;
5971b7e1944SManuel Traut
5981b7e1944SManuel Traut		clocks = <&cru CLK_CIF_OUT>;
5991b7e1944SManuel Traut		assigned-clocks = <&cru CLK_CIF_OUT>;
6001b7e1944SManuel Traut		assigned-clock-rates = <24000000>;
6011b7e1944SManuel Traut
6021b7e1944SManuel Traut		avdd-supply = <&vcc2v8_dvp>;
6031b7e1944SManuel Traut		dvdd-supply = <&vdd1v2_dvp>;
6041b7e1944SManuel Traut		dovdd-supply = <&vcc1v8_dvp>;
6051b7e1944SManuel Traut		powerdown-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_LOW>;
6061b7e1944SManuel Traut		reset-gpios = <&gpio4 RK_PB1 GPIO_ACTIVE_LOW>;
6071b7e1944SManuel Traut
6081b7e1944SManuel Traut		port {
6091b7e1944SManuel Traut			endpoint {
6101b7e1944SManuel Traut				data-lanes = <1 2>;
6111b7e1944SManuel Traut				remote-endpoint = <0>;
6121b7e1944SManuel Traut				link-frequencies = /bits/ 64 <210000000 168000000>;
6131b7e1944SManuel Traut			};
6141b7e1944SManuel Traut		};
6151b7e1944SManuel Traut	};
6161b7e1944SManuel Traut};
6171b7e1944SManuel Traut
6181b7e1944SManuel Traut&i2c5 {
6191b7e1944SManuel Traut	clock-frequency = <400000>;
6201b7e1944SManuel Traut	status = "okay";
6211b7e1944SManuel Traut
6221b7e1944SManuel Traut	accelerometer@18 {
6231b7e1944SManuel Traut		compatible = "silan,sc7a20";
6241b7e1944SManuel Traut		reg = <0x18>;
6251b7e1944SManuel Traut		interrupt-parent = <&gpio3>;
6261b7e1944SManuel Traut		interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
6271b7e1944SManuel Traut		pinctrl-names = "default";
6281b7e1944SManuel Traut		pinctrl-0 = <&gsensor_int_l>;
6291b7e1944SManuel Traut		st,drdy-int-pin = <1>;
6301b7e1944SManuel Traut		vdd-supply = <&vcc_1v8>;
6311b7e1944SManuel Traut		vddio-supply = <&vcc_1v8>;
6321b7e1944SManuel Traut		mount-matrix = "1", "0", "0",
6331b7e1944SManuel Traut			       "0", "0", "1",
6341b7e1944SManuel Traut			       "0", "1", "0";
6351b7e1944SManuel Traut	};
6361b7e1944SManuel Traut};
6371b7e1944SManuel Traut
6381b7e1944SManuel Traut&i2s0_8ch {
6391b7e1944SManuel Traut	status = "okay";
6401b7e1944SManuel Traut};
6411b7e1944SManuel Traut
6421b7e1944SManuel Traut&i2s1_8ch {
6431b7e1944SManuel Traut	pinctrl-names = "default";
6441b7e1944SManuel Traut	pinctrl-0 = <&i2s1m0_sclktx
6451b7e1944SManuel Traut		     &i2s1m0_lrcktx
6461b7e1944SManuel Traut		     &i2s1m0_sdi0
6471b7e1944SManuel Traut		     &i2s1m0_sdo0>;
6481b7e1944SManuel Traut	rockchip,trcm-sync-tx-only;
6491b7e1944SManuel Traut	status = "okay";
6501b7e1944SManuel Traut};
6511b7e1944SManuel Traut
6521b7e1944SManuel Traut&pcie2x1 {
6531b7e1944SManuel Traut	pinctrl-names = "default";
6541b7e1944SManuel Traut	pinctrl-0 = <&pcie_reset_h>;
6551b7e1944SManuel Traut	reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
6561b7e1944SManuel Traut	vpcie3v3-supply = <&vcc3v3_minipcie>;
6571b7e1944SManuel Traut	status = "okay";
6581b7e1944SManuel Traut};
6591b7e1944SManuel Traut
6601b7e1944SManuel Traut&pinctrl {
6611b7e1944SManuel Traut	camerab {
6621b7e1944SManuel Traut		camerab_pdn_l: camerab-pdn-l {
6631b7e1944SManuel Traut			rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
6641b7e1944SManuel Traut		};
6651b7e1944SManuel Traut
6661b7e1944SManuel Traut		camerab_rst_l: camerab-rst-l {
6671b7e1944SManuel Traut			rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
6681b7e1944SManuel Traut		};
6691b7e1944SManuel Traut	};
6701b7e1944SManuel Traut
6711b7e1944SManuel Traut	cameraf {
6721b7e1944SManuel Traut		cameraf_pdn_l: cameraf-pdn-l {
6731b7e1944SManuel Traut			rockchip,pins = <4 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
6741b7e1944SManuel Traut		};
6751b7e1944SManuel Traut
6761b7e1944SManuel Traut		cameraf_rst_l: cameraf-rst-l {
6771b7e1944SManuel Traut			rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
6781b7e1944SManuel Traut		};
6791b7e1944SManuel Traut	};
6801b7e1944SManuel Traut
6811b7e1944SManuel Traut	flash {
6821b7e1944SManuel Traut		flash_led_en_h: flash-led-en-h {
6831b7e1944SManuel Traut			rockchip,pins = <4 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
6841b7e1944SManuel Traut		};
6851b7e1944SManuel Traut	};
6861b7e1944SManuel Traut
6871b7e1944SManuel Traut	fspi {
6881b7e1944SManuel Traut		fspi_dual_io_pins: fspi-dual-io-pins {
6891b7e1944SManuel Traut			rockchip,pins =
6901b7e1944SManuel Traut				/* fspi_clk */
6911b7e1944SManuel Traut				<1 RK_PD0 1 &pcfg_pull_none>,
6921b7e1944SManuel Traut				/* fspi_cs0n */
6931b7e1944SManuel Traut				<1 RK_PD3 1 &pcfg_pull_none>,
6941b7e1944SManuel Traut				/* fspi_d0 */
6951b7e1944SManuel Traut				<1 RK_PD1 1 &pcfg_pull_none>,
6961b7e1944SManuel Traut				/* fspi_d1 */
6971b7e1944SManuel Traut				<1 RK_PD2 1 &pcfg_pull_none>;
6981b7e1944SManuel Traut		};
6991b7e1944SManuel Traut	};
7001b7e1944SManuel Traut
7011b7e1944SManuel Traut	gsensor {
7021b7e1944SManuel Traut		gsensor_int_l: gsensor-int-l {
7031b7e1944SManuel Traut			rockchip,pins = <3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
7041b7e1944SManuel Traut		};
7051b7e1944SManuel Traut	};
7061b7e1944SManuel Traut
7071b7e1944SManuel Traut	kb {
7081b7e1944SManuel Traut		kb_id_det: kb-id-det {
7091b7e1944SManuel Traut			rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
7101b7e1944SManuel Traut		};
7111b7e1944SManuel Traut	};
7121b7e1944SManuel Traut
7131b7e1944SManuel Traut	lcd {
7141b7e1944SManuel Traut		lcd_pwren_h: lcd-pwren-h {
7151b7e1944SManuel Traut			rockchip,pins = <0 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
7161b7e1944SManuel Traut		};
7171b7e1944SManuel Traut	};
7181b7e1944SManuel Traut
7191b7e1944SManuel Traut	pcie {
7201b7e1944SManuel Traut		pcie_pwren_h: pcie-pwren-h {
7211b7e1944SManuel Traut			rockchip,pins = <4 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
7221b7e1944SManuel Traut		};
7231b7e1944SManuel Traut
7241b7e1944SManuel Traut		pcie_reset_h: pcie-reset-h {
7251b7e1944SManuel Traut			rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
7261b7e1944SManuel Traut		};
7271b7e1944SManuel Traut	};
7281b7e1944SManuel Traut
7291b7e1944SManuel Traut	pmic {
7301b7e1944SManuel Traut		pmic_int_l: pmic-int-l {
7311b7e1944SManuel Traut			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
7321b7e1944SManuel Traut		};
7331b7e1944SManuel Traut	};
7341b7e1944SManuel Traut
7351b7e1944SManuel Traut	sdmmc {
7361b7e1944SManuel Traut		sdmmc_pwren_l: sdmmc-pwren-l {
7371b7e1944SManuel Traut			rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
7381b7e1944SManuel Traut		};
7391b7e1944SManuel Traut	};
7401b7e1944SManuel Traut
7411b7e1944SManuel Traut	sound {
7421b7e1944SManuel Traut		hp_det_l: hp-det-l {
7431b7e1944SManuel Traut			rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
7441b7e1944SManuel Traut		};
7451b7e1944SManuel Traut
7461b7e1944SManuel Traut		spk_ctl: spk-ctl {
7471b7e1944SManuel Traut			rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
7481b7e1944SManuel Traut		};
7491b7e1944SManuel Traut	};
7501b7e1944SManuel Traut
7511b7e1944SManuel Traut	tp {
7521b7e1944SManuel Traut		tp_int_l_pmuio2: tp-int-l-pmuio2 {
7531b7e1944SManuel Traut			rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
7541b7e1944SManuel Traut		};
7551b7e1944SManuel Traut
7561b7e1944SManuel Traut		tp_rst_l_pmuio2: tp-rst-l-pmuio2 {
7571b7e1944SManuel Traut			rockchip,pins = <0 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
7581b7e1944SManuel Traut		};
7591b7e1944SManuel Traut	};
7601b7e1944SManuel Traut
7611b7e1944SManuel Traut	usb {
7621b7e1944SManuel Traut		usbcc_int_l: usbcc-int-l {
7631b7e1944SManuel Traut			rockchip,pins = <0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
7641b7e1944SManuel Traut		};
7651b7e1944SManuel Traut
7661b7e1944SManuel Traut		usb_host_pwren1_h: usb-host-pwren1-h {
7671b7e1944SManuel Traut			rockchip,pins = <4 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
7681b7e1944SManuel Traut		};
7691b7e1944SManuel Traut
7701b7e1944SManuel Traut		usb_host_pwren2_h: usb-host-pwren2-h {
7711b7e1944SManuel Traut			rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
7721b7e1944SManuel Traut		};
7731b7e1944SManuel Traut	};
7741b7e1944SManuel Traut
7751b7e1944SManuel Traut	wifi {
7761b7e1944SManuel Traut		host_wake_wl: host-wake-wl {
7771b7e1944SManuel Traut			rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
7781b7e1944SManuel Traut		};
7791b7e1944SManuel Traut
7801b7e1944SManuel Traut		wifi_wake_host_h: wifi-wake-host-h {
7811b7e1944SManuel Traut			rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_down>;
7821b7e1944SManuel Traut		};
7831b7e1944SManuel Traut	};
7841b7e1944SManuel Traut};
7851b7e1944SManuel Traut
7861b7e1944SManuel Traut&pmu_io_domains {
7871b7e1944SManuel Traut	pmuio1-supply = <&vcc3v3_pmu>;
7881b7e1944SManuel Traut	pmuio2-supply = <&vcca1v8_pmu>;
7891b7e1944SManuel Traut	vccio1-supply = <&vccio_acodec>;
7901b7e1944SManuel Traut	vccio2-supply = <&vcc_1v8>;
7911b7e1944SManuel Traut	vccio3-supply = <&vccio_sd>;
7921b7e1944SManuel Traut	vccio4-supply = <&vcc_1v8>;
7931b7e1944SManuel Traut	vccio5-supply = <&vcc_1v8>;
7941b7e1944SManuel Traut	vccio6-supply = <&vcc1v8_dvp>;
7951b7e1944SManuel Traut	vccio7-supply = <&vcc_3v3>;
7961b7e1944SManuel Traut	status = "okay";
7971b7e1944SManuel Traut};
7981b7e1944SManuel Traut
7991b7e1944SManuel Traut&pwm4 {
8001b7e1944SManuel Traut	status = "okay";
8011b7e1944SManuel Traut};
8021b7e1944SManuel Traut
8031b7e1944SManuel Traut&saradc {
8041b7e1944SManuel Traut	vref-supply = <&vcc_1v8>;
8051b7e1944SManuel Traut	status = "okay";
8061b7e1944SManuel Traut};
8071b7e1944SManuel Traut
8081b7e1944SManuel Traut&sdhci {
8091b7e1944SManuel Traut	bus-width = <8>;
8101b7e1944SManuel Traut	no-sdio;
8111b7e1944SManuel Traut	no-sd;
8121b7e1944SManuel Traut	non-removable;
8131b7e1944SManuel Traut	max-frequency = <200000000>;
8141b7e1944SManuel Traut	mmc-hs200-1_8v;
8151b7e1944SManuel Traut	pinctrl-names = "default";
8161b7e1944SManuel Traut	pinctrl-0 = <&emmc_bus8
8171b7e1944SManuel Traut		     &emmc_clk
8181b7e1944SManuel Traut		     &emmc_cmd
8191b7e1944SManuel Traut		     &emmc_datastrobe
8201b7e1944SManuel Traut		     &emmc_rstnout>;
8211b7e1944SManuel Traut	vmmc-supply = <&vcc_3v3>;
8221b7e1944SManuel Traut	vqmmc-supply = <&vcc_1v8>;
8231b7e1944SManuel Traut	status = "okay";
8241b7e1944SManuel Traut};
8251b7e1944SManuel Traut
8261b7e1944SManuel Traut&sdmmc0 {
8271b7e1944SManuel Traut	bus-width = <4>;
8281b7e1944SManuel Traut	cap-sd-highspeed;
8291b7e1944SManuel Traut	cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
8301b7e1944SManuel Traut	disable-wp;
8311b7e1944SManuel Traut	pinctrl-names = "default";
8321b7e1944SManuel Traut	pinctrl-0 = <&sdmmc0_bus4
8331b7e1944SManuel Traut		     &sdmmc0_clk
8341b7e1944SManuel Traut		     &sdmmc0_cmd
8351b7e1944SManuel Traut		     &sdmmc0_det>;
8361b7e1944SManuel Traut	sd-uhs-sdr104;
8371b7e1944SManuel Traut	vmmc-supply = <&vcc3v3_sd>;
8381b7e1944SManuel Traut	vqmmc-supply = <&vccio_sd>;
8391b7e1944SManuel Traut	status = "okay";
8401b7e1944SManuel Traut};
8411b7e1944SManuel Traut
8421b7e1944SManuel Traut&sdmmc1 {
8431b7e1944SManuel Traut	bus-width = <4>;
8441b7e1944SManuel Traut	cap-sd-highspeed;
8451b7e1944SManuel Traut	cap-sdio-irq;
8461b7e1944SManuel Traut	keep-power-in-suspend;
8471b7e1944SManuel Traut	non-removable;
8481b7e1944SManuel Traut	pinctrl-names = "default";
8491b7e1944SManuel Traut	pinctrl-0 = <&sdmmc1_bus4
8501b7e1944SManuel Traut		     &sdmmc1_cmd
8511b7e1944SManuel Traut		     &sdmmc1_clk>;
8521b7e1944SManuel Traut	sd-uhs-sdr104;
8531b7e1944SManuel Traut	vqmmc-supply = <&vcca1v8_pmu>;
8541b7e1944SManuel Traut	status = "okay";
8551b7e1944SManuel Traut};
8561b7e1944SManuel Traut
8571b7e1944SManuel Traut&sfc {
8581b7e1944SManuel Traut	pinctrl-names = "default";
8591b7e1944SManuel Traut	pinctrl-0 = <&fspi_dual_io_pins>;
8601b7e1944SManuel Traut	status = "okay";
8611b7e1944SManuel Traut	#address-cells = <1>;
8621b7e1944SManuel Traut	#size-cells = <0>;
8631b7e1944SManuel Traut
8641b7e1944SManuel Traut	flash@0 {
8651b7e1944SManuel Traut		compatible = "jedec,spi-nor";
8661b7e1944SManuel Traut		reg = <0>;
8671b7e1944SManuel Traut		spi-max-frequency = <100000000>;
8681b7e1944SManuel Traut		spi-rx-bus-width = <2>;
8691b7e1944SManuel Traut		spi-tx-bus-width = <1>;
8702c99a9ceSDiederik de Haas		vcc-supply = <&vcc_1v8>;
8711b7e1944SManuel Traut	};
8721b7e1944SManuel Traut};
8731b7e1944SManuel Traut
8741b7e1944SManuel Traut&tsadc {
8751b7e1944SManuel Traut	rockchip,hw-tshut-mode = <1>;
8761b7e1944SManuel Traut	rockchip,hw-tshut-polarity = <0>;
8771b7e1944SManuel Traut	status = "okay";
8781b7e1944SManuel Traut};
8791b7e1944SManuel Traut
8801b7e1944SManuel Traut&uart2 {
8811b7e1944SManuel Traut	status = "okay";
8821b7e1944SManuel Traut};
8831b7e1944SManuel Traut
8841b7e1944SManuel Traut&usb_host0_ehci {
8851b7e1944SManuel Traut	status = "okay";
8861b7e1944SManuel Traut};
8871b7e1944SManuel Traut
8881b7e1944SManuel Traut&usb_host0_ohci {
8891b7e1944SManuel Traut	status = "okay";
8901b7e1944SManuel Traut};
8911b7e1944SManuel Traut
8921b7e1944SManuel Traut&usb_host0_xhci {
8931b7e1944SManuel Traut	status = "okay";
8941b7e1944SManuel Traut};
8951b7e1944SManuel Traut
8961b7e1944SManuel Traut&usb_host1_xhci {
8971b7e1944SManuel Traut	status = "okay";
8981b7e1944SManuel Traut};
8991b7e1944SManuel Traut
9001b7e1944SManuel Traut&usb2phy0 {
9011b7e1944SManuel Traut	status = "okay";
9021b7e1944SManuel Traut};
9031b7e1944SManuel Traut
9041b7e1944SManuel Traut&usb2phy0_host {
9051b7e1944SManuel Traut	phy-supply = <&vcc5v0_usb_host0>;
9061b7e1944SManuel Traut	status = "okay";
9071b7e1944SManuel Traut};
9081b7e1944SManuel Traut
9091b7e1944SManuel Traut&usb2phy0_otg {
9101b7e1944SManuel Traut	status = "okay";
9111b7e1944SManuel Traut};
9121b7e1944SManuel Traut
9131b7e1944SManuel Traut&usb2phy1 {
9141b7e1944SManuel Traut	status = "okay";
9151b7e1944SManuel Traut};
9161b7e1944SManuel Traut
9171b7e1944SManuel Traut&usb2phy1_otg {
9181b7e1944SManuel Traut	phy-supply = <&vcc5v0_usb_host2>;
9191b7e1944SManuel Traut	status = "okay";
9201b7e1944SManuel Traut};
9211b7e1944SManuel Traut
9221b7e1944SManuel Traut&vop {
9231b7e1944SManuel Traut	assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
9241b7e1944SManuel Traut	assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
9251b7e1944SManuel Traut	status = "okay";
9261b7e1944SManuel Traut};
9271b7e1944SManuel Traut
9281b7e1944SManuel Traut&vop_mmu {
9291b7e1944SManuel Traut	status = "okay";
9301b7e1944SManuel Traut};
9311b7e1944SManuel Traut
9321b7e1944SManuel Traut&vp0 {
9331b7e1944SManuel Traut	vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
9341b7e1944SManuel Traut		reg = <ROCKCHIP_VOP2_EP_HDMI0>;
9351b7e1944SManuel Traut		remote-endpoint = <&hdmi_in_vp0>;
9361b7e1944SManuel Traut	};
9371b7e1944SManuel Traut};
9381b7e1944SManuel Traut
9391b7e1944SManuel Traut&vp1 {
9401b7e1944SManuel Traut	vp1_out_dsi0: endpoint@ROCKCHIP_VOP2_EP_MIPI0 {
9411b7e1944SManuel Traut		reg = <ROCKCHIP_VOP2_EP_MIPI0>;
9421b7e1944SManuel Traut		remote-endpoint = <&dsi0_in_vp1>;
9431b7e1944SManuel Traut	};
9441b7e1944SManuel Traut};
945