xref: /freebsd/sys/contrib/device-tree/src/arm64/rockchip/rk3566-bigtreetech-cb2.dtsi (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
12846c905SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
22846c905SEmmanuel Vadot
32846c905SEmmanuel Vadot/dts-v1/;
42846c905SEmmanuel Vadot
52846c905SEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
62846c905SEmmanuel Vadot#include <dt-bindings/pwm/pwm.h>
72846c905SEmmanuel Vadot#include <dt-bindings/pinctrl/rockchip.h>
82846c905SEmmanuel Vadot#include <dt-bindings/soc/rockchip,vop2.h>
92846c905SEmmanuel Vadot#include <dt-bindings/leds/common.h>
102846c905SEmmanuel Vadot#include "rk3566.dtsi"
112846c905SEmmanuel Vadot
122846c905SEmmanuel Vadot/ {
132846c905SEmmanuel Vadot	aliases {
142846c905SEmmanuel Vadot		ethernet0 = &gmac1;
152846c905SEmmanuel Vadot		mmc0 = &sdhci;
162846c905SEmmanuel Vadot		mmc1 = &sdmmc0;
172846c905SEmmanuel Vadot	};
182846c905SEmmanuel Vadot
192846c905SEmmanuel Vadot	chosen: chosen {
202846c905SEmmanuel Vadot		stdout-path = "serial2:1500000n8";
212846c905SEmmanuel Vadot	};
222846c905SEmmanuel Vadot
232846c905SEmmanuel Vadot	ext_cam_clk: clock-25000000-cam {
242846c905SEmmanuel Vadot		compatible = "fixed-clock";
252846c905SEmmanuel Vadot		clock-frequency = <25000000>;
262846c905SEmmanuel Vadot		clock-output-names = "ext_cam_clk";
272846c905SEmmanuel Vadot		#clock-cells = <0>;
282846c905SEmmanuel Vadot	};
292846c905SEmmanuel Vadot
302846c905SEmmanuel Vadot	can_mcp2515_osc: clock-8000000-mcp2515 {
312846c905SEmmanuel Vadot		compatible = "fixed-clock";
322846c905SEmmanuel Vadot		clock-frequency = <8000000>;
332846c905SEmmanuel Vadot		#clock-cells = <0>;
342846c905SEmmanuel Vadot	};
352846c905SEmmanuel Vadot
362846c905SEmmanuel Vadot	hdmi-con {
372846c905SEmmanuel Vadot		compatible = "hdmi-connector";
382846c905SEmmanuel Vadot		type = "a";
392846c905SEmmanuel Vadot
402846c905SEmmanuel Vadot		port {
412846c905SEmmanuel Vadot			hdmi_con_in: endpoint {
422846c905SEmmanuel Vadot				remote-endpoint = <&hdmi_out_con>;
432846c905SEmmanuel Vadot			};
442846c905SEmmanuel Vadot		};
452846c905SEmmanuel Vadot	};
462846c905SEmmanuel Vadot
472846c905SEmmanuel Vadot	leds: leds {
482846c905SEmmanuel Vadot		compatible = "gpio-leds";
492846c905SEmmanuel Vadot
502846c905SEmmanuel Vadot		led-0 {
512846c905SEmmanuel Vadot			color = <LED_COLOR_ID_BLUE>;
522846c905SEmmanuel Vadot			function = LED_FUNCTION_POWER;
532846c905SEmmanuel Vadot			gpios = <&gpio4 RK_PA1 GPIO_ACTIVE_LOW>;
542846c905SEmmanuel Vadot			linux,default-trigger = "default-on";
552846c905SEmmanuel Vadot			pinctrl-names = "default";
562846c905SEmmanuel Vadot			pinctrl-0 = <&blue_led>;
572846c905SEmmanuel Vadot		};
582846c905SEmmanuel Vadot
592846c905SEmmanuel Vadot		led-1 {
602846c905SEmmanuel Vadot			color = <LED_COLOR_ID_GREEN>;
612846c905SEmmanuel Vadot			function = LED_FUNCTION_HEARTBEAT;
622846c905SEmmanuel Vadot			gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_LOW>;
632846c905SEmmanuel Vadot			linux,default-trigger = "heartbeat";
642846c905SEmmanuel Vadot			pinctrl-names = "default";
652846c905SEmmanuel Vadot			pinctrl-0 = <&heartbeat_led>;
662846c905SEmmanuel Vadot		};
672846c905SEmmanuel Vadot	};
682846c905SEmmanuel Vadot
692846c905SEmmanuel Vadot	fan: pwm-fan {
702846c905SEmmanuel Vadot		compatible = "pwm-fan";
712846c905SEmmanuel Vadot		#cooling-cells = <2>;
722846c905SEmmanuel Vadot		cooling-levels = <0 50 100 150 200 255>;
732846c905SEmmanuel Vadot		pwms = <&pwm7 0 50000 0>;
742846c905SEmmanuel Vadot	};
752846c905SEmmanuel Vadot
762846c905SEmmanuel Vadot	rk809-sound {
772846c905SEmmanuel Vadot		compatible = "simple-audio-card";
782846c905SEmmanuel Vadot		simple-audio-card,format = "i2s";
792846c905SEmmanuel Vadot		simple-audio-card,name = "Analog RK809";
802846c905SEmmanuel Vadot		simple-audio-card,mclk-fs = <256>;
812846c905SEmmanuel Vadot
822846c905SEmmanuel Vadot		simple-audio-card,cpu {
832846c905SEmmanuel Vadot			sound-dai = <&i2s1_8ch>;
842846c905SEmmanuel Vadot		};
852846c905SEmmanuel Vadot
862846c905SEmmanuel Vadot		simple-audio-card,codec {
872846c905SEmmanuel Vadot			sound-dai = <&rk809>;
882846c905SEmmanuel Vadot		};
892846c905SEmmanuel Vadot	};
902846c905SEmmanuel Vadot
912846c905SEmmanuel Vadot	sdio_pwrseq: sdio-pwrseq {
922846c905SEmmanuel Vadot		compatible = "mmc-pwrseq-simple";
932846c905SEmmanuel Vadot		clocks = <&rk809 1>;
942846c905SEmmanuel Vadot		clock-names = "ext_clock";
952846c905SEmmanuel Vadot		pinctrl-names = "default";
962846c905SEmmanuel Vadot		pinctrl-0 = <&wifi_enable_h>;
972846c905SEmmanuel Vadot		post-power-on-delay-ms = <200>;
982846c905SEmmanuel Vadot		reset-gpios = <&gpio0 RK_PD3 GPIO_ACTIVE_LOW>;
992846c905SEmmanuel Vadot	};
1002846c905SEmmanuel Vadot
1012846c905SEmmanuel Vadot	vbus: regulator-vbus {
1022846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1032846c905SEmmanuel Vadot		regulator-name = "vbus";
1042846c905SEmmanuel Vadot		regulator-always-on;
1052846c905SEmmanuel Vadot		regulator-boot-on;
1062846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1072846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1082846c905SEmmanuel Vadot	};
1092846c905SEmmanuel Vadot
1102846c905SEmmanuel Vadot	vcc12v_dcin: regulator-vcc12v-dcin {
1112846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1122846c905SEmmanuel Vadot		regulator-name = "vcc12v_dcin";
1132846c905SEmmanuel Vadot		regulator-always-on;
1142846c905SEmmanuel Vadot		regulator-boot-on;
1152846c905SEmmanuel Vadot		regulator-min-microvolt = <12000000>;
1162846c905SEmmanuel Vadot		regulator-max-microvolt = <12000000>;
1172846c905SEmmanuel Vadot	};
1182846c905SEmmanuel Vadot
1192846c905SEmmanuel Vadot	vcc3v3_pcie: regulator-vcc3v3-pcie {
1202846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1212846c905SEmmanuel Vadot		regulator-name = "vcc3v3_pcie";
1222846c905SEmmanuel Vadot		enable-active-high;
1232846c905SEmmanuel Vadot		gpios = <&gpio0 RK_PB1 GPIO_ACTIVE_HIGH>;
1242846c905SEmmanuel Vadot		pinctrl-names = "default";
1252846c905SEmmanuel Vadot		pinctrl-0 = <&pcie_drv>;
1262846c905SEmmanuel Vadot		regulator-always-on;
1272846c905SEmmanuel Vadot		regulator-boot-on;
1282846c905SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
1292846c905SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
1302846c905SEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
1312846c905SEmmanuel Vadot	};
1322846c905SEmmanuel Vadot
1332846c905SEmmanuel Vadot	vcc3v3_sys: regulator-vcc3v3-sys {
1342846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1352846c905SEmmanuel Vadot		regulator-name = "vcc3v3_sys";
1362846c905SEmmanuel Vadot		regulator-always-on;
1372846c905SEmmanuel Vadot		regulator-boot-on;
1382846c905SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
1392846c905SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
1402846c905SEmmanuel Vadot		vin-supply = <&vbus>;
1412846c905SEmmanuel Vadot	};
1422846c905SEmmanuel Vadot
1432846c905SEmmanuel Vadot	vcc5v0_host: regulator-vcc5v0-host {
1442846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1452846c905SEmmanuel Vadot		enable-active-high;
1462846c905SEmmanuel Vadot		gpios = <&gpio0 RK_PB6 GPIO_ACTIVE_HIGH>;
1472846c905SEmmanuel Vadot		pinctrl-names = "default";
1482846c905SEmmanuel Vadot		pinctrl-0 = <&vcc5v0_host_en>;
1492846c905SEmmanuel Vadot		regulator-name = "vcc5v0_host3";
1502846c905SEmmanuel Vadot		regulator-always-on;
1512846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1522846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1532846c905SEmmanuel Vadot	};
1542846c905SEmmanuel Vadot
1552846c905SEmmanuel Vadot	vcc5v0_otg: regulator-vcc5v0-otg {
1562846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1572846c905SEmmanuel Vadot		enable-active-high;
1582846c905SEmmanuel Vadot		gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
1592846c905SEmmanuel Vadot		pinctrl-names = "default";
1602846c905SEmmanuel Vadot		pinctrl-0 = <&vcc5v0_otg_en>;
1612846c905SEmmanuel Vadot		regulator-name = "vcc5v0_otg3";
1622846c905SEmmanuel Vadot		regulator-always-on;
1632846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1642846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1652846c905SEmmanuel Vadot	};
1662846c905SEmmanuel Vadot
1672846c905SEmmanuel Vadot	vcc5v0_sys: regulator-vcc5v0-sys {
1682846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1692846c905SEmmanuel Vadot		regulator-name = "vcc5v0_sys";
1702846c905SEmmanuel Vadot		regulator-always-on;
1712846c905SEmmanuel Vadot		regulator-boot-on;
1722846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1732846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1742846c905SEmmanuel Vadot		vin-supply = <&vbus>;
1752846c905SEmmanuel Vadot	};
1762846c905SEmmanuel Vadot
1772846c905SEmmanuel Vadot	vcc5v0_usb: regulator-vcc5v0-usb {
1782846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1792846c905SEmmanuel Vadot		regulator-name = "vcc5v0_usb";
1802846c905SEmmanuel Vadot		regulator-always-on;
1812846c905SEmmanuel Vadot		regulator-boot-on;
1822846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1832846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1842846c905SEmmanuel Vadot		vin-supply = <&vbus>;
1852846c905SEmmanuel Vadot	};
1862846c905SEmmanuel Vadot
1872846c905SEmmanuel Vadot	vcc5v0_usb2b: regulator-vcc5v0-usb2b {
1882846c905SEmmanuel Vadot		compatible = "regulator-fixed";
1892846c905SEmmanuel Vadot		enable-active-high;
1902846c905SEmmanuel Vadot		gpio = <&gpio0 RK_PC4 GPIO_ACTIVE_HIGH>;
1912846c905SEmmanuel Vadot		pinctrl-names = "default";
1922846c905SEmmanuel Vadot		pinctrl-0 = <&vcc5v0_usb2b_en>;
1932846c905SEmmanuel Vadot		regulator-name = "vcc5v0_usb2b";
1942846c905SEmmanuel Vadot		regulator-always-on;
1952846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
1962846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
1972846c905SEmmanuel Vadot	};
1982846c905SEmmanuel Vadot
1992846c905SEmmanuel Vadot	vcc5v0_usb2t: regulator-vcc5v0-usb2t {
2002846c905SEmmanuel Vadot		compatible = "regulator-fixed";
2012846c905SEmmanuel Vadot		enable-active-high;
2022846c905SEmmanuel Vadot		gpios = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>;
2032846c905SEmmanuel Vadot		pinctrl-names = "default";
2042846c905SEmmanuel Vadot		pinctrl-0 = <&vcc5v0_usb2t_en>;
2052846c905SEmmanuel Vadot		regulator-name = "vcc5v0_usb2t";
2062846c905SEmmanuel Vadot		regulator-always-on;
2072846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
2082846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
2092846c905SEmmanuel Vadot	};
2102846c905SEmmanuel Vadot
2112846c905SEmmanuel Vadot	vcc_5v: regulator-vcc-5v {
2122846c905SEmmanuel Vadot		compatible = "regulator-fixed";
2132846c905SEmmanuel Vadot		regulator-name = "vcc_5v";
2142846c905SEmmanuel Vadot		regulator-always-on;
2152846c905SEmmanuel Vadot		regulator-boot-on;
2162846c905SEmmanuel Vadot		regulator-min-microvolt = <5000000>;
2172846c905SEmmanuel Vadot		regulator-max-microvolt = <5000000>;
2182846c905SEmmanuel Vadot		vin-supply = <&vcc12v_dcin>;
2192846c905SEmmanuel Vadot	};
2202846c905SEmmanuel Vadot
2212846c905SEmmanuel Vadot	vcc_sd: regulator-vcc-sd {
2222846c905SEmmanuel Vadot		compatible = "regulator-fixed";
2232846c905SEmmanuel Vadot		regulator-max-microvolt = <3300000>;
2242846c905SEmmanuel Vadot		regulator-min-microvolt = <3300000>;
2252846c905SEmmanuel Vadot		regulator-name = "vcc_sd";
2262846c905SEmmanuel Vadot		vin-supply = <&vcc3v3_sys>;
2272846c905SEmmanuel Vadot	};
2282846c905SEmmanuel Vadot};
2292846c905SEmmanuel Vadot
2302846c905SEmmanuel Vadot&combphy1 {
2312846c905SEmmanuel Vadot	status = "okay";
2322846c905SEmmanuel Vadot};
2332846c905SEmmanuel Vadot
2342846c905SEmmanuel Vadot&combphy2 {
2352846c905SEmmanuel Vadot	status = "okay";
2362846c905SEmmanuel Vadot};
2372846c905SEmmanuel Vadot
2382846c905SEmmanuel Vadot&cpu0 {
2392846c905SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
2402846c905SEmmanuel Vadot};
2412846c905SEmmanuel Vadot
2422846c905SEmmanuel Vadot&cpu1 {
2432846c905SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
2442846c905SEmmanuel Vadot};
2452846c905SEmmanuel Vadot
2462846c905SEmmanuel Vadot&cpu2 {
2472846c905SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
2482846c905SEmmanuel Vadot};
2492846c905SEmmanuel Vadot
2502846c905SEmmanuel Vadot&cpu3 {
2512846c905SEmmanuel Vadot	cpu-supply = <&vdd_cpu>;
2522846c905SEmmanuel Vadot};
2532846c905SEmmanuel Vadot
2542846c905SEmmanuel Vadot&gmac1 {
2552846c905SEmmanuel Vadot	assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>;
2562846c905SEmmanuel Vadot	assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>, <&cru CLK_MAC1_2TOP>;
2572846c905SEmmanuel Vadot	assigned-clock-rates = <0>, <125000000>;
2582846c905SEmmanuel Vadot	clock_in_out = "input";
2592846c905SEmmanuel Vadot	phy-handle = <&rgmii_phy0>;
2602846c905SEmmanuel Vadot	phy-mode = "rgmii-id";
2612846c905SEmmanuel Vadot	pinctrl-names = "default";
2622846c905SEmmanuel Vadot	pinctrl-0 = <&gmac1m0_miim
2632846c905SEmmanuel Vadot			&gmac1m0_tx_bus2
2642846c905SEmmanuel Vadot			&gmac1m0_rx_bus2
2652846c905SEmmanuel Vadot			&gmac1m0_rgmii_clk
2662846c905SEmmanuel Vadot			&gmac1m0_clkinout
2672846c905SEmmanuel Vadot			&gmac1m0_rgmii_bus>;
2682846c905SEmmanuel Vadot	status = "okay";
2692846c905SEmmanuel Vadot};
2702846c905SEmmanuel Vadot
2712846c905SEmmanuel Vadot&mdio1 {
2722846c905SEmmanuel Vadot	rgmii_phy0: phy@0 {
2732846c905SEmmanuel Vadot		compatible = "ethernet-phy-ieee802.3-c22";
2742846c905SEmmanuel Vadot		reset-delay-us = <20000>;
2752846c905SEmmanuel Vadot		reset-gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_LOW>;
2762846c905SEmmanuel Vadot		reset-post-delay-us = <100000>;
2772846c905SEmmanuel Vadot		reg = <0x0>;
2782846c905SEmmanuel Vadot	};
2792846c905SEmmanuel Vadot};
2802846c905SEmmanuel Vadot
2812846c905SEmmanuel Vadot&gpu {
2822846c905SEmmanuel Vadot	mali-supply = <&vdd_gpu>;
2832846c905SEmmanuel Vadot	status = "okay";
2842846c905SEmmanuel Vadot};
2852846c905SEmmanuel Vadot
2862846c905SEmmanuel Vadot&hdmi {
2872846c905SEmmanuel Vadot	avdd-0v9-supply = <&vdda0v9_image>;
2882846c905SEmmanuel Vadot	avdd-1v8-supply = <&vcca1v8_image>;
2892846c905SEmmanuel Vadot	status = "okay";
2902846c905SEmmanuel Vadot};
2912846c905SEmmanuel Vadot
2922846c905SEmmanuel Vadot&hdmi_in {
2932846c905SEmmanuel Vadot	hdmi_in_vp0: endpoint {
2942846c905SEmmanuel Vadot		remote-endpoint = <&vp0_out_hdmi>;
2952846c905SEmmanuel Vadot	};
2962846c905SEmmanuel Vadot};
2972846c905SEmmanuel Vadot
2982846c905SEmmanuel Vadot&hdmi_out {
2992846c905SEmmanuel Vadot	hdmi_out_con: endpoint {
3002846c905SEmmanuel Vadot		remote-endpoint = <&hdmi_con_in>;
3012846c905SEmmanuel Vadot	};
3022846c905SEmmanuel Vadot};
3032846c905SEmmanuel Vadot
3042846c905SEmmanuel Vadot&hdmi_sound {
3052846c905SEmmanuel Vadot	status = "okay";
3062846c905SEmmanuel Vadot};
3072846c905SEmmanuel Vadot
3082846c905SEmmanuel Vadot&i2c0 {
3092846c905SEmmanuel Vadot	status = "okay";
3102846c905SEmmanuel Vadot
3112846c905SEmmanuel Vadot	vdd_cpu: regulator@1c {
3122846c905SEmmanuel Vadot		compatible = "tcs,tcs4525";
3132846c905SEmmanuel Vadot		reg = <0x1c>;
3142846c905SEmmanuel Vadot		regulator-name = "vdd_cpu";
3152846c905SEmmanuel Vadot		regulator-min-microvolt = <712500>;
3162846c905SEmmanuel Vadot		regulator-max-microvolt = <1390000>;
3172846c905SEmmanuel Vadot		regulator-initial-mode = <1>;
3182846c905SEmmanuel Vadot		regulator-ramp-delay = <2300>;
3192846c905SEmmanuel Vadot		regulator-boot-on;
3202846c905SEmmanuel Vadot		regulator-always-on;
3212846c905SEmmanuel Vadot		vin-supply = <&vcc5v0_sys>;
3222846c905SEmmanuel Vadot		fcs,suspend-voltage-selector = <1>;
3232846c905SEmmanuel Vadot
3242846c905SEmmanuel Vadot		regulator-state-mem {
3252846c905SEmmanuel Vadot			regulator-off-in-suspend;
3262846c905SEmmanuel Vadot		};
3272846c905SEmmanuel Vadot	};
3282846c905SEmmanuel Vadot
3292846c905SEmmanuel Vadot	rk809: pmic@20 {
3302846c905SEmmanuel Vadot		compatible = "rockchip,rk809";
3312846c905SEmmanuel Vadot		reg = <0x20>;
3322846c905SEmmanuel Vadot		interrupt-parent = <&gpio0>;
3332846c905SEmmanuel Vadot		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
3342846c905SEmmanuel Vadot		assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
3352846c905SEmmanuel Vadot		assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
3362846c905SEmmanuel Vadot		#clock-cells = <1>;
3372846c905SEmmanuel Vadot		clock-names = "mclk";
3382846c905SEmmanuel Vadot		clocks = <&cru I2S1_MCLKOUT_TX>;
3392846c905SEmmanuel Vadot		pinctrl-names = "default", "pmic-sleep",
3402846c905SEmmanuel Vadot				"pmic-power-off", "pmic-reset";
3412846c905SEmmanuel Vadot		pinctrl-0 = <&pmic_int>, <&i2s1m0_mclk>;
3422846c905SEmmanuel Vadot		#sound-dai-cells = <0>;
3432846c905SEmmanuel Vadot		system-power-controller;
3442846c905SEmmanuel Vadot		wakeup-source;
3452846c905SEmmanuel Vadot
3462846c905SEmmanuel Vadot		vcc1-supply = <&vcc3v3_sys>;
3472846c905SEmmanuel Vadot		vcc2-supply = <&vcc3v3_sys>;
3482846c905SEmmanuel Vadot		vcc3-supply = <&vcc3v3_sys>;
3492846c905SEmmanuel Vadot		vcc4-supply = <&vcc3v3_sys>;
3502846c905SEmmanuel Vadot		vcc5-supply = <&vcc3v3_sys>;
3512846c905SEmmanuel Vadot		vcc6-supply = <&vcc3v3_sys>;
3522846c905SEmmanuel Vadot		vcc7-supply = <&vcc3v3_sys>;
3532846c905SEmmanuel Vadot		vcc8-supply = <&vcc3v3_sys>;
3542846c905SEmmanuel Vadot		vcc9-supply = <&vcc3v3_sys>;
3552846c905SEmmanuel Vadot
3562846c905SEmmanuel Vadot		regulators {
3572846c905SEmmanuel Vadot			vdd_logic: DCDC_REG1 {
3582846c905SEmmanuel Vadot				regulator-always-on;
3592846c905SEmmanuel Vadot				regulator-boot-on;
3602846c905SEmmanuel Vadot				regulator-min-microvolt = <500000>;
3612846c905SEmmanuel Vadot				regulator-max-microvolt = <1350000>;
3622846c905SEmmanuel Vadot				regulator-ramp-delay = <6001>;
3632846c905SEmmanuel Vadot				regulator-initial-mode = <0x2>;
3642846c905SEmmanuel Vadot				regulator-name = "vdd_logic";
3652846c905SEmmanuel Vadot
3662846c905SEmmanuel Vadot				regulator-state-mem {
3672846c905SEmmanuel Vadot					regulator-off-in-suspend;
3682846c905SEmmanuel Vadot				};
3692846c905SEmmanuel Vadot			};
3702846c905SEmmanuel Vadot
3712846c905SEmmanuel Vadot			vdd_gpu: DCDC_REG2 {
3722846c905SEmmanuel Vadot				regulator-always-on;
3732846c905SEmmanuel Vadot				regulator-boot-on;
3742846c905SEmmanuel Vadot				regulator-min-microvolt = <500000>;
3752846c905SEmmanuel Vadot				regulator-max-microvolt = <1350000>;
3762846c905SEmmanuel Vadot				regulator-ramp-delay = <6001>;
3772846c905SEmmanuel Vadot				regulator-initial-mode = <0x2>;
3782846c905SEmmanuel Vadot				regulator-name = "vdd_gpu";
3792846c905SEmmanuel Vadot
3802846c905SEmmanuel Vadot				regulator-state-mem {
3812846c905SEmmanuel Vadot					regulator-off-in-suspend;
3822846c905SEmmanuel Vadot				};
3832846c905SEmmanuel Vadot			};
3842846c905SEmmanuel Vadot
3852846c905SEmmanuel Vadot			vcc_ddr: DCDC_REG3 {
3862846c905SEmmanuel Vadot				regulator-always-on;
3872846c905SEmmanuel Vadot				regulator-boot-on;
3882846c905SEmmanuel Vadot				regulator-initial-mode = <0x2>;
3892846c905SEmmanuel Vadot				regulator-name = "vcc_ddr";
3902846c905SEmmanuel Vadot
3912846c905SEmmanuel Vadot				regulator-state-mem {
3922846c905SEmmanuel Vadot					regulator-on-in-suspend;
3932846c905SEmmanuel Vadot				};
3942846c905SEmmanuel Vadot			};
3952846c905SEmmanuel Vadot
3962846c905SEmmanuel Vadot			vdd_npu: DCDC_REG4 {
3972846c905SEmmanuel Vadot				regulator-always-on;
3982846c905SEmmanuel Vadot				regulator-boot-on;
3992846c905SEmmanuel Vadot				regulator-min-microvolt = <500000>;
4002846c905SEmmanuel Vadot				regulator-max-microvolt = <1350000>;
4012846c905SEmmanuel Vadot				regulator-ramp-delay = <6001>;
4022846c905SEmmanuel Vadot				regulator-initial-mode = <0x2>;
4032846c905SEmmanuel Vadot				regulator-name = "vdd_npu";
4042846c905SEmmanuel Vadot
4052846c905SEmmanuel Vadot				regulator-state-mem {
4062846c905SEmmanuel Vadot					regulator-off-in-suspend;
4072846c905SEmmanuel Vadot				};
4082846c905SEmmanuel Vadot			};
4092846c905SEmmanuel Vadot
4102846c905SEmmanuel Vadot			vdda0v9_image: LDO_REG1 {
4112846c905SEmmanuel Vadot				regulator-boot-on;
4122846c905SEmmanuel Vadot				regulator-always-on;
4132846c905SEmmanuel Vadot				regulator-min-microvolt = <900000>;
4142846c905SEmmanuel Vadot				regulator-max-microvolt = <900000>;
4152846c905SEmmanuel Vadot				regulator-name = "vdda0v9_image";
4162846c905SEmmanuel Vadot
4172846c905SEmmanuel Vadot				regulator-state-mem {
4182846c905SEmmanuel Vadot					regulator-off-in-suspend;
4192846c905SEmmanuel Vadot				};
4202846c905SEmmanuel Vadot			};
4212846c905SEmmanuel Vadot
4222846c905SEmmanuel Vadot			vdda_0v9: LDO_REG2 {
4232846c905SEmmanuel Vadot				regulator-always-on;
4242846c905SEmmanuel Vadot				regulator-boot-on;
4252846c905SEmmanuel Vadot				regulator-min-microvolt = <900000>;
4262846c905SEmmanuel Vadot				regulator-max-microvolt = <900000>;
4272846c905SEmmanuel Vadot				regulator-name = "vdda_0v9";
4282846c905SEmmanuel Vadot
4292846c905SEmmanuel Vadot				regulator-state-mem {
4302846c905SEmmanuel Vadot					regulator-off-in-suspend;
4312846c905SEmmanuel Vadot				};
4322846c905SEmmanuel Vadot			};
4332846c905SEmmanuel Vadot
4342846c905SEmmanuel Vadot			vdda0v9_pmu: LDO_REG3 {
4352846c905SEmmanuel Vadot				regulator-always-on;
4362846c905SEmmanuel Vadot				regulator-boot-on;
4372846c905SEmmanuel Vadot				regulator-min-microvolt = <900000>;
4382846c905SEmmanuel Vadot				regulator-max-microvolt = <900000>;
4392846c905SEmmanuel Vadot				regulator-name = "vdda0v9_pmu";
4402846c905SEmmanuel Vadot
4412846c905SEmmanuel Vadot				regulator-state-mem {
4422846c905SEmmanuel Vadot					regulator-on-in-suspend;
4432846c905SEmmanuel Vadot					regulator-suspend-microvolt = <900000>;
4442846c905SEmmanuel Vadot				};
4452846c905SEmmanuel Vadot			};
4462846c905SEmmanuel Vadot
4472846c905SEmmanuel Vadot			vccio_acodec: LDO_REG4 {
4482846c905SEmmanuel Vadot				regulator-always-on;
4492846c905SEmmanuel Vadot				regulator-boot-on;
4502846c905SEmmanuel Vadot				regulator-min-microvolt = <3000000>;
4512846c905SEmmanuel Vadot				regulator-max-microvolt = <3000000>;
4522846c905SEmmanuel Vadot				regulator-name = "vccio_acodec";
4532846c905SEmmanuel Vadot
4542846c905SEmmanuel Vadot				regulator-state-mem {
4552846c905SEmmanuel Vadot					regulator-off-in-suspend;
4562846c905SEmmanuel Vadot				};
4572846c905SEmmanuel Vadot			};
4582846c905SEmmanuel Vadot
4592846c905SEmmanuel Vadot			vccio_sd: LDO_REG5 {
4602846c905SEmmanuel Vadot				regulator-always-on;
4612846c905SEmmanuel Vadot				regulator-boot-on;
4622846c905SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
4632846c905SEmmanuel Vadot				regulator-max-microvolt = <3300000>;
4642846c905SEmmanuel Vadot				regulator-name = "vccio_sd";
4652846c905SEmmanuel Vadot
4662846c905SEmmanuel Vadot				regulator-state-mem {
4672846c905SEmmanuel Vadot					regulator-off-in-suspend;
4682846c905SEmmanuel Vadot				};
4692846c905SEmmanuel Vadot			};
4702846c905SEmmanuel Vadot
4712846c905SEmmanuel Vadot			vcc3v3_pmu: LDO_REG6 {
4722846c905SEmmanuel Vadot				regulator-always-on;
4732846c905SEmmanuel Vadot				regulator-boot-on;
4742846c905SEmmanuel Vadot				regulator-min-microvolt = <3300000>;
4752846c905SEmmanuel Vadot				regulator-max-microvolt = <3300000>;
4762846c905SEmmanuel Vadot				regulator-name = "vcc3v3_pmu";
4772846c905SEmmanuel Vadot
4782846c905SEmmanuel Vadot				regulator-state-mem {
4792846c905SEmmanuel Vadot					regulator-on-in-suspend;
4802846c905SEmmanuel Vadot					regulator-suspend-microvolt = <3300000>;
4812846c905SEmmanuel Vadot				};
4822846c905SEmmanuel Vadot			};
4832846c905SEmmanuel Vadot
4842846c905SEmmanuel Vadot			vcca_1v8: LDO_REG7 {
4852846c905SEmmanuel Vadot				regulator-always-on;
4862846c905SEmmanuel Vadot				regulator-boot-on;
4872846c905SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
4882846c905SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
4892846c905SEmmanuel Vadot				regulator-name = "vcca_1v8";
4902846c905SEmmanuel Vadot
4912846c905SEmmanuel Vadot				regulator-state-mem {
4922846c905SEmmanuel Vadot					regulator-off-in-suspend;
4932846c905SEmmanuel Vadot				};
4942846c905SEmmanuel Vadot			};
4952846c905SEmmanuel Vadot
4962846c905SEmmanuel Vadot			vcca1v8_pmu: LDO_REG8 {
4972846c905SEmmanuel Vadot				regulator-always-on;
4982846c905SEmmanuel Vadot				regulator-boot-on;
4992846c905SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
5002846c905SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
5012846c905SEmmanuel Vadot				regulator-name = "vcca1v8_pmu";
5022846c905SEmmanuel Vadot
5032846c905SEmmanuel Vadot				regulator-state-mem {
5042846c905SEmmanuel Vadot					regulator-on-in-suspend;
5052846c905SEmmanuel Vadot					regulator-suspend-microvolt = <1800000>;
5062846c905SEmmanuel Vadot				};
5072846c905SEmmanuel Vadot			};
5082846c905SEmmanuel Vadot
5092846c905SEmmanuel Vadot			vcca1v8_image: LDO_REG9 {
5102846c905SEmmanuel Vadot				regulator-always-on;
5112846c905SEmmanuel Vadot				regulator-boot-on;
5122846c905SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
5132846c905SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
5142846c905SEmmanuel Vadot				regulator-name = "vcca1v8_image";
5152846c905SEmmanuel Vadot
5162846c905SEmmanuel Vadot				regulator-state-mem {
5172846c905SEmmanuel Vadot					regulator-off-in-suspend;
5182846c905SEmmanuel Vadot				};
5192846c905SEmmanuel Vadot			};
5202846c905SEmmanuel Vadot
5212846c905SEmmanuel Vadot			vcc_1v8: DCDC_REG5 {
5222846c905SEmmanuel Vadot				regulator-always-on;
5232846c905SEmmanuel Vadot				regulator-boot-on;
5242846c905SEmmanuel Vadot				regulator-min-microvolt = <1800000>;
5252846c905SEmmanuel Vadot				regulator-max-microvolt = <1800000>;
5262846c905SEmmanuel Vadot				regulator-name = "vcc_1v8";
5272846c905SEmmanuel Vadot
5282846c905SEmmanuel Vadot				regulator-state-mem {
5292846c905SEmmanuel Vadot					regulator-off-in-suspend;
5302846c905SEmmanuel Vadot				};
5312846c905SEmmanuel Vadot			};
5322846c905SEmmanuel Vadot
5332846c905SEmmanuel Vadot			vcc_3v3: SWITCH_REG1 {
5342846c905SEmmanuel Vadot				regulator-always-on;
5352846c905SEmmanuel Vadot				regulator-boot-on;
5362846c905SEmmanuel Vadot				regulator-name = "vcc_3v3";
5372846c905SEmmanuel Vadot
5382846c905SEmmanuel Vadot				regulator-state-mem {
5392846c905SEmmanuel Vadot					regulator-off-in-suspend;
5402846c905SEmmanuel Vadot				};
5412846c905SEmmanuel Vadot			};
5422846c905SEmmanuel Vadot
5432846c905SEmmanuel Vadot			vcc3v3_sd: SWITCH_REG2 {
5442846c905SEmmanuel Vadot				regulator-always-on;
5452846c905SEmmanuel Vadot				regulator-boot-on;
5462846c905SEmmanuel Vadot				regulator-name = "vcc3v3_sd";
5472846c905SEmmanuel Vadot
5482846c905SEmmanuel Vadot				regulator-state-mem {
5492846c905SEmmanuel Vadot					regulator-off-in-suspend;
5502846c905SEmmanuel Vadot				};
5512846c905SEmmanuel Vadot			};
5522846c905SEmmanuel Vadot		};
5532846c905SEmmanuel Vadot
5542846c905SEmmanuel Vadot		codec {
5552846c905SEmmanuel Vadot			rockchip,mic-in-differential;
5562846c905SEmmanuel Vadot		};
5572846c905SEmmanuel Vadot	};
5582846c905SEmmanuel Vadot};
5592846c905SEmmanuel Vadot
5602846c905SEmmanuel Vadot&i2c2 {
5612846c905SEmmanuel Vadot	pinctrl-0 = <&i2c2m1_xfer>;
5622846c905SEmmanuel Vadot};
5632846c905SEmmanuel Vadot
5642846c905SEmmanuel Vadot&i2c3 {
5652846c905SEmmanuel Vadot	status = "okay";
5662846c905SEmmanuel Vadot
5672846c905SEmmanuel Vadot	tft_tp: touchscreen@48 {
5682846c905SEmmanuel Vadot		compatible = "ti,tsc2007";
5692846c905SEmmanuel Vadot		reg = <0x48>;
5702846c905SEmmanuel Vadot		status = "okay";
5712846c905SEmmanuel Vadot		ti,x-plate-ohms = <660>;
5722846c905SEmmanuel Vadot		ti,rt-thr = <3000>;
5732846c905SEmmanuel Vadot		ti,fuzzx = <32>;
5742846c905SEmmanuel Vadot		ti,fuzzy = <16>;
5752846c905SEmmanuel Vadot	};
5762846c905SEmmanuel Vadot};
5772846c905SEmmanuel Vadot
5782846c905SEmmanuel Vadot&i2s0_8ch {
5792846c905SEmmanuel Vadot	status = "okay";
5802846c905SEmmanuel Vadot};
5812846c905SEmmanuel Vadot
5822846c905SEmmanuel Vadot&i2s1_8ch {
5832846c905SEmmanuel Vadot	pinctrl-names = "default";
5842846c905SEmmanuel Vadot	pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_lrcktx &i2s1m0_sdi0 &i2s1m0_sdo0>;
5852846c905SEmmanuel Vadot	rockchip,trcm-sync-tx-only;
5862846c905SEmmanuel Vadot	status = "okay";
5872846c905SEmmanuel Vadot};
5882846c905SEmmanuel Vadot
5892846c905SEmmanuel Vadot&spi1 {
5902846c905SEmmanuel Vadot	pinctrl-names = "default";
5912846c905SEmmanuel Vadot	pinctrl-0 = <&spi1m1_cs0 &spi1m1_pins>;
5922846c905SEmmanuel Vadot
5932846c905SEmmanuel Vadot	can_mcp2515: can@0 {
5942846c905SEmmanuel Vadot		compatible = "microchip,mcp2515";
5952846c905SEmmanuel Vadot		reg = <0x00>;
5962846c905SEmmanuel Vadot		clocks = <&can_mcp2515_osc>;
5972846c905SEmmanuel Vadot		interrupt-parent = <&gpio4>;
5982846c905SEmmanuel Vadot		interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
5992846c905SEmmanuel Vadot		pinctrl-names = "default";
6002846c905SEmmanuel Vadot		pinctrl-0 = <&mcp2515_int_pin>;
6012846c905SEmmanuel Vadot		spi-max-frequency = <10000000>;
6022846c905SEmmanuel Vadot		vdd-supply = <&vcc3v3_sys>;
6032846c905SEmmanuel Vadot		xceiver-supply = <&vcc3v3_sys>;
6042846c905SEmmanuel Vadot	};
6052846c905SEmmanuel Vadot};
6062846c905SEmmanuel Vadot
6072846c905SEmmanuel Vadot&spi3 {
6082846c905SEmmanuel Vadot	pinctrl-names = "default";
6092846c905SEmmanuel Vadot	pinctrl-0 = <&spi3m1_cs0 &spi3m1_pins>;
6102846c905SEmmanuel Vadot};
6112846c905SEmmanuel Vadot
6122846c905SEmmanuel Vadot&pcie2x1 {
6132846c905SEmmanuel Vadot	pinctrl-names = "default";
6142846c905SEmmanuel Vadot	pinctrl-0 = <&pcie_reset_h>;
6152846c905SEmmanuel Vadot	reset-gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;
6162846c905SEmmanuel Vadot	vpcie3v3-supply = <&vcc3v3_pcie>;
6172846c905SEmmanuel Vadot	status = "okay";
6182846c905SEmmanuel Vadot};
6192846c905SEmmanuel Vadot
6202846c905SEmmanuel Vadot&pinctrl {
6212846c905SEmmanuel Vadot	bt {
6222846c905SEmmanuel Vadot		bt_enable: bt-enable-h {
6232846c905SEmmanuel Vadot			rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_down>;
6242846c905SEmmanuel Vadot		};
6252846c905SEmmanuel Vadot
6262846c905SEmmanuel Vadot		bt_host_wake: bt-host-wake-l {
6272846c905SEmmanuel Vadot			rockchip,pins = <2 RK_PC1 RK_FUNC_GPIO &pcfg_pull_down>;
6282846c905SEmmanuel Vadot		};
6292846c905SEmmanuel Vadot
6302846c905SEmmanuel Vadot		bt_wake: bt-wake-l {
6312846c905SEmmanuel Vadot			rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
6322846c905SEmmanuel Vadot		};
6332846c905SEmmanuel Vadot	};
6342846c905SEmmanuel Vadot
6352846c905SEmmanuel Vadot	pcie {
6362846c905SEmmanuel Vadot		pcie_drv: pcie-drv {
6372846c905SEmmanuel Vadot			rockchip,pins = <4 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
6382846c905SEmmanuel Vadot		};
6392846c905SEmmanuel Vadot
6402846c905SEmmanuel Vadot		pcie_reset_h: pcie-reset-h {
6412846c905SEmmanuel Vadot			rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
6422846c905SEmmanuel Vadot		};
6432846c905SEmmanuel Vadot	};
6442846c905SEmmanuel Vadot
6452846c905SEmmanuel Vadot	pmic {
6462846c905SEmmanuel Vadot		pmic_int: pmic-int {
6472846c905SEmmanuel Vadot			rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
6482846c905SEmmanuel Vadot		};
6492846c905SEmmanuel Vadot	};
6502846c905SEmmanuel Vadot
6512846c905SEmmanuel Vadot	sdio-pwrseq {
6522846c905SEmmanuel Vadot		wifi_enable_h: wifi-enable-h {
6532846c905SEmmanuel Vadot			rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
6542846c905SEmmanuel Vadot		};
6552846c905SEmmanuel Vadot
6562846c905SEmmanuel Vadot		wifi_host_wake: wifi-host-wake-l {
6572846c905SEmmanuel Vadot			rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_down>;
6582846c905SEmmanuel Vadot		};
6592846c905SEmmanuel Vadot	};
6602846c905SEmmanuel Vadot
6612846c905SEmmanuel Vadot	usb {
6622846c905SEmmanuel Vadot		vcc5v0_host_en: vcc5v0-host-en {
6632846c905SEmmanuel Vadot			rockchip,pins = <0 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>;
6642846c905SEmmanuel Vadot		};
6652846c905SEmmanuel Vadot
6662846c905SEmmanuel Vadot		vcc5v0_otg_en: vcc5v0-otg-en {
6672846c905SEmmanuel Vadot			rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
6682846c905SEmmanuel Vadot		};
6692846c905SEmmanuel Vadot
6702846c905SEmmanuel Vadot		vcc5v0_usb2t_en: vcc5v0-usb2t-en {
6712846c905SEmmanuel Vadot			rockchip,pins = <3 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
6722846c905SEmmanuel Vadot		};
6732846c905SEmmanuel Vadot
6742846c905SEmmanuel Vadot		vcc5v0_usb2b_en: vcc5v0-usb2b-en {
6752846c905SEmmanuel Vadot			rockchip,pins = <4 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
6762846c905SEmmanuel Vadot		};
6772846c905SEmmanuel Vadot	};
6782846c905SEmmanuel Vadot
6792846c905SEmmanuel Vadot	work-led {
6802846c905SEmmanuel Vadot		heartbeat_led: led-heartbeat {
6812846c905SEmmanuel Vadot			rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
6822846c905SEmmanuel Vadot		};
6832846c905SEmmanuel Vadot
6842846c905SEmmanuel Vadot		blue_led: led-blue {
6852846c905SEmmanuel Vadot			rockchip,pins = <4 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
6862846c905SEmmanuel Vadot		};
6872846c905SEmmanuel Vadot	};
6882846c905SEmmanuel Vadot
6892846c905SEmmanuel Vadot	mcp2515 {
6902846c905SEmmanuel Vadot		mcp2515_int_pin: mcp2515-int-pin {
6912846c905SEmmanuel Vadot			rockchip,pins = <4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
6922846c905SEmmanuel Vadot		};
6932846c905SEmmanuel Vadot	};
6942846c905SEmmanuel Vadot};
6952846c905SEmmanuel Vadot
6962846c905SEmmanuel Vadot&pmu_io_domains {
6972846c905SEmmanuel Vadot	pmuio1-supply = <&vcc3v3_pmu>;
6982846c905SEmmanuel Vadot	pmuio2-supply = <&vcc3v3_pmu>;
6992846c905SEmmanuel Vadot	vccio1-supply = <&vcc_3v3>;
7002846c905SEmmanuel Vadot	vccio2-supply = <&vcc_1v8>;
7012846c905SEmmanuel Vadot	vccio3-supply = <&vccio_sd>;
7022846c905SEmmanuel Vadot	vccio4-supply = <&vcc_1v8>;
7032846c905SEmmanuel Vadot	vccio5-supply = <&vcc_3v3>;
7042846c905SEmmanuel Vadot	vccio6-supply = <&vcc_3v3>;
7052846c905SEmmanuel Vadot	vccio7-supply = <&vcc_3v3>;
7062846c905SEmmanuel Vadot	status = "okay";
7072846c905SEmmanuel Vadot};
7082846c905SEmmanuel Vadot
7092846c905SEmmanuel Vadot&pwm0 {
7102846c905SEmmanuel Vadot	pinctrl-names = "default";
7112846c905SEmmanuel Vadot	pinctrl-0 = <&pwm0m1_pins>;
7122846c905SEmmanuel Vadot};
7132846c905SEmmanuel Vadot
7142846c905SEmmanuel Vadot&pwm12 {
7152846c905SEmmanuel Vadot	pinctrl-names = "default";
7162846c905SEmmanuel Vadot	pinctrl-0 = <&pwm12m1_pins>;
7172846c905SEmmanuel Vadot};
7182846c905SEmmanuel Vadot
7192846c905SEmmanuel Vadot&pwm13 {
7202846c905SEmmanuel Vadot	pinctrl-names = "default";
7212846c905SEmmanuel Vadot	pinctrl-0 = <&pwm13m1_pins>;
7222846c905SEmmanuel Vadot};
7232846c905SEmmanuel Vadot
7242846c905SEmmanuel Vadot&pwm14 {
7252846c905SEmmanuel Vadot	pinctrl-names = "default";
7262846c905SEmmanuel Vadot	pinctrl-0 = <&pwm14m1_pins>;
7272846c905SEmmanuel Vadot};
7282846c905SEmmanuel Vadot
7292846c905SEmmanuel Vadot&pwm15 {
7302846c905SEmmanuel Vadot	pinctrl-names = "default";
7312846c905SEmmanuel Vadot	pinctrl-0 = <&pwm15m1_pins>;
7322846c905SEmmanuel Vadot};
7332846c905SEmmanuel Vadot
7342846c905SEmmanuel Vadot&saradc {
7352846c905SEmmanuel Vadot	vref-supply = <&vcca_1v8>;
7362846c905SEmmanuel Vadot	status = "okay";
7372846c905SEmmanuel Vadot};
7382846c905SEmmanuel Vadot
7392846c905SEmmanuel Vadot&sdhci {
7402846c905SEmmanuel Vadot	bus-width = <8>;
7412846c905SEmmanuel Vadot	max-frequency = <200000000>;
7422846c905SEmmanuel Vadot	non-removable;
7432846c905SEmmanuel Vadot	pinctrl-names = "default";
7442846c905SEmmanuel Vadot	pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd>;
7452846c905SEmmanuel Vadot	status = "okay";
7462846c905SEmmanuel Vadot};
7472846c905SEmmanuel Vadot
7482846c905SEmmanuel Vadot&sdmmc0 {
7492846c905SEmmanuel Vadot	max-frequency = <150000000>;
7502846c905SEmmanuel Vadot	bus-width = <4>;
7512846c905SEmmanuel Vadot	cap-mmc-highspeed;
7522846c905SEmmanuel Vadot	cap-sd-highspeed;
7532846c905SEmmanuel Vadot	disable-wp;
7542846c905SEmmanuel Vadot	pinctrl-names = "default";
7552846c905SEmmanuel Vadot	pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
7562846c905SEmmanuel Vadot	vmmc-supply = <&vcc_sd>;
7572846c905SEmmanuel Vadot	vqmmc-supply = <&vccio_sd>;
7582846c905SEmmanuel Vadot	status = "okay";
7592846c905SEmmanuel Vadot};
7602846c905SEmmanuel Vadot
7612846c905SEmmanuel Vadot&sdmmc1 {
7622846c905SEmmanuel Vadot	/* WiFi & BT combo module AMPAK AP6256 */
7632846c905SEmmanuel Vadot	#address-cells = <1>;
7642846c905SEmmanuel Vadot	#size-cells = <0>;
7652846c905SEmmanuel Vadot	bus-width = <4>;
7662846c905SEmmanuel Vadot	cap-sd-highspeed;
7672846c905SEmmanuel Vadot	cap-sdio-irq;
7682846c905SEmmanuel Vadot	disable-wp;
7692846c905SEmmanuel Vadot	keep-power-in-suspend;
7702846c905SEmmanuel Vadot	max-frequency = <150000000>;
7712846c905SEmmanuel Vadot	mmc-pwrseq = <&sdio_pwrseq>;
7722846c905SEmmanuel Vadot	non-removable;
7732846c905SEmmanuel Vadot	pinctrl-names = "default";
7742846c905SEmmanuel Vadot	pinctrl-0 = <&sdmmc1_bus4 &sdmmc1_cmd &sdmmc1_clk>;
7752846c905SEmmanuel Vadot	rockchip,default-sample-phase = <90>;
7762846c905SEmmanuel Vadot	status = "okay";
7772846c905SEmmanuel Vadot
778*8ccc0d23SEmmanuel Vadot	wifi@1 {
7792846c905SEmmanuel Vadot		compatible = "brcm,bcm4329-fmac";
7802846c905SEmmanuel Vadot		reg = <1>;
7812846c905SEmmanuel Vadot		interrupt-parent = <&gpio2>;
7822846c905SEmmanuel Vadot		interrupts = <9 IRQ_TYPE_LEVEL_HIGH>;
7832846c905SEmmanuel Vadot		interrupt-names = "host-wake";
7842846c905SEmmanuel Vadot		pinctrl-names = "default";
7852846c905SEmmanuel Vadot		pinctrl-0 = <&wifi_host_wake>;
7862846c905SEmmanuel Vadot		brcm,drive-strength = <10>;
7872846c905SEmmanuel Vadot	};
7882846c905SEmmanuel Vadot};
7892846c905SEmmanuel Vadot
7902846c905SEmmanuel Vadot&sfc {
7912846c905SEmmanuel Vadot	#address-cells = <1>;
7922846c905SEmmanuel Vadot	#size-cells = <0>;
7932846c905SEmmanuel Vadot	status = "okay";
7942846c905SEmmanuel Vadot};
7952846c905SEmmanuel Vadot
7962846c905SEmmanuel Vadot&tsadc {
7972846c905SEmmanuel Vadot	status = "okay";
7982846c905SEmmanuel Vadot};
7992846c905SEmmanuel Vadot
8002846c905SEmmanuel Vadot&uart1 {
8012846c905SEmmanuel Vadot	dma-names = "tx","rx";
8022846c905SEmmanuel Vadot	pinctrl-names = "default";
8032846c905SEmmanuel Vadot	pinctrl-0 = <&uart1m0_xfer &uart1m0_ctsn &uart1m0_rtsn>;
8042846c905SEmmanuel Vadot	uart-has-rtscts;
8052846c905SEmmanuel Vadot	status = "okay";
8062846c905SEmmanuel Vadot
8072846c905SEmmanuel Vadot	bluetooth {
8082846c905SEmmanuel Vadot		compatible = "brcm,bcm4345c5";
8092846c905SEmmanuel Vadot		clocks = <&rk809 1>;
8102846c905SEmmanuel Vadot		clock-names = "lpo";
8112846c905SEmmanuel Vadot		device-wakeup-gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
8122846c905SEmmanuel Vadot		host-wakeup-gpios = <&gpio2 RK_PC1 GPIO_ACTIVE_HIGH>;
8132846c905SEmmanuel Vadot		shutdown-gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
8142846c905SEmmanuel Vadot		pinctrl-names = "default";
8152846c905SEmmanuel Vadot		pinctrl-0 = <&bt_host_wake &bt_wake &bt_enable>;
8162846c905SEmmanuel Vadot		vbat-supply = <&vcc3v3_sys>;
8172846c905SEmmanuel Vadot		vddio-supply = <&vcca1v8_pmu>;
8182846c905SEmmanuel Vadot	};
8192846c905SEmmanuel Vadot};
8202846c905SEmmanuel Vadot
8212846c905SEmmanuel Vadot&uart2 {
8222846c905SEmmanuel Vadot	status = "okay";
8232846c905SEmmanuel Vadot};
8242846c905SEmmanuel Vadot
8252846c905SEmmanuel Vadot&uart5 {
8262846c905SEmmanuel Vadot	pinctrl-names = "default";
8272846c905SEmmanuel Vadot	pinctrl-0 = <&uart5m1_xfer>;
8282846c905SEmmanuel Vadot};
8292846c905SEmmanuel Vadot
8302846c905SEmmanuel Vadot&uart7 {
8312846c905SEmmanuel Vadot	pinctrl-names = "default";
8322846c905SEmmanuel Vadot	pinctrl-0 = <&uart7m2_xfer>;
8332846c905SEmmanuel Vadot};
8342846c905SEmmanuel Vadot
8352846c905SEmmanuel Vadot&usb2phy0 {
8362846c905SEmmanuel Vadot	status = "okay";
8372846c905SEmmanuel Vadot};
8382846c905SEmmanuel Vadot
8392846c905SEmmanuel Vadot&usb2phy0_host {
8402846c905SEmmanuel Vadot	phy-supply = <&vcc5v0_host>;
8412846c905SEmmanuel Vadot	status = "okay";
8422846c905SEmmanuel Vadot};
8432846c905SEmmanuel Vadot
8442846c905SEmmanuel Vadot&usb2phy0_otg {
8452846c905SEmmanuel Vadot	phy-supply = <&vcc5v0_otg>;
8462846c905SEmmanuel Vadot	status = "okay";
8472846c905SEmmanuel Vadot};
8482846c905SEmmanuel Vadot
8492846c905SEmmanuel Vadot&usb2phy1 {
8502846c905SEmmanuel Vadot	status = "okay";
8512846c905SEmmanuel Vadot};
8522846c905SEmmanuel Vadot
8532846c905SEmmanuel Vadot&usb2phy1_host {
8542846c905SEmmanuel Vadot	phy-supply = <&vcc5v0_usb2t>;
8552846c905SEmmanuel Vadot	status = "okay";
8562846c905SEmmanuel Vadot};
8572846c905SEmmanuel Vadot
8582846c905SEmmanuel Vadot&usb2phy1_otg {
8592846c905SEmmanuel Vadot	phy-supply = <&vcc5v0_usb2b>;
8602846c905SEmmanuel Vadot	status = "okay";
8612846c905SEmmanuel Vadot};
8622846c905SEmmanuel Vadot
8632846c905SEmmanuel Vadot&usb_host0_ehci {
8642846c905SEmmanuel Vadot	status = "okay";
8652846c905SEmmanuel Vadot};
8662846c905SEmmanuel Vadot
8672846c905SEmmanuel Vadot&usb_host0_ohci {
8682846c905SEmmanuel Vadot	status = "okay";
8692846c905SEmmanuel Vadot};
8702846c905SEmmanuel Vadot
8712846c905SEmmanuel Vadot&usb_host0_xhci {
8722846c905SEmmanuel Vadot	dr_mode = "host";
8732846c905SEmmanuel Vadot	extcon = <&usb2phy0>;
8742846c905SEmmanuel Vadot	status = "okay";
8752846c905SEmmanuel Vadot};
8762846c905SEmmanuel Vadot
8772846c905SEmmanuel Vadot&usb_host1_ehci {
8782846c905SEmmanuel Vadot	status = "okay";
8792846c905SEmmanuel Vadot};
8802846c905SEmmanuel Vadot
8812846c905SEmmanuel Vadot&usb_host1_ohci {
8822846c905SEmmanuel Vadot	status = "okay";
8832846c905SEmmanuel Vadot};
8842846c905SEmmanuel Vadot
8852846c905SEmmanuel Vadot&usb_host1_xhci {
8862846c905SEmmanuel Vadot	status = "okay";
8872846c905SEmmanuel Vadot};
8882846c905SEmmanuel Vadot
8892846c905SEmmanuel Vadot&vop {
8902846c905SEmmanuel Vadot	assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
8912846c905SEmmanuel Vadot	assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
8922846c905SEmmanuel Vadot	status = "okay";
8932846c905SEmmanuel Vadot};
8942846c905SEmmanuel Vadot
8952846c905SEmmanuel Vadot&vop_mmu {
8962846c905SEmmanuel Vadot	status = "okay";
8972846c905SEmmanuel Vadot};
8982846c905SEmmanuel Vadot
8992846c905SEmmanuel Vadot&vp0 {
9002846c905SEmmanuel Vadot	vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
9012846c905SEmmanuel Vadot		reg = <ROCKCHIP_VOP2_EP_HDMI0>;
9022846c905SEmmanuel Vadot		remote-endpoint = <&hdmi_in_vp0>;
9032846c905SEmmanuel Vadot	};
9042846c905SEmmanuel Vadot};
905