14e50d217SPeter Geis// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
24e50d217SPeter Geis/*
34e50d217SPeter Geis * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
44e50d217SPeter Geis */
54e50d217SPeter Geis
64e50d217SPeter Geis#include <dt-bindings/clock/rk3568-cru.h>
74e50d217SPeter Geis#include <dt-bindings/interrupt-controller/arm-gic.h>
84e50d217SPeter Geis#include <dt-bindings/interrupt-controller/irq.h>
94e50d217SPeter Geis#include <dt-bindings/phy/phy.h>
104e50d217SPeter Geis#include <dt-bindings/pinctrl/rockchip.h>
114e50d217SPeter Geis#include <dt-bindings/power/rk3568-power.h>
124e50d217SPeter Geis#include <dt-bindings/soc/rockchip,boot-mode.h>
134e50d217SPeter Geis#include <dt-bindings/thermal/thermal.h>
144e50d217SPeter Geis
154e50d217SPeter Geis/ {
164e50d217SPeter Geis	interrupt-parent = <&gic>;
174e50d217SPeter Geis	#address-cells = <2>;
184e50d217SPeter Geis	#size-cells = <2>;
194e50d217SPeter Geis
204e50d217SPeter Geis	aliases {
214e50d217SPeter Geis		gpio0 = &gpio0;
224e50d217SPeter Geis		gpio1 = &gpio1;
234e50d217SPeter Geis		gpio2 = &gpio2;
244e50d217SPeter Geis		gpio3 = &gpio3;
254e50d217SPeter Geis		gpio4 = &gpio4;
264e50d217SPeter Geis		i2c0 = &i2c0;
274e50d217SPeter Geis		i2c1 = &i2c1;
284e50d217SPeter Geis		i2c2 = &i2c2;
294e50d217SPeter Geis		i2c3 = &i2c3;
304e50d217SPeter Geis		i2c4 = &i2c4;
314e50d217SPeter Geis		i2c5 = &i2c5;
324e50d217SPeter Geis		serial0 = &uart0;
334e50d217SPeter Geis		serial1 = &uart1;
344e50d217SPeter Geis		serial2 = &uart2;
354e50d217SPeter Geis		serial3 = &uart3;
364e50d217SPeter Geis		serial4 = &uart4;
374e50d217SPeter Geis		serial5 = &uart5;
384e50d217SPeter Geis		serial6 = &uart6;
394e50d217SPeter Geis		serial7 = &uart7;
404e50d217SPeter Geis		serial8 = &uart8;
414e50d217SPeter Geis		serial9 = &uart9;
42aaa552d8SNicolas Frattaroli		spi0 = &spi0;
43aaa552d8SNicolas Frattaroli		spi1 = &spi1;
44aaa552d8SNicolas Frattaroli		spi2 = &spi2;
45aaa552d8SNicolas Frattaroli		spi3 = &spi3;
464e50d217SPeter Geis	};
474e50d217SPeter Geis
484e50d217SPeter Geis	cpus {
494e50d217SPeter Geis		#address-cells = <2>;
504e50d217SPeter Geis		#size-cells = <0>;
514e50d217SPeter Geis
524e50d217SPeter Geis		cpu0: cpu@0 {
534e50d217SPeter Geis			device_type = "cpu";
544e50d217SPeter Geis			compatible = "arm,cortex-a55";
554e50d217SPeter Geis			reg = <0x0 0x0>;
564e50d217SPeter Geis			clocks = <&scmi_clk 0>;
571330875dSPeter Geis			#cooling-cells = <2>;
584e50d217SPeter Geis			enable-method = "psci";
594e50d217SPeter Geis			operating-points-v2 = <&cpu0_opp_table>;
604e50d217SPeter Geis		};
614e50d217SPeter Geis
624e50d217SPeter Geis		cpu1: cpu@100 {
634e50d217SPeter Geis			device_type = "cpu";
644e50d217SPeter Geis			compatible = "arm,cortex-a55";
654e50d217SPeter Geis			reg = <0x0 0x100>;
661330875dSPeter Geis			#cooling-cells = <2>;
674e50d217SPeter Geis			enable-method = "psci";
684e50d217SPeter Geis			operating-points-v2 = <&cpu0_opp_table>;
694e50d217SPeter Geis		};
704e50d217SPeter Geis
714e50d217SPeter Geis		cpu2: cpu@200 {
724e50d217SPeter Geis			device_type = "cpu";
734e50d217SPeter Geis			compatible = "arm,cortex-a55";
744e50d217SPeter Geis			reg = <0x0 0x200>;
751330875dSPeter Geis			#cooling-cells = <2>;
764e50d217SPeter Geis			enable-method = "psci";
774e50d217SPeter Geis			operating-points-v2 = <&cpu0_opp_table>;
784e50d217SPeter Geis		};
794e50d217SPeter Geis
804e50d217SPeter Geis		cpu3: cpu@300 {
814e50d217SPeter Geis			device_type = "cpu";
824e50d217SPeter Geis			compatible = "arm,cortex-a55";
834e50d217SPeter Geis			reg = <0x0 0x300>;
841330875dSPeter Geis			#cooling-cells = <2>;
854e50d217SPeter Geis			enable-method = "psci";
864e50d217SPeter Geis			operating-points-v2 = <&cpu0_opp_table>;
874e50d217SPeter Geis		};
884e50d217SPeter Geis	};
894e50d217SPeter Geis
90a30f3d90SKrzysztof Kozlowski	cpu0_opp_table: opp-table-0 {
914e50d217SPeter Geis		compatible = "operating-points-v2";
924e50d217SPeter Geis		opp-shared;
934e50d217SPeter Geis
944e50d217SPeter Geis		opp-408000000 {
954e50d217SPeter Geis			opp-hz = /bits/ 64 <408000000>;
964e50d217SPeter Geis			opp-microvolt = <900000 900000 1150000>;
974e50d217SPeter Geis			clock-latency-ns = <40000>;
984e50d217SPeter Geis		};
994e50d217SPeter Geis
1004e50d217SPeter Geis		opp-600000000 {
1014e50d217SPeter Geis			opp-hz = /bits/ 64 <600000000>;
1024e50d217SPeter Geis			opp-microvolt = <900000 900000 1150000>;
1034e50d217SPeter Geis		};
1044e50d217SPeter Geis
1054e50d217SPeter Geis		opp-816000000 {
1064e50d217SPeter Geis			opp-hz = /bits/ 64 <816000000>;
1074e50d217SPeter Geis			opp-microvolt = <900000 900000 1150000>;
1084e50d217SPeter Geis			opp-suspend;
1094e50d217SPeter Geis		};
1104e50d217SPeter Geis
1114e50d217SPeter Geis		opp-1104000000 {
1124e50d217SPeter Geis			opp-hz = /bits/ 64 <1104000000>;
1134e50d217SPeter Geis			opp-microvolt = <900000 900000 1150000>;
1144e50d217SPeter Geis		};
1154e50d217SPeter Geis
1164e50d217SPeter Geis		opp-1416000000 {
1174e50d217SPeter Geis			opp-hz = /bits/ 64 <1416000000>;
1184e50d217SPeter Geis			opp-microvolt = <900000 900000 1150000>;
1194e50d217SPeter Geis		};
1204e50d217SPeter Geis
1214e50d217SPeter Geis		opp-1608000000 {
1224e50d217SPeter Geis			opp-hz = /bits/ 64 <1608000000>;
1234e50d217SPeter Geis			opp-microvolt = <975000 975000 1150000>;
1244e50d217SPeter Geis		};
1254e50d217SPeter Geis
1264e50d217SPeter Geis		opp-1800000000 {
1274e50d217SPeter Geis			opp-hz = /bits/ 64 <1800000000>;
1284e50d217SPeter Geis			opp-microvolt = <1050000 1050000 1150000>;
1294e50d217SPeter Geis		};
1304e50d217SPeter Geis	};
1314e50d217SPeter Geis
1329d6c6d97SSascha Hauer	display_subsystem: display-subsystem {
1339d6c6d97SSascha Hauer		compatible = "rockchip,display-subsystem";
1349d6c6d97SSascha Hauer		ports = <&vop_out>;
1359d6c6d97SSascha Hauer	};
1369d6c6d97SSascha Hauer
1374e50d217SPeter Geis	firmware {
1384e50d217SPeter Geis		scmi: scmi {
1394e50d217SPeter Geis			compatible = "arm,scmi-smc";
1404e50d217SPeter Geis			arm,smc-id = <0x82000010>;
1414e50d217SPeter Geis			shmem = <&scmi_shmem>;
1424e50d217SPeter Geis			#address-cells = <1>;
1434e50d217SPeter Geis			#size-cells = <0>;
1444e50d217SPeter Geis
1454e50d217SPeter Geis			scmi_clk: protocol@14 {
1464e50d217SPeter Geis				reg = <0x14>;
1474e50d217SPeter Geis				#clock-cells = <1>;
1484e50d217SPeter Geis			};
1494e50d217SPeter Geis		};
1504e50d217SPeter Geis	};
1514e50d217SPeter Geis
15281002866SEzequiel Garcia	gpu_opp_table: opp-table-1 {
15381002866SEzequiel Garcia		compatible = "operating-points-v2";
15481002866SEzequiel Garcia
15581002866SEzequiel Garcia		opp-200000000 {
15681002866SEzequiel Garcia			opp-hz = /bits/ 64 <200000000>;
15781002866SEzequiel Garcia			opp-microvolt = <825000>;
15881002866SEzequiel Garcia		};
15981002866SEzequiel Garcia
16081002866SEzequiel Garcia		opp-300000000 {
16181002866SEzequiel Garcia			opp-hz = /bits/ 64 <300000000>;
16281002866SEzequiel Garcia			opp-microvolt = <825000>;
16381002866SEzequiel Garcia		};
16481002866SEzequiel Garcia
16581002866SEzequiel Garcia		opp-400000000 {
16681002866SEzequiel Garcia			opp-hz = /bits/ 64 <400000000>;
16781002866SEzequiel Garcia			opp-microvolt = <825000>;
16881002866SEzequiel Garcia		};
16981002866SEzequiel Garcia
17081002866SEzequiel Garcia		opp-600000000 {
17181002866SEzequiel Garcia			opp-hz = /bits/ 64 <600000000>;
17281002866SEzequiel Garcia			opp-microvolt = <825000>;
17381002866SEzequiel Garcia		};
17481002866SEzequiel Garcia
17581002866SEzequiel Garcia		opp-700000000 {
17681002866SEzequiel Garcia			opp-hz = /bits/ 64 <700000000>;
17781002866SEzequiel Garcia			opp-microvolt = <900000>;
17881002866SEzequiel Garcia		};
17981002866SEzequiel Garcia
18081002866SEzequiel Garcia		opp-800000000 {
18181002866SEzequiel Garcia			opp-hz = /bits/ 64 <800000000>;
18281002866SEzequiel Garcia			opp-microvolt = <1000000>;
18381002866SEzequiel Garcia		};
18481002866SEzequiel Garcia	};
18581002866SEzequiel Garcia
1864e50d217SPeter Geis	pmu {
1874e50d217SPeter Geis		compatible = "arm,cortex-a55-pmu";
1884e50d217SPeter Geis		interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>,
1894e50d217SPeter Geis			     <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>,
1904e50d217SPeter Geis			     <GIC_SPI 230 IRQ_TYPE_LEVEL_HIGH>,
1914e50d217SPeter Geis			     <GIC_SPI 231 IRQ_TYPE_LEVEL_HIGH>;
1924e50d217SPeter Geis		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
1934e50d217SPeter Geis	};
1944e50d217SPeter Geis
1954e50d217SPeter Geis	psci {
1964e50d217SPeter Geis		compatible = "arm,psci-1.0";
1974e50d217SPeter Geis		method = "smc";
1984e50d217SPeter Geis	};
1994e50d217SPeter Geis
2004e50d217SPeter Geis	timer {
2014e50d217SPeter Geis		compatible = "arm,armv8-timer";
2024e50d217SPeter Geis		interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>,
2034e50d217SPeter Geis			     <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>,
2044e50d217SPeter Geis			     <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>,
2054e50d217SPeter Geis			     <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>;
2064e50d217SPeter Geis		arm,no-tick-in-suspend;
2074e50d217SPeter Geis	};
2084e50d217SPeter Geis
2094e50d217SPeter Geis	xin24m: xin24m {
2104e50d217SPeter Geis		compatible = "fixed-clock";
2114e50d217SPeter Geis		clock-frequency = <24000000>;
2124e50d217SPeter Geis		clock-output-names = "xin24m";
2134e50d217SPeter Geis		#clock-cells = <0>;
2144e50d217SPeter Geis	};
2154e50d217SPeter Geis
2164e50d217SPeter Geis	xin32k: xin32k {
2174e50d217SPeter Geis		compatible = "fixed-clock";
2184e50d217SPeter Geis		clock-frequency = <32768>;
2194e50d217SPeter Geis		clock-output-names = "xin32k";
2204e50d217SPeter Geis		pinctrl-0 = <&clk32k_out0>;
2214e50d217SPeter Geis		pinctrl-names = "default";
2224e50d217SPeter Geis		#clock-cells = <0>;
2234e50d217SPeter Geis	};
2244e50d217SPeter Geis
2254e50d217SPeter Geis	sram@10f000 {
2264e50d217SPeter Geis		compatible = "mmio-sram";
2274e50d217SPeter Geis		reg = <0x0 0x0010f000 0x0 0x100>;
2284e50d217SPeter Geis		#address-cells = <1>;
2294e50d217SPeter Geis		#size-cells = <1>;
2304e50d217SPeter Geis		ranges = <0 0x0 0x0010f000 0x100>;
2314e50d217SPeter Geis
2324e50d217SPeter Geis		scmi_shmem: sram@0 {
2334e50d217SPeter Geis			compatible = "arm,scmi-shmem";
2344e50d217SPeter Geis			reg = <0x0 0x100>;
2354e50d217SPeter Geis		};
2364e50d217SPeter Geis	};
2374e50d217SPeter Geis
23816c0f95dSFrank Wunderlich	sata1: sata@fc400000 {
23916c0f95dSFrank Wunderlich		compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci";
24016c0f95dSFrank Wunderlich		reg = <0 0xfc400000 0 0x1000>;
24116c0f95dSFrank Wunderlich		clocks = <&cru ACLK_SATA1>, <&cru CLK_SATA1_PMALIVE>,
24216c0f95dSFrank Wunderlich			 <&cru CLK_SATA1_RXOOB>;
24316c0f95dSFrank Wunderlich		clock-names = "sata", "pmalive", "rxoob";
24416c0f95dSFrank Wunderlich		interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
24516c0f95dSFrank Wunderlich		phys = <&combphy1 PHY_TYPE_SATA>;
24616c0f95dSFrank Wunderlich		phy-names = "sata-phy";
24716c0f95dSFrank Wunderlich		ports-implemented = <0x1>;
24816c0f95dSFrank Wunderlich		power-domains = <&power RK3568_PD_PIPE>;
24916c0f95dSFrank Wunderlich		status = "disabled";
25016c0f95dSFrank Wunderlich	};
25116c0f95dSFrank Wunderlich
25216c0f95dSFrank Wunderlich	sata2: sata@fc800000 {
25316c0f95dSFrank Wunderlich		compatible = "rockchip,rk3568-dwc-ahci", "snps,dwc-ahci";
25416c0f95dSFrank Wunderlich		reg = <0 0xfc800000 0 0x1000>;
25516c0f95dSFrank Wunderlich		clocks = <&cru ACLK_SATA2>, <&cru CLK_SATA2_PMALIVE>,
25616c0f95dSFrank Wunderlich			 <&cru CLK_SATA2_RXOOB>;
25716c0f95dSFrank Wunderlich		clock-names = "sata", "pmalive", "rxoob";
25816c0f95dSFrank Wunderlich		interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
25916c0f95dSFrank Wunderlich		phys = <&combphy2 PHY_TYPE_SATA>;
26016c0f95dSFrank Wunderlich		phy-names = "sata-phy";
26116c0f95dSFrank Wunderlich		ports-implemented = <0x1>;
26216c0f95dSFrank Wunderlich		power-domains = <&power RK3568_PD_PIPE>;
26316c0f95dSFrank Wunderlich		status = "disabled";
26416c0f95dSFrank Wunderlich	};
26516c0f95dSFrank Wunderlich
2669f4c480fSPeter Geis	usb_host0_xhci: usb@fcc00000 {
2679f4c480fSPeter Geis		compatible = "rockchip,rk3568-dwc3", "snps,dwc3";
2689f4c480fSPeter Geis		reg = <0x0 0xfcc00000 0x0 0x400000>;
2699f4c480fSPeter Geis		interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
2709f4c480fSPeter Geis		clocks = <&cru CLK_USB3OTG0_REF>, <&cru CLK_USB3OTG0_SUSPEND>,
2719f4c480fSPeter Geis			 <&cru ACLK_USB3OTG0>;
2729f4c480fSPeter Geis		clock-names = "ref_clk", "suspend_clk",
2739f4c480fSPeter Geis			      "bus_clk";
274bc405bb3SMichael Riesch		dr_mode = "otg";
2759f4c480fSPeter Geis		phy_type = "utmi_wide";
2769f4c480fSPeter Geis		power-domains = <&power RK3568_PD_PIPE>;
2779f4c480fSPeter Geis		resets = <&cru SRST_USB3OTG0>;
2789f4c480fSPeter Geis		snps,dis_u2_susphy_quirk;
2799f4c480fSPeter Geis		status = "disabled";
2809f4c480fSPeter Geis	};
2819f4c480fSPeter Geis
2829f4c480fSPeter Geis	usb_host1_xhci: usb@fd000000 {
2839f4c480fSPeter Geis		compatible = "rockchip,rk3568-dwc3", "snps,dwc3";
2849f4c480fSPeter Geis		reg = <0x0 0xfd000000 0x0 0x400000>;
2859f4c480fSPeter Geis		interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
2869f4c480fSPeter Geis		clocks = <&cru CLK_USB3OTG1_REF>, <&cru CLK_USB3OTG1_SUSPEND>,
2879f4c480fSPeter Geis			 <&cru ACLK_USB3OTG1>;
2889f4c480fSPeter Geis		clock-names = "ref_clk", "suspend_clk",
2899f4c480fSPeter Geis			      "bus_clk";
2909f4c480fSPeter Geis		dr_mode = "host";
2919f4c480fSPeter Geis		phys = <&usb2phy0_host>, <&combphy1 PHY_TYPE_USB3>;
2929f4c480fSPeter Geis		phy-names = "usb2-phy", "usb3-phy";
2939f4c480fSPeter Geis		phy_type = "utmi_wide";
2949f4c480fSPeter Geis		power-domains = <&power RK3568_PD_PIPE>;
2959f4c480fSPeter Geis		resets = <&cru SRST_USB3OTG1>;
2969f4c480fSPeter Geis		snps,dis_u2_susphy_quirk;
2979f4c480fSPeter Geis		status = "disabled";
2989f4c480fSPeter Geis	};
2999f4c480fSPeter Geis
3004e50d217SPeter Geis	gic: interrupt-controller@fd400000 {
3014e50d217SPeter Geis		compatible = "arm,gic-v3";
3024e50d217SPeter Geis		reg = <0x0 0xfd400000 0 0x10000>, /* GICD */
3034e50d217SPeter Geis		      <0x0 0xfd460000 0 0x80000>; /* GICR */
3044e50d217SPeter Geis		interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
3054e50d217SPeter Geis		interrupt-controller;
3064e50d217SPeter Geis		#interrupt-cells = <3>;
307b6c1a590SPeter Geis		mbi-alias = <0x0 0xfd410000>;
3084e50d217SPeter Geis		mbi-ranges = <296 24>;
3094e50d217SPeter Geis		msi-controller;
3104e50d217SPeter Geis	};
3114e50d217SPeter Geis
31291c4c3e0SPeter Geis	usb_host0_ehci: usb@fd800000 {
31391c4c3e0SPeter Geis		compatible = "generic-ehci";
31491c4c3e0SPeter Geis		reg = <0x0 0xfd800000 0x0 0x40000>;
31591c4c3e0SPeter Geis		interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
31691c4c3e0SPeter Geis		clocks = <&cru HCLK_USB2HOST0>, <&cru HCLK_USB2HOST0_ARB>,
31791c4c3e0SPeter Geis			 <&cru PCLK_USB>;
31878f71860SMichael Riesch		phys = <&usb2phy1_otg>;
31991c4c3e0SPeter Geis		phy-names = "usb";
32091c4c3e0SPeter Geis		status = "disabled";
32191c4c3e0SPeter Geis	};
32291c4c3e0SPeter Geis
32391c4c3e0SPeter Geis	usb_host0_ohci: usb@fd840000 {
32491c4c3e0SPeter Geis		compatible = "generic-ohci";
32591c4c3e0SPeter Geis		reg = <0x0 0xfd840000 0x0 0x40000>;
32691c4c3e0SPeter Geis		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
32791c4c3e0SPeter Geis		clocks = <&cru HCLK_USB2HOST0>, <&cru HCLK_USB2HOST0_ARB>,
32891c4c3e0SPeter Geis			 <&cru PCLK_USB>;
32978f71860SMichael Riesch		phys = <&usb2phy1_otg>;
33091c4c3e0SPeter Geis		phy-names = "usb";
33191c4c3e0SPeter Geis		status = "disabled";
33291c4c3e0SPeter Geis	};
33391c4c3e0SPeter Geis
33491c4c3e0SPeter Geis	usb_host1_ehci: usb@fd880000 {
33591c4c3e0SPeter Geis		compatible = "generic-ehci";
33691c4c3e0SPeter Geis		reg = <0x0 0xfd880000 0x0 0x40000>;
33791c4c3e0SPeter Geis		interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
33891c4c3e0SPeter Geis		clocks = <&cru HCLK_USB2HOST1>, <&cru HCLK_USB2HOST1_ARB>,
33991c4c3e0SPeter Geis			 <&cru PCLK_USB>;
34078f71860SMichael Riesch		phys = <&usb2phy1_host>;
34191c4c3e0SPeter Geis		phy-names = "usb";
34291c4c3e0SPeter Geis		status = "disabled";
34391c4c3e0SPeter Geis	};
34491c4c3e0SPeter Geis
34591c4c3e0SPeter Geis	usb_host1_ohci: usb@fd8c0000 {
34691c4c3e0SPeter Geis		compatible = "generic-ohci";
34791c4c3e0SPeter Geis		reg = <0x0 0xfd8c0000 0x0 0x40000>;
34891c4c3e0SPeter Geis		interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
34991c4c3e0SPeter Geis		clocks = <&cru HCLK_USB2HOST1>, <&cru HCLK_USB2HOST1_ARB>,
35091c4c3e0SPeter Geis			 <&cru PCLK_USB>;
35178f71860SMichael Riesch		phys = <&usb2phy1_host>;
35291c4c3e0SPeter Geis		phy-names = "usb";
35391c4c3e0SPeter Geis		status = "disabled";
35491c4c3e0SPeter Geis	};
35591c4c3e0SPeter Geis
3564e50d217SPeter Geis	pmugrf: syscon@fdc20000 {
3574e50d217SPeter Geis		compatible = "rockchip,rk3568-pmugrf", "syscon", "simple-mfd";
3584e50d217SPeter Geis		reg = <0x0 0xfdc20000 0x0 0x10000>;
3592dbcb251SMichael Riesch
3602dbcb251SMichael Riesch		pmu_io_domains: io-domains {
3612dbcb251SMichael Riesch			compatible = "rockchip,rk3568-pmu-io-voltage-domain";
3622dbcb251SMichael Riesch			status = "disabled";
3632dbcb251SMichael Riesch		};
3644e50d217SPeter Geis	};
3654e50d217SPeter Geis
3663cc8cd2dSYifeng Zhao	pipegrf: syscon@fdc50000 {
3673cc8cd2dSYifeng Zhao		reg = <0x0 0xfdc50000 0x0 0x1000>;
3683cc8cd2dSYifeng Zhao	};
3693cc8cd2dSYifeng Zhao
3704e50d217SPeter Geis	grf: syscon@fdc60000 {
3714e50d217SPeter Geis		compatible = "rockchip,rk3568-grf", "syscon", "simple-mfd";
3724e50d217SPeter Geis		reg = <0x0 0xfdc60000 0x0 0x10000>;
3734e50d217SPeter Geis	};
3744e50d217SPeter Geis
3753cc8cd2dSYifeng Zhao	pipe_phy_grf1: syscon@fdc80000 {
3763cc8cd2dSYifeng Zhao		compatible = "rockchip,rk3568-pipe-phy-grf", "syscon";
3773cc8cd2dSYifeng Zhao		reg = <0x0 0xfdc80000 0x0 0x1000>;
3783cc8cd2dSYifeng Zhao	};
3793cc8cd2dSYifeng Zhao
3803cc8cd2dSYifeng Zhao	pipe_phy_grf2: syscon@fdc90000 {
3813cc8cd2dSYifeng Zhao		compatible = "rockchip,rk3568-pipe-phy-grf", "syscon";
3823cc8cd2dSYifeng Zhao		reg = <0x0 0xfdc90000 0x0 0x1000>;
3833cc8cd2dSYifeng Zhao	};
3843cc8cd2dSYifeng Zhao
38591c4c3e0SPeter Geis	usb2phy0_grf: syscon@fdca0000 {
38691c4c3e0SPeter Geis		compatible = "rockchip,rk3568-usb2phy-grf", "syscon";
38791c4c3e0SPeter Geis		reg = <0x0 0xfdca0000 0x0 0x8000>;
38891c4c3e0SPeter Geis	};
38991c4c3e0SPeter Geis
39091c4c3e0SPeter Geis	usb2phy1_grf: syscon@fdca8000 {
39191c4c3e0SPeter Geis		compatible = "rockchip,rk3568-usb2phy-grf", "syscon";
39291c4c3e0SPeter Geis		reg = <0x0 0xfdca8000 0x0 0x8000>;
39391c4c3e0SPeter Geis	};
39491c4c3e0SPeter Geis
3954e50d217SPeter Geis	pmucru: clock-controller@fdd00000 {
3964e50d217SPeter Geis		compatible = "rockchip,rk3568-pmucru";
3974e50d217SPeter Geis		reg = <0x0 0xfdd00000 0x0 0x1000>;
3984e50d217SPeter Geis		#clock-cells = <1>;
3994e50d217SPeter Geis		#reset-cells = <1>;
4004e50d217SPeter Geis	};
4014e50d217SPeter Geis
4024e50d217SPeter Geis	cru: clock-controller@fdd20000 {
4034e50d217SPeter Geis		compatible = "rockchip,rk3568-cru";
4044e50d217SPeter Geis		reg = <0x0 0xfdd20000 0x0 0x1000>;
405cd2d081dSPeter Geis		clocks = <&xin24m>;
406cd2d081dSPeter Geis		clock-names = "xin24m";
4074e50d217SPeter Geis		#clock-cells = <1>;
4084e50d217SPeter Geis		#reset-cells = <1>;
409f7c5b9c2SPeter Geis		assigned-clocks = <&cru PLL_GPLL>, <&pmucru PLL_PPLL>;
410f7c5b9c2SPeter Geis		assigned-clock-rates = <1200000000>, <200000000>;
41195ad4dbeSMichael Riesch		rockchip,grf = <&grf>;
4124e50d217SPeter Geis	};
4134e50d217SPeter Geis
4144e50d217SPeter Geis	i2c0: i2c@fdd40000 {
4154e50d217SPeter Geis		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
4164e50d217SPeter Geis		reg = <0x0 0xfdd40000 0x0 0x1000>;
4174e50d217SPeter Geis		interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
4184e50d217SPeter Geis		clocks = <&pmucru CLK_I2C0>, <&pmucru PCLK_I2C0>;
4194e50d217SPeter Geis		clock-names = "i2c", "pclk";
4204e50d217SPeter Geis		pinctrl-0 = <&i2c0_xfer>;
4214e50d217SPeter Geis		pinctrl-names = "default";
4224e50d217SPeter Geis		#address-cells = <1>;
4234e50d217SPeter Geis		#size-cells = <0>;
4244e50d217SPeter Geis		status = "disabled";
4254e50d217SPeter Geis	};
4264e50d217SPeter Geis
4274e50d217SPeter Geis	uart0: serial@fdd50000 {
4284e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
4294e50d217SPeter Geis		reg = <0x0 0xfdd50000 0x0 0x100>;
4304e50d217SPeter Geis		interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
4314e50d217SPeter Geis		clocks = <&pmucru SCLK_UART0>, <&pmucru PCLK_UART0>;
4324e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
4334e50d217SPeter Geis		dmas = <&dmac0 0>, <&dmac0 1>;
4344e50d217SPeter Geis		pinctrl-0 = <&uart0_xfer>;
4354e50d217SPeter Geis		pinctrl-names = "default";
4364e50d217SPeter Geis		reg-io-width = <4>;
4374e50d217SPeter Geis		reg-shift = <2>;
4384e50d217SPeter Geis		status = "disabled";
4394e50d217SPeter Geis	};
4404e50d217SPeter Geis
44198419a39SLiang Chen	pwm0: pwm@fdd70000 {
44298419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
44398419a39SLiang Chen		reg = <0x0 0xfdd70000 0x0 0x10>;
44498419a39SLiang Chen		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
44598419a39SLiang Chen		clock-names = "pwm", "pclk";
44698419a39SLiang Chen		pinctrl-0 = <&pwm0m0_pins>;
4472e4dbcf7SSascha Hauer		pinctrl-names = "default";
44898419a39SLiang Chen		#pwm-cells = <3>;
44998419a39SLiang Chen		status = "disabled";
45098419a39SLiang Chen	};
45198419a39SLiang Chen
45298419a39SLiang Chen	pwm1: pwm@fdd70010 {
45398419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
45498419a39SLiang Chen		reg = <0x0 0xfdd70010 0x0 0x10>;
45598419a39SLiang Chen		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
45698419a39SLiang Chen		clock-names = "pwm", "pclk";
45798419a39SLiang Chen		pinctrl-0 = <&pwm1m0_pins>;
4582e4dbcf7SSascha Hauer		pinctrl-names = "default";
45998419a39SLiang Chen		#pwm-cells = <3>;
46098419a39SLiang Chen		status = "disabled";
46198419a39SLiang Chen	};
46298419a39SLiang Chen
46398419a39SLiang Chen	pwm2: pwm@fdd70020 {
46498419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
46598419a39SLiang Chen		reg = <0x0 0xfdd70020 0x0 0x10>;
46698419a39SLiang Chen		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
46798419a39SLiang Chen		clock-names = "pwm", "pclk";
46898419a39SLiang Chen		pinctrl-0 = <&pwm2m0_pins>;
4692e4dbcf7SSascha Hauer		pinctrl-names = "default";
47098419a39SLiang Chen		#pwm-cells = <3>;
47198419a39SLiang Chen		status = "disabled";
47298419a39SLiang Chen	};
47398419a39SLiang Chen
47498419a39SLiang Chen	pwm3: pwm@fdd70030 {
47598419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
47698419a39SLiang Chen		reg = <0x0 0xfdd70030 0x0 0x10>;
47798419a39SLiang Chen		clocks = <&pmucru CLK_PWM0>, <&pmucru PCLK_PWM0>;
47898419a39SLiang Chen		clock-names = "pwm", "pclk";
47998419a39SLiang Chen		pinctrl-0 = <&pwm3_pins>;
4802e4dbcf7SSascha Hauer		pinctrl-names = "default";
48198419a39SLiang Chen		#pwm-cells = <3>;
48298419a39SLiang Chen		status = "disabled";
48398419a39SLiang Chen	};
48498419a39SLiang Chen
4854e50d217SPeter Geis	pmu: power-management@fdd90000 {
4864e50d217SPeter Geis		compatible = "rockchip,rk3568-pmu", "syscon", "simple-mfd";
4874e50d217SPeter Geis		reg = <0x0 0xfdd90000 0x0 0x1000>;
4884e50d217SPeter Geis
4894e50d217SPeter Geis		power: power-controller {
4904e50d217SPeter Geis			compatible = "rockchip,rk3568-power-controller";
4914e50d217SPeter Geis			#power-domain-cells = <1>;
4924e50d217SPeter Geis			#address-cells = <1>;
4934e50d217SPeter Geis			#size-cells = <0>;
4944e50d217SPeter Geis
4954e50d217SPeter Geis			/* These power domains are grouped by VD_GPU */
4964e50d217SPeter Geis			power-domain@RK3568_PD_GPU {
4974e50d217SPeter Geis				reg = <RK3568_PD_GPU>;
4984e50d217SPeter Geis				clocks = <&cru ACLK_GPU_PRE>,
4994e50d217SPeter Geis					 <&cru PCLK_GPU_PRE>;
5004e50d217SPeter Geis				pm_qos = <&qos_gpu>;
5014e50d217SPeter Geis				#power-domain-cells = <0>;
5024e50d217SPeter Geis			};
5034e50d217SPeter Geis
5044e50d217SPeter Geis			/* These power domains are grouped by VD_LOGIC */
5054e50d217SPeter Geis			power-domain@RK3568_PD_VI {
5064e50d217SPeter Geis				reg = <RK3568_PD_VI>;
5074e50d217SPeter Geis				clocks = <&cru HCLK_VI>,
5084e50d217SPeter Geis					 <&cru PCLK_VI>;
5094e50d217SPeter Geis				pm_qos = <&qos_isp>,
5104e50d217SPeter Geis					 <&qos_vicap0>,
5114e50d217SPeter Geis					 <&qos_vicap1>;
5124e50d217SPeter Geis				#power-domain-cells = <0>;
5134e50d217SPeter Geis			};
5144e50d217SPeter Geis
5154e50d217SPeter Geis			power-domain@RK3568_PD_VO {
5164e50d217SPeter Geis				reg = <RK3568_PD_VO>;
5174e50d217SPeter Geis				clocks = <&cru HCLK_VO>,
5184e50d217SPeter Geis					 <&cru PCLK_VO>,
5194e50d217SPeter Geis					 <&cru ACLK_VOP_PRE>;
5204e50d217SPeter Geis				pm_qos = <&qos_hdcp>,
5214e50d217SPeter Geis					 <&qos_vop_m0>,
5224e50d217SPeter Geis					 <&qos_vop_m1>;
5234e50d217SPeter Geis				#power-domain-cells = <0>;
5244e50d217SPeter Geis			};
5254e50d217SPeter Geis
5264e50d217SPeter Geis			power-domain@RK3568_PD_RGA {
5274e50d217SPeter Geis				reg = <RK3568_PD_RGA>;
5284e50d217SPeter Geis				clocks = <&cru HCLK_RGA_PRE>,
5294e50d217SPeter Geis					 <&cru PCLK_RGA_PRE>;
5304e50d217SPeter Geis				pm_qos = <&qos_ebc>,
5314e50d217SPeter Geis					 <&qos_iep>,
5324e50d217SPeter Geis					 <&qos_jpeg_dec>,
5334e50d217SPeter Geis					 <&qos_jpeg_enc>,
5344e50d217SPeter Geis					 <&qos_rga_rd>,
5354e50d217SPeter Geis					 <&qos_rga_wr>;
5364e50d217SPeter Geis				#power-domain-cells = <0>;
5374e50d217SPeter Geis			};
5384e50d217SPeter Geis
5394e50d217SPeter Geis			power-domain@RK3568_PD_VPU {
5404e50d217SPeter Geis				reg = <RK3568_PD_VPU>;
5414e50d217SPeter Geis				clocks = <&cru HCLK_VPU_PRE>;
5424e50d217SPeter Geis				pm_qos = <&qos_vpu>;
5434e50d217SPeter Geis				#power-domain-cells = <0>;
5444e50d217SPeter Geis			};
5454e50d217SPeter Geis
5464e50d217SPeter Geis			power-domain@RK3568_PD_RKVDEC {
5474e50d217SPeter Geis				clocks = <&cru HCLK_RKVDEC_PRE>;
5484e50d217SPeter Geis				reg = <RK3568_PD_RKVDEC>;
5494e50d217SPeter Geis				pm_qos = <&qos_rkvdec>;
5504e50d217SPeter Geis				#power-domain-cells = <0>;
5514e50d217SPeter Geis			};
5524e50d217SPeter Geis
5534e50d217SPeter Geis			power-domain@RK3568_PD_RKVENC {
5544e50d217SPeter Geis				reg = <RK3568_PD_RKVENC>;
5554e50d217SPeter Geis				clocks = <&cru HCLK_RKVENC_PRE>;
5564e50d217SPeter Geis				pm_qos = <&qos_rkvenc_rd_m0>,
5574e50d217SPeter Geis					 <&qos_rkvenc_rd_m1>,
5584e50d217SPeter Geis					 <&qos_rkvenc_wr_m0>;
5594e50d217SPeter Geis				#power-domain-cells = <0>;
5604e50d217SPeter Geis			};
5614e50d217SPeter Geis		};
5624e50d217SPeter Geis	};
5634e50d217SPeter Geis
56481002866SEzequiel Garcia	gpu: gpu@fde60000 {
56581002866SEzequiel Garcia		compatible = "rockchip,rk3568-mali", "arm,mali-bifrost";
56681002866SEzequiel Garcia		reg = <0x0 0xfde60000 0x0 0x4000>;
56781002866SEzequiel Garcia		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
56881002866SEzequiel Garcia			     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
56981002866SEzequiel Garcia			     <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
57081002866SEzequiel Garcia		interrupt-names = "job", "mmu", "gpu";
57181002866SEzequiel Garcia		clocks = <&scmi_clk 1>, <&cru CLK_GPU>;
57281002866SEzequiel Garcia		clock-names = "gpu", "bus";
57381002866SEzequiel Garcia		#cooling-cells = <2>;
57481002866SEzequiel Garcia		operating-points-v2 = <&gpu_opp_table>;
57581002866SEzequiel Garcia		power-domains = <&power RK3568_PD_GPU>;
57681002866SEzequiel Garcia		status = "disabled";
57781002866SEzequiel Garcia	};
57881002866SEzequiel Garcia
5794e50d217SPeter Geis	sdmmc2: mmc@fe000000 {
5804e50d217SPeter Geis		compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
5814e50d217SPeter Geis		reg = <0x0 0xfe000000 0x0 0x4000>;
5824e50d217SPeter Geis		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
5834e50d217SPeter Geis		clocks = <&cru HCLK_SDMMC2>, <&cru CLK_SDMMC2>,
5844e50d217SPeter Geis			 <&cru SCLK_SDMMC2_DRV>, <&cru SCLK_SDMMC2_SAMPLE>;
5854e50d217SPeter Geis		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
5864e50d217SPeter Geis		fifo-depth = <0x100>;
5874e50d217SPeter Geis		max-frequency = <150000000>;
5884e50d217SPeter Geis		resets = <&cru SRST_SDMMC2>;
5894e50d217SPeter Geis		reset-names = "reset";
5904e50d217SPeter Geis		status = "disabled";
5914e50d217SPeter Geis	};
5924e50d217SPeter Geis
5930dcec571SPeter Geis	gmac1: ethernet@fe010000 {
5940dcec571SPeter Geis		compatible = "rockchip,rk3568-gmac", "snps,dwmac-4.20a";
5950dcec571SPeter Geis		reg = <0x0 0xfe010000 0x0 0x10000>;
5960dcec571SPeter Geis		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
5970dcec571SPeter Geis			     <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
5980dcec571SPeter Geis		interrupt-names = "macirq", "eth_wake_irq";
5990dcec571SPeter Geis		clocks = <&cru SCLK_GMAC1>, <&cru SCLK_GMAC1_RX_TX>,
6000dcec571SPeter Geis			 <&cru SCLK_GMAC1_RX_TX>, <&cru CLK_MAC1_REFOUT>,
6010dcec571SPeter Geis			 <&cru ACLK_GMAC1>, <&cru PCLK_GMAC1>,
6020dcec571SPeter Geis			 <&cru SCLK_GMAC1_RX_TX>, <&cru CLK_GMAC1_PTP_REF>;
6030dcec571SPeter Geis		clock-names = "stmmaceth", "mac_clk_rx",
6040dcec571SPeter Geis			      "mac_clk_tx", "clk_mac_refout",
6050dcec571SPeter Geis			      "aclk_mac", "pclk_mac",
6060dcec571SPeter Geis			      "clk_mac_speed", "ptp_ref";
6070dcec571SPeter Geis		resets = <&cru SRST_A_GMAC1>;
6080dcec571SPeter Geis		reset-names = "stmmaceth";
6090dcec571SPeter Geis		rockchip,grf = <&grf>;
6100dcec571SPeter Geis		snps,axi-config = <&gmac1_stmmac_axi_setup>;
6110dcec571SPeter Geis		snps,mixed-burst;
6120dcec571SPeter Geis		snps,mtl-rx-config = <&gmac1_mtl_rx_setup>;
6130dcec571SPeter Geis		snps,mtl-tx-config = <&gmac1_mtl_tx_setup>;
6140dcec571SPeter Geis		snps,tso;
6150dcec571SPeter Geis		status = "disabled";
6160dcec571SPeter Geis
6170dcec571SPeter Geis		mdio1: mdio {
6180dcec571SPeter Geis			compatible = "snps,dwmac-mdio";
6190dcec571SPeter Geis			#address-cells = <0x1>;
6200dcec571SPeter Geis			#size-cells = <0x0>;
6210dcec571SPeter Geis		};
6220dcec571SPeter Geis
6230dcec571SPeter Geis		gmac1_stmmac_axi_setup: stmmac-axi-config {
6240dcec571SPeter Geis			snps,blen = <0 0 0 0 16 8 4>;
6250dcec571SPeter Geis			snps,rd_osr_lmt = <8>;
6260dcec571SPeter Geis			snps,wr_osr_lmt = <4>;
6270dcec571SPeter Geis		};
6280dcec571SPeter Geis
6290dcec571SPeter Geis		gmac1_mtl_rx_setup: rx-queues-config {
6300dcec571SPeter Geis			snps,rx-queues-to-use = <1>;
6310dcec571SPeter Geis			queue0 {};
6320dcec571SPeter Geis		};
6330dcec571SPeter Geis
6340dcec571SPeter Geis		gmac1_mtl_tx_setup: tx-queues-config {
6350dcec571SPeter Geis			snps,tx-queues-to-use = <1>;
6360dcec571SPeter Geis			queue0 {};
6370dcec571SPeter Geis		};
6380dcec571SPeter Geis	};
6390dcec571SPeter Geis
6409d6c6d97SSascha Hauer	vop: vop@fe040000 {
6419d6c6d97SSascha Hauer		reg = <0x0 0xfe040000 0x0 0x3000>, <0x0 0xfe044000 0x0 0x1000>;
6429d6c6d97SSascha Hauer		reg-names = "vop", "gamma-lut";
6439d6c6d97SSascha Hauer		interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
6449d6c6d97SSascha Hauer		clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>, <&cru DCLK_VOP0>,
6459d6c6d97SSascha Hauer			 <&cru DCLK_VOP1>, <&cru DCLK_VOP2>;
6469d6c6d97SSascha Hauer		clock-names = "aclk", "hclk", "dclk_vp0", "dclk_vp1", "dclk_vp2";
6479d6c6d97SSascha Hauer		iommus = <&vop_mmu>;
6489d6c6d97SSascha Hauer		power-domains = <&power RK3568_PD_VO>;
6499d6c6d97SSascha Hauer		rockchip,grf = <&grf>;
6509d6c6d97SSascha Hauer		status = "disabled";
6519d6c6d97SSascha Hauer
6529d6c6d97SSascha Hauer		vop_out: ports {
6539d6c6d97SSascha Hauer			#address-cells = <1>;
6549d6c6d97SSascha Hauer			#size-cells = <0>;
6559d6c6d97SSascha Hauer
6569d6c6d97SSascha Hauer			vp0: port@0 {
6579d6c6d97SSascha Hauer				reg = <0>;
6589d6c6d97SSascha Hauer				#address-cells = <1>;
6599d6c6d97SSascha Hauer				#size-cells = <0>;
6609d6c6d97SSascha Hauer			};
6619d6c6d97SSascha Hauer
6629d6c6d97SSascha Hauer			vp1: port@1 {
6639d6c6d97SSascha Hauer				reg = <1>;
6649d6c6d97SSascha Hauer				#address-cells = <1>;
6659d6c6d97SSascha Hauer				#size-cells = <0>;
6669d6c6d97SSascha Hauer			};
6679d6c6d97SSascha Hauer
6689d6c6d97SSascha Hauer			vp2: port@2 {
6699d6c6d97SSascha Hauer				reg = <2>;
6709d6c6d97SSascha Hauer				#address-cells = <1>;
6719d6c6d97SSascha Hauer				#size-cells = <0>;
6729d6c6d97SSascha Hauer			};
6739d6c6d97SSascha Hauer		};
6749d6c6d97SSascha Hauer	};
6759d6c6d97SSascha Hauer
6769d6c6d97SSascha Hauer	vop_mmu: iommu@fe043e00 {
6779d6c6d97SSascha Hauer		compatible = "rockchip,rk3568-iommu";
6789d6c6d97SSascha Hauer		reg = <0x0 0xfe043e00 0x0 0x100>, <0x0 0xfe043f00 0x0 0x100>;
6799d6c6d97SSascha Hauer		interrupts = <GIC_SPI 148 IRQ_TYPE_LEVEL_HIGH>;
6809d6c6d97SSascha Hauer		clocks = <&cru ACLK_VOP>, <&cru HCLK_VOP>;
6819d6c6d97SSascha Hauer		clock-names = "aclk", "iface";
6829d6c6d97SSascha Hauer		#iommu-cells = <0>;
6839d6c6d97SSascha Hauer		status = "disabled";
6849d6c6d97SSascha Hauer	};
6859d6c6d97SSascha Hauer
686*d689e570SSascha Hauer	hdmi: hdmi@fe0a0000 {
687*d689e570SSascha Hauer		compatible = "rockchip,rk3568-dw-hdmi";
688*d689e570SSascha Hauer		reg = <0x0 0xfe0a0000 0x0 0x20000>;
689*d689e570SSascha Hauer		interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
690*d689e570SSascha Hauer		clocks = <&cru PCLK_HDMI_HOST>,
691*d689e570SSascha Hauer			 <&cru CLK_HDMI_SFR>,
692*d689e570SSascha Hauer			 <&cru CLK_HDMI_CEC>,
693*d689e570SSascha Hauer			 <&pmucru CLK_HDMI_REF>,
694*d689e570SSascha Hauer			 <&cru HCLK_VO>;
695*d689e570SSascha Hauer		clock-names = "iahb", "isfr", "cec", "ref";
696*d689e570SSascha Hauer		pinctrl-names = "default";
697*d689e570SSascha Hauer		pinctrl-0 = <&hdmitx_scl &hdmitx_sda &hdmitxm0_cec>;
698*d689e570SSascha Hauer		power-domains = <&power RK3568_PD_VO>;
699*d689e570SSascha Hauer		reg-io-width = <4>;
700*d689e570SSascha Hauer		rockchip,grf = <&grf>;
701*d689e570SSascha Hauer		#sound-dai-cells = <0>;
702*d689e570SSascha Hauer		status = "disabled";
703*d689e570SSascha Hauer
704*d689e570SSascha Hauer		ports {
705*d689e570SSascha Hauer			#address-cells = <1>;
706*d689e570SSascha Hauer			#size-cells = <0>;
707*d689e570SSascha Hauer
708*d689e570SSascha Hauer			hdmi_in: port@0 {
709*d689e570SSascha Hauer				reg = <0>;
710*d689e570SSascha Hauer			};
711*d689e570SSascha Hauer
712*d689e570SSascha Hauer			hdmi_out: port@1 {
713*d689e570SSascha Hauer				reg = <1>;
714*d689e570SSascha Hauer			};
715*d689e570SSascha Hauer		};
716*d689e570SSascha Hauer	};
717*d689e570SSascha Hauer
7184e50d217SPeter Geis	qos_gpu: qos@fe128000 {
7194e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7204e50d217SPeter Geis		reg = <0x0 0xfe128000 0x0 0x20>;
7214e50d217SPeter Geis	};
7224e50d217SPeter Geis
7234e50d217SPeter Geis	qos_rkvenc_rd_m0: qos@fe138080 {
7244e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7254e50d217SPeter Geis		reg = <0x0 0xfe138080 0x0 0x20>;
7264e50d217SPeter Geis	};
7274e50d217SPeter Geis
7284e50d217SPeter Geis	qos_rkvenc_rd_m1: qos@fe138100 {
7294e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7304e50d217SPeter Geis		reg = <0x0 0xfe138100 0x0 0x20>;
7314e50d217SPeter Geis	};
7324e50d217SPeter Geis
7334e50d217SPeter Geis	qos_rkvenc_wr_m0: qos@fe138180 {
7344e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7354e50d217SPeter Geis		reg = <0x0 0xfe138180 0x0 0x20>;
7364e50d217SPeter Geis	};
7374e50d217SPeter Geis
7384e50d217SPeter Geis	qos_isp: qos@fe148000 {
7394e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7404e50d217SPeter Geis		reg = <0x0 0xfe148000 0x0 0x20>;
7414e50d217SPeter Geis	};
7424e50d217SPeter Geis
7434e50d217SPeter Geis	qos_vicap0: qos@fe148080 {
7444e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7454e50d217SPeter Geis		reg = <0x0 0xfe148080 0x0 0x20>;
7464e50d217SPeter Geis	};
7474e50d217SPeter Geis
7484e50d217SPeter Geis	qos_vicap1: qos@fe148100 {
7494e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7504e50d217SPeter Geis		reg = <0x0 0xfe148100 0x0 0x20>;
7514e50d217SPeter Geis	};
7524e50d217SPeter Geis
7534e50d217SPeter Geis	qos_vpu: qos@fe150000 {
7544e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7554e50d217SPeter Geis		reg = <0x0 0xfe150000 0x0 0x20>;
7564e50d217SPeter Geis	};
7574e50d217SPeter Geis
7584e50d217SPeter Geis	qos_ebc: qos@fe158000 {
7594e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7604e50d217SPeter Geis		reg = <0x0 0xfe158000 0x0 0x20>;
7614e50d217SPeter Geis	};
7624e50d217SPeter Geis
7634e50d217SPeter Geis	qos_iep: qos@fe158100 {
7644e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7654e50d217SPeter Geis		reg = <0x0 0xfe158100 0x0 0x20>;
7664e50d217SPeter Geis	};
7674e50d217SPeter Geis
7684e50d217SPeter Geis	qos_jpeg_dec: qos@fe158180 {
7694e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7704e50d217SPeter Geis		reg = <0x0 0xfe158180 0x0 0x20>;
7714e50d217SPeter Geis	};
7724e50d217SPeter Geis
7734e50d217SPeter Geis	qos_jpeg_enc: qos@fe158200 {
7744e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7754e50d217SPeter Geis		reg = <0x0 0xfe158200 0x0 0x20>;
7764e50d217SPeter Geis	};
7774e50d217SPeter Geis
7784e50d217SPeter Geis	qos_rga_rd: qos@fe158280 {
7794e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7804e50d217SPeter Geis		reg = <0x0 0xfe158280 0x0 0x20>;
7814e50d217SPeter Geis	};
7824e50d217SPeter Geis
7834e50d217SPeter Geis	qos_rga_wr: qos@fe158300 {
7844e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7854e50d217SPeter Geis		reg = <0x0 0xfe158300 0x0 0x20>;
7864e50d217SPeter Geis	};
7874e50d217SPeter Geis
7884e50d217SPeter Geis	qos_npu: qos@fe180000 {
7894e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7904e50d217SPeter Geis		reg = <0x0 0xfe180000 0x0 0x20>;
7914e50d217SPeter Geis	};
7924e50d217SPeter Geis
7934e50d217SPeter Geis	qos_pcie2x1: qos@fe190000 {
7944e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
7954e50d217SPeter Geis		reg = <0x0 0xfe190000 0x0 0x20>;
7964e50d217SPeter Geis	};
7974e50d217SPeter Geis
7984e50d217SPeter Geis	qos_sata1: qos@fe190280 {
7994e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8004e50d217SPeter Geis		reg = <0x0 0xfe190280 0x0 0x20>;
8014e50d217SPeter Geis	};
8024e50d217SPeter Geis
8034e50d217SPeter Geis	qos_sata2: qos@fe190300 {
8044e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8054e50d217SPeter Geis		reg = <0x0 0xfe190300 0x0 0x20>;
8064e50d217SPeter Geis	};
8074e50d217SPeter Geis
8084e50d217SPeter Geis	qos_usb3_0: qos@fe190380 {
8094e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8104e50d217SPeter Geis		reg = <0x0 0xfe190380 0x0 0x20>;
8114e50d217SPeter Geis	};
8124e50d217SPeter Geis
8134e50d217SPeter Geis	qos_usb3_1: qos@fe190400 {
8144e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8154e50d217SPeter Geis		reg = <0x0 0xfe190400 0x0 0x20>;
8164e50d217SPeter Geis	};
8174e50d217SPeter Geis
8184e50d217SPeter Geis	qos_rkvdec: qos@fe198000 {
8194e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8204e50d217SPeter Geis		reg = <0x0 0xfe198000 0x0 0x20>;
8214e50d217SPeter Geis	};
8224e50d217SPeter Geis
8234e50d217SPeter Geis	qos_hdcp: qos@fe1a8000 {
8244e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8254e50d217SPeter Geis		reg = <0x0 0xfe1a8000 0x0 0x20>;
8264e50d217SPeter Geis	};
8274e50d217SPeter Geis
8284e50d217SPeter Geis	qos_vop_m0: qos@fe1a8080 {
8294e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8304e50d217SPeter Geis		reg = <0x0 0xfe1a8080 0x0 0x20>;
8314e50d217SPeter Geis	};
8324e50d217SPeter Geis
8334e50d217SPeter Geis	qos_vop_m1: qos@fe1a8100 {
8344e50d217SPeter Geis		compatible = "rockchip,rk3568-qos", "syscon";
8354e50d217SPeter Geis		reg = <0x0 0xfe1a8100 0x0 0x20>;
8364e50d217SPeter Geis	};
8374e50d217SPeter Geis
83866b51ea7SPeter Geis	pcie2x1: pcie@fe260000 {
83966b51ea7SPeter Geis		compatible = "rockchip,rk3568-pcie";
84066b51ea7SPeter Geis		reg = <0x3 0xc0000000 0x0 0x00400000>,
84166b51ea7SPeter Geis		      <0x0 0xfe260000 0x0 0x00010000>,
84266b51ea7SPeter Geis		      <0x3 0x3f000000 0x0 0x01000000>;
84366b51ea7SPeter Geis		reg-names = "dbi", "apb", "config";
84466b51ea7SPeter Geis		interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>,
84566b51ea7SPeter Geis			     <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
84666b51ea7SPeter Geis			     <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>,
84766b51ea7SPeter Geis			     <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>,
84866b51ea7SPeter Geis			     <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
84966b51ea7SPeter Geis		interrupt-names = "sys", "pmc", "msi", "legacy", "err";
85066b51ea7SPeter Geis		bus-range = <0x0 0xf>;
85166b51ea7SPeter Geis		clocks = <&cru ACLK_PCIE20_MST>, <&cru ACLK_PCIE20_SLV>,
85266b51ea7SPeter Geis			 <&cru ACLK_PCIE20_DBI>, <&cru PCLK_PCIE20>,
85366b51ea7SPeter Geis			 <&cru CLK_PCIE20_AUX_NDFT>;
85466b51ea7SPeter Geis		clock-names = "aclk_mst", "aclk_slv",
85566b51ea7SPeter Geis			      "aclk_dbi", "pclk", "aux";
85666b51ea7SPeter Geis		device_type = "pci";
85766b51ea7SPeter Geis		interrupt-map-mask = <0 0 0 7>;
85866b51ea7SPeter Geis		interrupt-map = <0 0 0 1 &pcie_intc 0>,
85966b51ea7SPeter Geis				<0 0 0 2 &pcie_intc 1>,
86066b51ea7SPeter Geis				<0 0 0 3 &pcie_intc 2>,
86166b51ea7SPeter Geis				<0 0 0 4 &pcie_intc 3>;
86266b51ea7SPeter Geis		linux,pci-domain = <0>;
86366b51ea7SPeter Geis		num-ib-windows = <6>;
86466b51ea7SPeter Geis		num-ob-windows = <2>;
86566b51ea7SPeter Geis		max-link-speed = <2>;
86666b51ea7SPeter Geis		msi-map = <0x0 &gic 0x0 0x1000>;
86766b51ea7SPeter Geis		num-lanes = <1>;
86866b51ea7SPeter Geis		phys = <&combphy2 PHY_TYPE_PCIE>;
86966b51ea7SPeter Geis		phy-names = "pcie-phy";
87066b51ea7SPeter Geis		power-domains = <&power RK3568_PD_PIPE>;
87166b51ea7SPeter Geis		ranges = <0x01000000 0x0 0x3ef00000 0x3 0x3ef00000 0x0 0x00100000
87266b51ea7SPeter Geis			  0x02000000 0x0 0x00000000 0x3 0x00000000 0x0 0x3ef00000>;
87366b51ea7SPeter Geis		resets = <&cru SRST_PCIE20_POWERUP>;
87466b51ea7SPeter Geis		reset-names = "pipe";
87566b51ea7SPeter Geis		#address-cells = <3>;
87666b51ea7SPeter Geis		#size-cells = <2>;
87766b51ea7SPeter Geis		status = "disabled";
87866b51ea7SPeter Geis
87966b51ea7SPeter Geis		pcie_intc: legacy-interrupt-controller {
88066b51ea7SPeter Geis			#address-cells = <0>;
88166b51ea7SPeter Geis			#interrupt-cells = <1>;
88266b51ea7SPeter Geis			interrupt-controller;
88366b51ea7SPeter Geis			interrupt-parent = <&gic>;
88466b51ea7SPeter Geis			interrupts = <GIC_SPI 72 IRQ_TYPE_EDGE_RISING>;
88566b51ea7SPeter Geis		};
88666b51ea7SPeter Geis	};
88766b51ea7SPeter Geis
8884e50d217SPeter Geis	sdmmc0: mmc@fe2b0000 {
8894e50d217SPeter Geis		compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
8904e50d217SPeter Geis		reg = <0x0 0xfe2b0000 0x0 0x4000>;
8914e50d217SPeter Geis		interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
8924e50d217SPeter Geis		clocks = <&cru HCLK_SDMMC0>, <&cru CLK_SDMMC0>,
8934e50d217SPeter Geis			 <&cru SCLK_SDMMC0_DRV>, <&cru SCLK_SDMMC0_SAMPLE>;
8944e50d217SPeter Geis		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
8954e50d217SPeter Geis		fifo-depth = <0x100>;
8964e50d217SPeter Geis		max-frequency = <150000000>;
8974e50d217SPeter Geis		resets = <&cru SRST_SDMMC0>;
8984e50d217SPeter Geis		reset-names = "reset";
8994e50d217SPeter Geis		status = "disabled";
9004e50d217SPeter Geis	};
9014e50d217SPeter Geis
9024e50d217SPeter Geis	sdmmc1: mmc@fe2c0000 {
9034e50d217SPeter Geis		compatible = "rockchip,rk3568-dw-mshc", "rockchip,rk3288-dw-mshc";
9044e50d217SPeter Geis		reg = <0x0 0xfe2c0000 0x0 0x4000>;
9054e50d217SPeter Geis		interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
9064e50d217SPeter Geis		clocks = <&cru HCLK_SDMMC1>, <&cru CLK_SDMMC1>,
9074e50d217SPeter Geis			 <&cru SCLK_SDMMC1_DRV>, <&cru SCLK_SDMMC1_SAMPLE>;
9084e50d217SPeter Geis		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
9094e50d217SPeter Geis		fifo-depth = <0x100>;
9104e50d217SPeter Geis		max-frequency = <150000000>;
9114e50d217SPeter Geis		resets = <&cru SRST_SDMMC1>;
9124e50d217SPeter Geis		reset-names = "reset";
9134e50d217SPeter Geis		status = "disabled";
9144e50d217SPeter Geis	};
9154e50d217SPeter Geis
91613e0ee34SPeter Geis	sfc: spi@fe300000 {
91713e0ee34SPeter Geis		compatible = "rockchip,sfc";
91813e0ee34SPeter Geis		reg = <0x0 0xfe300000 0x0 0x4000>;
91913e0ee34SPeter Geis		interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
92013e0ee34SPeter Geis		clocks = <&cru SCLK_SFC>, <&cru HCLK_SFC>;
92113e0ee34SPeter Geis		clock-names = "clk_sfc", "hclk_sfc";
92213e0ee34SPeter Geis		pinctrl-0 = <&fspi_pins>;
92313e0ee34SPeter Geis		pinctrl-names = "default";
92413e0ee34SPeter Geis		status = "disabled";
92513e0ee34SPeter Geis	};
92613e0ee34SPeter Geis
9274e50d217SPeter Geis	sdhci: mmc@fe310000 {
9284e50d217SPeter Geis		compatible = "rockchip,rk3568-dwcmshc";
9294e50d217SPeter Geis		reg = <0x0 0xfe310000 0x0 0x10000>;
9304e50d217SPeter Geis		interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
9314e50d217SPeter Geis		assigned-clocks = <&cru BCLK_EMMC>, <&cru TCLK_EMMC>;
9324e50d217SPeter Geis		assigned-clock-rates = <200000000>, <24000000>;
9334e50d217SPeter Geis		clocks = <&cru CCLK_EMMC>, <&cru HCLK_EMMC>,
9344e50d217SPeter Geis			 <&cru ACLK_EMMC>, <&cru BCLK_EMMC>,
9354e50d217SPeter Geis			 <&cru TCLK_EMMC>;
9364e50d217SPeter Geis		clock-names = "core", "bus", "axi", "block", "timer";
9374e50d217SPeter Geis		status = "disabled";
9384e50d217SPeter Geis	};
9394e50d217SPeter Geis
940a65e6523SPeter Geis	spdif: spdif@fe460000 {
941a65e6523SPeter Geis		compatible = "rockchip,rk3568-spdif";
942a65e6523SPeter Geis		reg = <0x0 0xfe460000 0x0 0x1000>;
943a65e6523SPeter Geis		interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
944a65e6523SPeter Geis		clock-names = "mclk", "hclk";
945a65e6523SPeter Geis		clocks = <&cru MCLK_SPDIF_8CH>, <&cru HCLK_SPDIF_8CH>;
946a65e6523SPeter Geis		dmas = <&dmac1 1>;
947a65e6523SPeter Geis		dma-names = "tx";
948a65e6523SPeter Geis		pinctrl-names = "default";
949a65e6523SPeter Geis		pinctrl-0 = <&spdifm0_tx>;
950a65e6523SPeter Geis		#sound-dai-cells = <0>;
951a65e6523SPeter Geis		status = "disabled";
952a65e6523SPeter Geis	};
953a65e6523SPeter Geis
954ef5c9135SNicolas Frattaroli	i2s1_8ch: i2s@fe410000 {
955ef5c9135SNicolas Frattaroli		compatible = "rockchip,rk3568-i2s-tdm";
956ef5c9135SNicolas Frattaroli		reg = <0x0 0xfe410000 0x0 0x1000>;
957ef5c9135SNicolas Frattaroli		interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
958ef5c9135SNicolas Frattaroli		assigned-clocks = <&cru CLK_I2S1_8CH_TX_SRC>, <&cru CLK_I2S1_8CH_RX_SRC>;
959ef5c9135SNicolas Frattaroli		assigned-clock-rates = <1188000000>, <1188000000>;
960ef5c9135SNicolas Frattaroli		clocks = <&cru MCLK_I2S1_8CH_TX>, <&cru MCLK_I2S1_8CH_RX>,
961ef5c9135SNicolas Frattaroli			 <&cru HCLK_I2S1_8CH>;
962ef5c9135SNicolas Frattaroli		clock-names = "mclk_tx", "mclk_rx", "hclk";
963ef5c9135SNicolas Frattaroli		dmas = <&dmac1 3>, <&dmac1 2>;
964ef5c9135SNicolas Frattaroli		dma-names = "rx", "tx";
965ef5c9135SNicolas Frattaroli		resets = <&cru SRST_M_I2S1_8CH_TX>, <&cru SRST_M_I2S1_8CH_RX>;
966ef5c9135SNicolas Frattaroli		reset-names = "tx-m", "rx-m";
967ef5c9135SNicolas Frattaroli		rockchip,grf = <&grf>;
968ef5c9135SNicolas Frattaroli		pinctrl-names = "default";
969ef5c9135SNicolas Frattaroli		pinctrl-0 = <&i2s1m0_sclktx &i2s1m0_sclkrx
970ef5c9135SNicolas Frattaroli			     &i2s1m0_lrcktx &i2s1m0_lrckrx
971ef5c9135SNicolas Frattaroli			     &i2s1m0_sdi0   &i2s1m0_sdi1
972ef5c9135SNicolas Frattaroli			     &i2s1m0_sdi2   &i2s1m0_sdi3
973ef5c9135SNicolas Frattaroli			     &i2s1m0_sdo0   &i2s1m0_sdo1
974ef5c9135SNicolas Frattaroli			     &i2s1m0_sdo2   &i2s1m0_sdo3>;
975ef5c9135SNicolas Frattaroli		#sound-dai-cells = <0>;
976ef5c9135SNicolas Frattaroli		status = "disabled";
977ef5c9135SNicolas Frattaroli	};
978ef5c9135SNicolas Frattaroli
979ad14de06SMichael Riesch	i2s3_2ch: i2s@fe430000 {
980ad14de06SMichael Riesch		compatible = "rockchip,rk3568-i2s-tdm";
981ad14de06SMichael Riesch		reg = <0x0 0xfe430000 0x0 0x1000>;
982ad14de06SMichael Riesch		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
983ad14de06SMichael Riesch		clocks = <&cru MCLK_I2S3_2CH_TX>, <&cru MCLK_I2S3_2CH_RX>,
984ad14de06SMichael Riesch			 <&cru HCLK_I2S3_2CH>;
985ad14de06SMichael Riesch		clock-names = "mclk_tx", "mclk_rx", "hclk";
986ad14de06SMichael Riesch		dmas = <&dmac1 6>, <&dmac1 7>;
987ad14de06SMichael Riesch		dma-names = "tx", "rx";
988ad14de06SMichael Riesch		resets = <&cru SRST_M_I2S3_2CH_TX>, <&cru SRST_M_I2S3_2CH_RX>;
989ad14de06SMichael Riesch		reset-names = "tx-m", "rx-m";
990ad14de06SMichael Riesch		rockchip,grf = <&grf>;
991ad14de06SMichael Riesch		#sound-dai-cells = <0>;
992ad14de06SMichael Riesch		status = "disabled";
993ad14de06SMichael Riesch	};
994ad14de06SMichael Riesch
99579c5f0e5SSamuel Holland	pdm: pdm@fe440000 {
99679c5f0e5SSamuel Holland		compatible = "rockchip,rk3568-pdm";
99779c5f0e5SSamuel Holland		reg = <0x0 0xfe440000 0x0 0x1000>;
99879c5f0e5SSamuel Holland		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
99979c5f0e5SSamuel Holland		clocks = <&cru MCLK_PDM>, <&cru HCLK_PDM>;
100079c5f0e5SSamuel Holland		clock-names = "pdm_clk", "pdm_hclk";
100179c5f0e5SSamuel Holland		dmas = <&dmac1 9>;
100279c5f0e5SSamuel Holland		dma-names = "rx";
100379c5f0e5SSamuel Holland		pinctrl-0 = <&pdmm0_clk
100479c5f0e5SSamuel Holland			     &pdmm0_clk1
100579c5f0e5SSamuel Holland			     &pdmm0_sdi0
100679c5f0e5SSamuel Holland			     &pdmm0_sdi1
100779c5f0e5SSamuel Holland			     &pdmm0_sdi2
100879c5f0e5SSamuel Holland			     &pdmm0_sdi3>;
100979c5f0e5SSamuel Holland		pinctrl-names = "default";
101079c5f0e5SSamuel Holland		resets = <&cru SRST_M_PDM>;
101179c5f0e5SSamuel Holland		reset-names = "pdm-m";
101279c5f0e5SSamuel Holland		#sound-dai-cells = <0>;
101379c5f0e5SSamuel Holland		status = "disabled";
101479c5f0e5SSamuel Holland	};
101579c5f0e5SSamuel Holland
10162ddd96aaSFrank Wunderlich	dmac0: dma-controller@fe530000 {
10174e50d217SPeter Geis		compatible = "arm,pl330", "arm,primecell";
10184e50d217SPeter Geis		reg = <0x0 0xfe530000 0x0 0x4000>;
10194e50d217SPeter Geis		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
10204e50d217SPeter Geis			     <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
10214e50d217SPeter Geis		arm,pl330-periph-burst;
10224e50d217SPeter Geis		clocks = <&cru ACLK_BUS>;
10234e50d217SPeter Geis		clock-names = "apb_pclk";
10244e50d217SPeter Geis		#dma-cells = <1>;
10254e50d217SPeter Geis	};
10264e50d217SPeter Geis
10272ddd96aaSFrank Wunderlich	dmac1: dma-controller@fe550000 {
10284e50d217SPeter Geis		compatible = "arm,pl330", "arm,primecell";
10294e50d217SPeter Geis		reg = <0x0 0xfe550000 0x0 0x4000>;
10304e50d217SPeter Geis		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
10314e50d217SPeter Geis			     <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
10324e50d217SPeter Geis		arm,pl330-periph-burst;
10334e50d217SPeter Geis		clocks = <&cru ACLK_BUS>;
10344e50d217SPeter Geis		clock-names = "apb_pclk";
10354e50d217SPeter Geis		#dma-cells = <1>;
10364e50d217SPeter Geis	};
10374e50d217SPeter Geis
10384e50d217SPeter Geis	i2c1: i2c@fe5a0000 {
10394e50d217SPeter Geis		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
10404e50d217SPeter Geis		reg = <0x0 0xfe5a0000 0x0 0x1000>;
10414e50d217SPeter Geis		interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
10424e50d217SPeter Geis		clocks = <&cru CLK_I2C1>, <&cru PCLK_I2C1>;
10434e50d217SPeter Geis		clock-names = "i2c", "pclk";
10444e50d217SPeter Geis		pinctrl-0 = <&i2c1_xfer>;
10454e50d217SPeter Geis		pinctrl-names = "default";
10464e50d217SPeter Geis		#address-cells = <1>;
10474e50d217SPeter Geis		#size-cells = <0>;
10484e50d217SPeter Geis		status = "disabled";
10494e50d217SPeter Geis	};
10504e50d217SPeter Geis
10514e50d217SPeter Geis	i2c2: i2c@fe5b0000 {
10524e50d217SPeter Geis		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
10534e50d217SPeter Geis		reg = <0x0 0xfe5b0000 0x0 0x1000>;
10544e50d217SPeter Geis		interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
10554e50d217SPeter Geis		clocks = <&cru CLK_I2C2>, <&cru PCLK_I2C2>;
10564e50d217SPeter Geis		clock-names = "i2c", "pclk";
10574e50d217SPeter Geis		pinctrl-0 = <&i2c2m0_xfer>;
10584e50d217SPeter Geis		pinctrl-names = "default";
10594e50d217SPeter Geis		#address-cells = <1>;
10604e50d217SPeter Geis		#size-cells = <0>;
10614e50d217SPeter Geis		status = "disabled";
10624e50d217SPeter Geis	};
10634e50d217SPeter Geis
10644e50d217SPeter Geis	i2c3: i2c@fe5c0000 {
10654e50d217SPeter Geis		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
10664e50d217SPeter Geis		reg = <0x0 0xfe5c0000 0x0 0x1000>;
10674e50d217SPeter Geis		interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
10684e50d217SPeter Geis		clocks = <&cru CLK_I2C3>, <&cru PCLK_I2C3>;
10694e50d217SPeter Geis		clock-names = "i2c", "pclk";
10704e50d217SPeter Geis		pinctrl-0 = <&i2c3m0_xfer>;
10714e50d217SPeter Geis		pinctrl-names = "default";
10724e50d217SPeter Geis		#address-cells = <1>;
10734e50d217SPeter Geis		#size-cells = <0>;
10744e50d217SPeter Geis		status = "disabled";
10754e50d217SPeter Geis	};
10764e50d217SPeter Geis
10774e50d217SPeter Geis	i2c4: i2c@fe5d0000 {
10784e50d217SPeter Geis		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
10794e50d217SPeter Geis		reg = <0x0 0xfe5d0000 0x0 0x1000>;
10804e50d217SPeter Geis		interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
10814e50d217SPeter Geis		clocks = <&cru CLK_I2C4>, <&cru PCLK_I2C4>;
10824e50d217SPeter Geis		clock-names = "i2c", "pclk";
10834e50d217SPeter Geis		pinctrl-0 = <&i2c4m0_xfer>;
10844e50d217SPeter Geis		pinctrl-names = "default";
10854e50d217SPeter Geis		#address-cells = <1>;
10864e50d217SPeter Geis		#size-cells = <0>;
10874e50d217SPeter Geis		status = "disabled";
10884e50d217SPeter Geis	};
10894e50d217SPeter Geis
10904e50d217SPeter Geis	i2c5: i2c@fe5e0000 {
10914e50d217SPeter Geis		compatible = "rockchip,rk3568-i2c", "rockchip,rk3399-i2c";
10924e50d217SPeter Geis		reg = <0x0 0xfe5e0000 0x0 0x1000>;
10934e50d217SPeter Geis		interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
10944e50d217SPeter Geis		clocks = <&cru CLK_I2C5>, <&cru PCLK_I2C5>;
10954e50d217SPeter Geis		clock-names = "i2c", "pclk";
10964e50d217SPeter Geis		pinctrl-0 = <&i2c5m0_xfer>;
10974e50d217SPeter Geis		pinctrl-names = "default";
10984e50d217SPeter Geis		#address-cells = <1>;
10994e50d217SPeter Geis		#size-cells = <0>;
11004e50d217SPeter Geis		status = "disabled";
11014e50d217SPeter Geis	};
11024e50d217SPeter Geis
11030edcfec3SLiang Chen	wdt: watchdog@fe600000 {
11040edcfec3SLiang Chen		compatible = "rockchip,rk3568-wdt", "snps,dw-wdt";
11050edcfec3SLiang Chen		reg = <0x0 0xfe600000 0x0 0x100>;
11060edcfec3SLiang Chen		interrupts = <GIC_SPI 149 IRQ_TYPE_LEVEL_HIGH>;
11070edcfec3SLiang Chen		clocks = <&cru TCLK_WDT_NS>, <&cru PCLK_WDT_NS>;
11080edcfec3SLiang Chen		clock-names = "tclk", "pclk";
11090edcfec3SLiang Chen	};
11100edcfec3SLiang Chen
1111aaa552d8SNicolas Frattaroli	spi0: spi@fe610000 {
1112aaa552d8SNicolas Frattaroli		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1113aaa552d8SNicolas Frattaroli		reg = <0x0 0xfe610000 0x0 0x1000>;
1114aaa552d8SNicolas Frattaroli		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
1115aaa552d8SNicolas Frattaroli		clocks = <&cru CLK_SPI0>, <&cru PCLK_SPI0>;
1116aaa552d8SNicolas Frattaroli		clock-names = "spiclk", "apb_pclk";
1117aaa552d8SNicolas Frattaroli		dmas = <&dmac0 20>, <&dmac0 21>;
1118aaa552d8SNicolas Frattaroli		dma-names = "tx", "rx";
1119aaa552d8SNicolas Frattaroli		pinctrl-names = "default";
1120aaa552d8SNicolas Frattaroli		pinctrl-0 = <&spi0m0_cs0 &spi0m0_cs1 &spi0m0_pins>;
1121aaa552d8SNicolas Frattaroli		#address-cells = <1>;
1122aaa552d8SNicolas Frattaroli		#size-cells = <0>;
1123aaa552d8SNicolas Frattaroli		status = "disabled";
1124aaa552d8SNicolas Frattaroli	};
1125aaa552d8SNicolas Frattaroli
1126aaa552d8SNicolas Frattaroli	spi1: spi@fe620000 {
1127aaa552d8SNicolas Frattaroli		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1128aaa552d8SNicolas Frattaroli		reg = <0x0 0xfe620000 0x0 0x1000>;
1129aaa552d8SNicolas Frattaroli		interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
1130aaa552d8SNicolas Frattaroli		clocks = <&cru CLK_SPI1>, <&cru PCLK_SPI1>;
1131aaa552d8SNicolas Frattaroli		clock-names = "spiclk", "apb_pclk";
1132aaa552d8SNicolas Frattaroli		dmas = <&dmac0 22>, <&dmac0 23>;
1133aaa552d8SNicolas Frattaroli		dma-names = "tx", "rx";
1134aaa552d8SNicolas Frattaroli		pinctrl-names = "default";
1135aaa552d8SNicolas Frattaroli		pinctrl-0 = <&spi1m0_cs0 &spi1m0_cs1 &spi1m0_pins>;
1136aaa552d8SNicolas Frattaroli		#address-cells = <1>;
1137aaa552d8SNicolas Frattaroli		#size-cells = <0>;
1138aaa552d8SNicolas Frattaroli		status = "disabled";
1139aaa552d8SNicolas Frattaroli	};
1140aaa552d8SNicolas Frattaroli
1141aaa552d8SNicolas Frattaroli	spi2: spi@fe630000 {
1142aaa552d8SNicolas Frattaroli		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1143aaa552d8SNicolas Frattaroli		reg = <0x0 0xfe630000 0x0 0x1000>;
1144aaa552d8SNicolas Frattaroli		interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
1145aaa552d8SNicolas Frattaroli		clocks = <&cru CLK_SPI2>, <&cru PCLK_SPI2>;
1146aaa552d8SNicolas Frattaroli		clock-names = "spiclk", "apb_pclk";
1147aaa552d8SNicolas Frattaroli		dmas = <&dmac0 24>, <&dmac0 25>;
1148aaa552d8SNicolas Frattaroli		dma-names = "tx", "rx";
1149aaa552d8SNicolas Frattaroli		pinctrl-names = "default";
1150aaa552d8SNicolas Frattaroli		pinctrl-0 = <&spi2m0_cs0 &spi2m0_cs1 &spi2m0_pins>;
1151aaa552d8SNicolas Frattaroli		#address-cells = <1>;
1152aaa552d8SNicolas Frattaroli		#size-cells = <0>;
1153aaa552d8SNicolas Frattaroli		status = "disabled";
1154aaa552d8SNicolas Frattaroli	};
1155aaa552d8SNicolas Frattaroli
1156aaa552d8SNicolas Frattaroli	spi3: spi@fe640000 {
1157aaa552d8SNicolas Frattaroli		compatible = "rockchip,rk3568-spi", "rockchip,rk3066-spi";
1158aaa552d8SNicolas Frattaroli		reg = <0x0 0xfe640000 0x0 0x1000>;
1159aaa552d8SNicolas Frattaroli		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
1160aaa552d8SNicolas Frattaroli		clocks = <&cru CLK_SPI3>, <&cru PCLK_SPI3>;
1161aaa552d8SNicolas Frattaroli		clock-names = "spiclk", "apb_pclk";
1162aaa552d8SNicolas Frattaroli		dmas = <&dmac0 26>, <&dmac0 27>;
1163aaa552d8SNicolas Frattaroli		dma-names = "tx", "rx";
1164aaa552d8SNicolas Frattaroli		pinctrl-names = "default";
1165aaa552d8SNicolas Frattaroli		pinctrl-0 = <&spi3m0_cs0 &spi3m0_cs1 &spi3m0_pins>;
1166aaa552d8SNicolas Frattaroli		#address-cells = <1>;
1167aaa552d8SNicolas Frattaroli		#size-cells = <0>;
1168aaa552d8SNicolas Frattaroli		status = "disabled";
1169aaa552d8SNicolas Frattaroli	};
1170aaa552d8SNicolas Frattaroli
11714e50d217SPeter Geis	uart1: serial@fe650000 {
11724e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
11734e50d217SPeter Geis		reg = <0x0 0xfe650000 0x0 0x100>;
11744e50d217SPeter Geis		interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
11754e50d217SPeter Geis		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
11764e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
11774e50d217SPeter Geis		dmas = <&dmac0 2>, <&dmac0 3>;
11784e50d217SPeter Geis		pinctrl-0 = <&uart1m0_xfer>;
11794e50d217SPeter Geis		pinctrl-names = "default";
11804e50d217SPeter Geis		reg-io-width = <4>;
11814e50d217SPeter Geis		reg-shift = <2>;
11824e50d217SPeter Geis		status = "disabled";
11834e50d217SPeter Geis	};
11844e50d217SPeter Geis
11854e50d217SPeter Geis	uart2: serial@fe660000 {
11864e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
11874e50d217SPeter Geis		reg = <0x0 0xfe660000 0x0 0x100>;
11884e50d217SPeter Geis		interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
11894e50d217SPeter Geis		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
11904e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
11914e50d217SPeter Geis		dmas = <&dmac0 4>, <&dmac0 5>;
11924e50d217SPeter Geis		pinctrl-0 = <&uart2m0_xfer>;
11934e50d217SPeter Geis		pinctrl-names = "default";
11944e50d217SPeter Geis		reg-io-width = <4>;
11954e50d217SPeter Geis		reg-shift = <2>;
11964e50d217SPeter Geis		status = "disabled";
11974e50d217SPeter Geis	};
11984e50d217SPeter Geis
11994e50d217SPeter Geis	uart3: serial@fe670000 {
12004e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12014e50d217SPeter Geis		reg = <0x0 0xfe670000 0x0 0x100>;
12024e50d217SPeter Geis		interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
12034e50d217SPeter Geis		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
12044e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12054e50d217SPeter Geis		dmas = <&dmac0 6>, <&dmac0 7>;
12064e50d217SPeter Geis		pinctrl-0 = <&uart3m0_xfer>;
12074e50d217SPeter Geis		pinctrl-names = "default";
12084e50d217SPeter Geis		reg-io-width = <4>;
12094e50d217SPeter Geis		reg-shift = <2>;
12104e50d217SPeter Geis		status = "disabled";
12114e50d217SPeter Geis	};
12124e50d217SPeter Geis
12134e50d217SPeter Geis	uart4: serial@fe680000 {
12144e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12154e50d217SPeter Geis		reg = <0x0 0xfe680000 0x0 0x100>;
12164e50d217SPeter Geis		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
12174e50d217SPeter Geis		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
12184e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12194e50d217SPeter Geis		dmas = <&dmac0 8>, <&dmac0 9>;
12204e50d217SPeter Geis		pinctrl-0 = <&uart4m0_xfer>;
12214e50d217SPeter Geis		pinctrl-names = "default";
12224e50d217SPeter Geis		reg-io-width = <4>;
12234e50d217SPeter Geis		reg-shift = <2>;
12244e50d217SPeter Geis		status = "disabled";
12254e50d217SPeter Geis	};
12264e50d217SPeter Geis
12274e50d217SPeter Geis	uart5: serial@fe690000 {
12284e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12294e50d217SPeter Geis		reg = <0x0 0xfe690000 0x0 0x100>;
12304e50d217SPeter Geis		interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
12314e50d217SPeter Geis		clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>;
12324e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12334e50d217SPeter Geis		dmas = <&dmac0 10>, <&dmac0 11>;
12344e50d217SPeter Geis		pinctrl-0 = <&uart5m0_xfer>;
12354e50d217SPeter Geis		pinctrl-names = "default";
12364e50d217SPeter Geis		reg-io-width = <4>;
12374e50d217SPeter Geis		reg-shift = <2>;
12384e50d217SPeter Geis		status = "disabled";
12394e50d217SPeter Geis	};
12404e50d217SPeter Geis
12414e50d217SPeter Geis	uart6: serial@fe6a0000 {
12424e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12434e50d217SPeter Geis		reg = <0x0 0xfe6a0000 0x0 0x100>;
12444e50d217SPeter Geis		interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
12454e50d217SPeter Geis		clocks = <&cru SCLK_UART6>, <&cru PCLK_UART6>;
12464e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12474e50d217SPeter Geis		dmas = <&dmac0 12>, <&dmac0 13>;
12484e50d217SPeter Geis		pinctrl-0 = <&uart6m0_xfer>;
12494e50d217SPeter Geis		pinctrl-names = "default";
12504e50d217SPeter Geis		reg-io-width = <4>;
12514e50d217SPeter Geis		reg-shift = <2>;
12524e50d217SPeter Geis		status = "disabled";
12534e50d217SPeter Geis	};
12544e50d217SPeter Geis
12554e50d217SPeter Geis	uart7: serial@fe6b0000 {
12564e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12574e50d217SPeter Geis		reg = <0x0 0xfe6b0000 0x0 0x100>;
12584e50d217SPeter Geis		interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
12594e50d217SPeter Geis		clocks = <&cru SCLK_UART7>, <&cru PCLK_UART7>;
12604e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12614e50d217SPeter Geis		dmas = <&dmac0 14>, <&dmac0 15>;
12624e50d217SPeter Geis		pinctrl-0 = <&uart7m0_xfer>;
12634e50d217SPeter Geis		pinctrl-names = "default";
12644e50d217SPeter Geis		reg-io-width = <4>;
12654e50d217SPeter Geis		reg-shift = <2>;
12664e50d217SPeter Geis		status = "disabled";
12674e50d217SPeter Geis	};
12684e50d217SPeter Geis
12694e50d217SPeter Geis	uart8: serial@fe6c0000 {
12704e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12714e50d217SPeter Geis		reg = <0x0 0xfe6c0000 0x0 0x100>;
12724e50d217SPeter Geis		interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
12734e50d217SPeter Geis		clocks = <&cru SCLK_UART8>, <&cru PCLK_UART8>;
12744e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12754e50d217SPeter Geis		dmas = <&dmac0 16>, <&dmac0 17>;
12764e50d217SPeter Geis		pinctrl-0 = <&uart8m0_xfer>;
12774e50d217SPeter Geis		pinctrl-names = "default";
12784e50d217SPeter Geis		reg-io-width = <4>;
12794e50d217SPeter Geis		reg-shift = <2>;
12804e50d217SPeter Geis		status = "disabled";
12814e50d217SPeter Geis	};
12824e50d217SPeter Geis
12834e50d217SPeter Geis	uart9: serial@fe6d0000 {
12844e50d217SPeter Geis		compatible = "rockchip,rk3568-uart", "snps,dw-apb-uart";
12854e50d217SPeter Geis		reg = <0x0 0xfe6d0000 0x0 0x100>;
12864e50d217SPeter Geis		interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
12874e50d217SPeter Geis		clocks = <&cru SCLK_UART9>, <&cru PCLK_UART9>;
12884e50d217SPeter Geis		clock-names = "baudclk", "apb_pclk";
12894e50d217SPeter Geis		dmas = <&dmac0 18>, <&dmac0 19>;
12904e50d217SPeter Geis		pinctrl-0 = <&uart9m0_xfer>;
12914e50d217SPeter Geis		pinctrl-names = "default";
12924e50d217SPeter Geis		reg-io-width = <4>;
12934e50d217SPeter Geis		reg-shift = <2>;
12944e50d217SPeter Geis		status = "disabled";
12954e50d217SPeter Geis	};
12964e50d217SPeter Geis
12971330875dSPeter Geis	thermal_zones: thermal-zones {
12981330875dSPeter Geis		cpu_thermal: cpu-thermal {
12991330875dSPeter Geis			polling-delay-passive = <100>;
13001330875dSPeter Geis			polling-delay = <1000>;
13011330875dSPeter Geis
13021330875dSPeter Geis			thermal-sensors = <&tsadc 0>;
13031330875dSPeter Geis
13041330875dSPeter Geis			trips {
13051330875dSPeter Geis				cpu_alert0: cpu_alert0 {
13061330875dSPeter Geis					temperature = <70000>;
13071330875dSPeter Geis					hysteresis = <2000>;
13081330875dSPeter Geis					type = "passive";
13091330875dSPeter Geis				};
13101330875dSPeter Geis				cpu_alert1: cpu_alert1 {
13111330875dSPeter Geis					temperature = <75000>;
13121330875dSPeter Geis					hysteresis = <2000>;
13131330875dSPeter Geis					type = "passive";
13141330875dSPeter Geis				};
13151330875dSPeter Geis				cpu_crit: cpu_crit {
13161330875dSPeter Geis					temperature = <95000>;
13171330875dSPeter Geis					hysteresis = <2000>;
13181330875dSPeter Geis					type = "critical";
13191330875dSPeter Geis				};
13201330875dSPeter Geis			};
13211330875dSPeter Geis
13221330875dSPeter Geis			cooling-maps {
13231330875dSPeter Geis				map0 {
13241330875dSPeter Geis					trip = <&cpu_alert0>;
13251330875dSPeter Geis					cooling-device =
13261330875dSPeter Geis						<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
13271330875dSPeter Geis						<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
13281330875dSPeter Geis						<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
13291330875dSPeter Geis						<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
13301330875dSPeter Geis				};
13311330875dSPeter Geis			};
13321330875dSPeter Geis		};
13331330875dSPeter Geis
13341330875dSPeter Geis		gpu_thermal: gpu-thermal {
13351330875dSPeter Geis			polling-delay-passive = <20>; /* milliseconds */
13361330875dSPeter Geis			polling-delay = <1000>; /* milliseconds */
13371330875dSPeter Geis
13381330875dSPeter Geis			thermal-sensors = <&tsadc 1>;
1339c0a7259fSAlex Bee
1340c0a7259fSAlex Bee			trips {
1341c0a7259fSAlex Bee				gpu_threshold: gpu-threshold {
1342c0a7259fSAlex Bee					temperature = <70000>;
1343c0a7259fSAlex Bee					hysteresis = <2000>;
1344c0a7259fSAlex Bee					type = "passive";
1345c0a7259fSAlex Bee				};
1346c0a7259fSAlex Bee				gpu_target: gpu-target {
1347c0a7259fSAlex Bee					temperature = <75000>;
1348c0a7259fSAlex Bee					hysteresis = <2000>;
1349c0a7259fSAlex Bee					type = "passive";
1350c0a7259fSAlex Bee				};
1351c0a7259fSAlex Bee				gpu_crit: gpu-crit {
1352c0a7259fSAlex Bee					temperature = <95000>;
1353c0a7259fSAlex Bee					hysteresis = <2000>;
1354c0a7259fSAlex Bee					type = "critical";
1355c0a7259fSAlex Bee				};
1356c0a7259fSAlex Bee			};
1357c0a7259fSAlex Bee
1358c0a7259fSAlex Bee			cooling-maps {
1359c0a7259fSAlex Bee				map0 {
1360c0a7259fSAlex Bee					trip = <&gpu_target>;
1361c0a7259fSAlex Bee					cooling-device =
1362c0a7259fSAlex Bee						<&gpu THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
1363c0a7259fSAlex Bee				};
1364c0a7259fSAlex Bee			};
13651330875dSPeter Geis		};
13661330875dSPeter Geis	};
13671330875dSPeter Geis
13681330875dSPeter Geis	tsadc: tsadc@fe710000 {
13691330875dSPeter Geis		compatible = "rockchip,rk3568-tsadc";
13701330875dSPeter Geis		reg = <0x0 0xfe710000 0x0 0x100>;
13711330875dSPeter Geis		interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
13721330875dSPeter Geis		assigned-clocks = <&cru CLK_TSADC_TSEN>, <&cru CLK_TSADC>;
13731330875dSPeter Geis		assigned-clock-rates = <17000000>, <700000>;
13741330875dSPeter Geis		clocks = <&cru CLK_TSADC>, <&cru PCLK_TSADC>;
13751330875dSPeter Geis		clock-names = "tsadc", "apb_pclk";
13765c9e66c6SJohan Jonker		resets = <&cru SRST_P_TSADC>, <&cru SRST_TSADC>,
13771330875dSPeter Geis			 <&cru SRST_TSADCPHY>;
13781330875dSPeter Geis		rockchip,grf = <&grf>;
13791330875dSPeter Geis		rockchip,hw-tshut-temp = <95000>;
13801330875dSPeter Geis		pinctrl-names = "init", "default", "sleep";
13811330875dSPeter Geis		pinctrl-0 = <&tsadc_pin>;
13821330875dSPeter Geis		pinctrl-1 = <&tsadc_shutorg>;
13831330875dSPeter Geis		pinctrl-2 = <&tsadc_pin>;
13841330875dSPeter Geis		#thermal-sensor-cells = <1>;
13851330875dSPeter Geis		status = "disabled";
13861330875dSPeter Geis	};
13871330875dSPeter Geis
13884e50d217SPeter Geis	saradc: saradc@fe720000 {
13894e50d217SPeter Geis		compatible = "rockchip,rk3568-saradc", "rockchip,rk3399-saradc";
13904e50d217SPeter Geis		reg = <0x0 0xfe720000 0x0 0x100>;
13914e50d217SPeter Geis		interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
13924e50d217SPeter Geis		clocks = <&cru CLK_SARADC>, <&cru PCLK_SARADC>;
13934e50d217SPeter Geis		clock-names = "saradc", "apb_pclk";
13944e50d217SPeter Geis		resets = <&cru SRST_P_SARADC>;
13954e50d217SPeter Geis		reset-names = "saradc-apb";
13964e50d217SPeter Geis		#io-channel-cells = <1>;
13974e50d217SPeter Geis		status = "disabled";
13984e50d217SPeter Geis	};
13994e50d217SPeter Geis
140098419a39SLiang Chen	pwm4: pwm@fe6e0000 {
140198419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
140298419a39SLiang Chen		reg = <0x0 0xfe6e0000 0x0 0x10>;
140398419a39SLiang Chen		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
140498419a39SLiang Chen		clock-names = "pwm", "pclk";
140598419a39SLiang Chen		pinctrl-0 = <&pwm4_pins>;
14062e4dbcf7SSascha Hauer		pinctrl-names = "default";
140798419a39SLiang Chen		#pwm-cells = <3>;
140898419a39SLiang Chen		status = "disabled";
140998419a39SLiang Chen	};
141098419a39SLiang Chen
141198419a39SLiang Chen	pwm5: pwm@fe6e0010 {
141298419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
141398419a39SLiang Chen		reg = <0x0 0xfe6e0010 0x0 0x10>;
141498419a39SLiang Chen		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
141598419a39SLiang Chen		clock-names = "pwm", "pclk";
141698419a39SLiang Chen		pinctrl-0 = <&pwm5_pins>;
14172e4dbcf7SSascha Hauer		pinctrl-names = "default";
141898419a39SLiang Chen		#pwm-cells = <3>;
141998419a39SLiang Chen		status = "disabled";
142098419a39SLiang Chen	};
142198419a39SLiang Chen
142298419a39SLiang Chen	pwm6: pwm@fe6e0020 {
142398419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
142498419a39SLiang Chen		reg = <0x0 0xfe6e0020 0x0 0x10>;
142598419a39SLiang Chen		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
142698419a39SLiang Chen		clock-names = "pwm", "pclk";
142798419a39SLiang Chen		pinctrl-0 = <&pwm6_pins>;
14282e4dbcf7SSascha Hauer		pinctrl-names = "default";
142998419a39SLiang Chen		#pwm-cells = <3>;
143098419a39SLiang Chen		status = "disabled";
143198419a39SLiang Chen	};
143298419a39SLiang Chen
143398419a39SLiang Chen	pwm7: pwm@fe6e0030 {
143498419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
143598419a39SLiang Chen		reg = <0x0 0xfe6e0030 0x0 0x10>;
143698419a39SLiang Chen		clocks = <&cru CLK_PWM1>, <&cru PCLK_PWM1>;
143798419a39SLiang Chen		clock-names = "pwm", "pclk";
143898419a39SLiang Chen		pinctrl-0 = <&pwm7_pins>;
14392e4dbcf7SSascha Hauer		pinctrl-names = "default";
144098419a39SLiang Chen		#pwm-cells = <3>;
144198419a39SLiang Chen		status = "disabled";
144298419a39SLiang Chen	};
144398419a39SLiang Chen
144498419a39SLiang Chen	pwm8: pwm@fe6f0000 {
144598419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
144698419a39SLiang Chen		reg = <0x0 0xfe6f0000 0x0 0x10>;
144798419a39SLiang Chen		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
144898419a39SLiang Chen		clock-names = "pwm", "pclk";
144998419a39SLiang Chen		pinctrl-0 = <&pwm8m0_pins>;
14502e4dbcf7SSascha Hauer		pinctrl-names = "default";
145198419a39SLiang Chen		#pwm-cells = <3>;
145298419a39SLiang Chen		status = "disabled";
145398419a39SLiang Chen	};
145498419a39SLiang Chen
145598419a39SLiang Chen	pwm9: pwm@fe6f0010 {
145698419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
145798419a39SLiang Chen		reg = <0x0 0xfe6f0010 0x0 0x10>;
145898419a39SLiang Chen		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
145998419a39SLiang Chen		clock-names = "pwm", "pclk";
146098419a39SLiang Chen		pinctrl-0 = <&pwm9m0_pins>;
14612e4dbcf7SSascha Hauer		pinctrl-names = "default";
146298419a39SLiang Chen		#pwm-cells = <3>;
146398419a39SLiang Chen		status = "disabled";
146498419a39SLiang Chen	};
146598419a39SLiang Chen
146698419a39SLiang Chen	pwm10: pwm@fe6f0020 {
146798419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
146898419a39SLiang Chen		reg = <0x0 0xfe6f0020 0x0 0x10>;
146998419a39SLiang Chen		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
147098419a39SLiang Chen		clock-names = "pwm", "pclk";
147198419a39SLiang Chen		pinctrl-0 = <&pwm10m0_pins>;
14722e4dbcf7SSascha Hauer		pinctrl-names = "default";
147398419a39SLiang Chen		#pwm-cells = <3>;
147498419a39SLiang Chen		status = "disabled";
147598419a39SLiang Chen	};
147698419a39SLiang Chen
147798419a39SLiang Chen	pwm11: pwm@fe6f0030 {
147898419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
147998419a39SLiang Chen		reg = <0x0 0xfe6f0030 0x0 0x10>;
148098419a39SLiang Chen		clocks = <&cru CLK_PWM2>, <&cru PCLK_PWM2>;
148198419a39SLiang Chen		clock-names = "pwm", "pclk";
148298419a39SLiang Chen		pinctrl-0 = <&pwm11m0_pins>;
14832e4dbcf7SSascha Hauer		pinctrl-names = "default";
148498419a39SLiang Chen		#pwm-cells = <3>;
148598419a39SLiang Chen		status = "disabled";
148698419a39SLiang Chen	};
148798419a39SLiang Chen
148898419a39SLiang Chen	pwm12: pwm@fe700000 {
148998419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
149098419a39SLiang Chen		reg = <0x0 0xfe700000 0x0 0x10>;
149198419a39SLiang Chen		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
149298419a39SLiang Chen		clock-names = "pwm", "pclk";
149398419a39SLiang Chen		pinctrl-0 = <&pwm12m0_pins>;
14942e4dbcf7SSascha Hauer		pinctrl-names = "default";
149598419a39SLiang Chen		#pwm-cells = <3>;
149698419a39SLiang Chen		status = "disabled";
149798419a39SLiang Chen	};
149898419a39SLiang Chen
149998419a39SLiang Chen	pwm13: pwm@fe700010 {
150098419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
150198419a39SLiang Chen		reg = <0x0 0xfe700010 0x0 0x10>;
150298419a39SLiang Chen		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
150398419a39SLiang Chen		clock-names = "pwm", "pclk";
150498419a39SLiang Chen		pinctrl-0 = <&pwm13m0_pins>;
15052e4dbcf7SSascha Hauer		pinctrl-names = "default";
150698419a39SLiang Chen		#pwm-cells = <3>;
150798419a39SLiang Chen		status = "disabled";
150898419a39SLiang Chen	};
150998419a39SLiang Chen
151098419a39SLiang Chen	pwm14: pwm@fe700020 {
151198419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
151298419a39SLiang Chen		reg = <0x0 0xfe700020 0x0 0x10>;
151398419a39SLiang Chen		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
151498419a39SLiang Chen		clock-names = "pwm", "pclk";
151598419a39SLiang Chen		pinctrl-0 = <&pwm14m0_pins>;
15162e4dbcf7SSascha Hauer		pinctrl-names = "default";
151798419a39SLiang Chen		#pwm-cells = <3>;
151898419a39SLiang Chen		status = "disabled";
151998419a39SLiang Chen	};
152098419a39SLiang Chen
152198419a39SLiang Chen	pwm15: pwm@fe700030 {
152298419a39SLiang Chen		compatible = "rockchip,rk3568-pwm", "rockchip,rk3328-pwm";
152398419a39SLiang Chen		reg = <0x0 0xfe700030 0x0 0x10>;
152498419a39SLiang Chen		clocks = <&cru CLK_PWM3>, <&cru PCLK_PWM3>;
152598419a39SLiang Chen		clock-names = "pwm", "pclk";
152698419a39SLiang Chen		pinctrl-0 = <&pwm15m0_pins>;
15272e4dbcf7SSascha Hauer		pinctrl-names = "default";
152898419a39SLiang Chen		#pwm-cells = <3>;
152998419a39SLiang Chen		status = "disabled";
153098419a39SLiang Chen	};
153198419a39SLiang Chen
15323cc8cd2dSYifeng Zhao	combphy1: phy@fe830000 {
15333cc8cd2dSYifeng Zhao		compatible = "rockchip,rk3568-naneng-combphy";
15343cc8cd2dSYifeng Zhao		reg = <0x0 0xfe830000 0x0 0x100>;
15353cc8cd2dSYifeng Zhao		clocks = <&pmucru CLK_PCIEPHY1_REF>,
15363cc8cd2dSYifeng Zhao			 <&cru PCLK_PIPEPHY1>,
15373cc8cd2dSYifeng Zhao			 <&cru PCLK_PIPE>;
15383cc8cd2dSYifeng Zhao		clock-names = "ref", "apb", "pipe";
15393cc8cd2dSYifeng Zhao		assigned-clocks = <&pmucru CLK_PCIEPHY1_REF>;
15403cc8cd2dSYifeng Zhao		assigned-clock-rates = <100000000>;
15413cc8cd2dSYifeng Zhao		resets = <&cru SRST_PIPEPHY1>;
15423cc8cd2dSYifeng Zhao		rockchip,pipe-grf = <&pipegrf>;
15433cc8cd2dSYifeng Zhao		rockchip,pipe-phy-grf = <&pipe_phy_grf1>;
15443cc8cd2dSYifeng Zhao		#phy-cells = <1>;
15453cc8cd2dSYifeng Zhao		status = "disabled";
15463cc8cd2dSYifeng Zhao	};
15473cc8cd2dSYifeng Zhao
15483cc8cd2dSYifeng Zhao	combphy2: phy@fe840000 {
15493cc8cd2dSYifeng Zhao		compatible = "rockchip,rk3568-naneng-combphy";
15503cc8cd2dSYifeng Zhao		reg = <0x0 0xfe840000 0x0 0x100>;
15513cc8cd2dSYifeng Zhao		clocks = <&pmucru CLK_PCIEPHY2_REF>,
15523cc8cd2dSYifeng Zhao			 <&cru PCLK_PIPEPHY2>,
15533cc8cd2dSYifeng Zhao			 <&cru PCLK_PIPE>;
15543cc8cd2dSYifeng Zhao		clock-names = "ref", "apb", "pipe";
15553cc8cd2dSYifeng Zhao		assigned-clocks = <&pmucru CLK_PCIEPHY2_REF>;
15563cc8cd2dSYifeng Zhao		assigned-clock-rates = <100000000>;
15573cc8cd2dSYifeng Zhao		resets = <&cru SRST_PIPEPHY2>;
15583cc8cd2dSYifeng Zhao		rockchip,pipe-grf = <&pipegrf>;
15593cc8cd2dSYifeng Zhao		rockchip,pipe-phy-grf = <&pipe_phy_grf2>;
15603cc8cd2dSYifeng Zhao		#phy-cells = <1>;
15613cc8cd2dSYifeng Zhao		status = "disabled";
15623cc8cd2dSYifeng Zhao	};
15633cc8cd2dSYifeng Zhao
156478f71860SMichael Riesch	usb2phy0: usb2phy@fe8a0000 {
156591c4c3e0SPeter Geis		compatible = "rockchip,rk3568-usb2phy";
156691c4c3e0SPeter Geis		reg = <0x0 0xfe8a0000 0x0 0x10000>;
156791c4c3e0SPeter Geis		clocks = <&pmucru CLK_USBPHY0_REF>;
156891c4c3e0SPeter Geis		clock-names = "phyclk";
156991c4c3e0SPeter Geis		clock-output-names = "clk_usbphy0_480m";
157091c4c3e0SPeter Geis		interrupts = <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>;
157191c4c3e0SPeter Geis		rockchip,usbgrf = <&usb2phy0_grf>;
157291c4c3e0SPeter Geis		#clock-cells = <0>;
157391c4c3e0SPeter Geis		status = "disabled";
157491c4c3e0SPeter Geis
157578f71860SMichael Riesch		usb2phy0_host: host-port {
157691c4c3e0SPeter Geis			#phy-cells = <0>;
157791c4c3e0SPeter Geis			status = "disabled";
157891c4c3e0SPeter Geis		};
157991c4c3e0SPeter Geis
158078f71860SMichael Riesch		usb2phy0_otg: otg-port {
158191c4c3e0SPeter Geis			#phy-cells = <0>;
158291c4c3e0SPeter Geis			status = "disabled";
158391c4c3e0SPeter Geis		};
158491c4c3e0SPeter Geis	};
158591c4c3e0SPeter Geis
158678f71860SMichael Riesch	usb2phy1: usb2phy@fe8b0000 {
158791c4c3e0SPeter Geis		compatible = "rockchip,rk3568-usb2phy";
158891c4c3e0SPeter Geis		reg = <0x0 0xfe8b0000 0x0 0x10000>;
158991c4c3e0SPeter Geis		clocks = <&pmucru CLK_USBPHY1_REF>;
159091c4c3e0SPeter Geis		clock-names = "phyclk";
159191c4c3e0SPeter Geis		clock-output-names = "clk_usbphy1_480m";
159291c4c3e0SPeter Geis		interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>;
159391c4c3e0SPeter Geis		rockchip,usbgrf = <&usb2phy1_grf>;
159491c4c3e0SPeter Geis		#clock-cells = <0>;
159591c4c3e0SPeter Geis		status = "disabled";
159691c4c3e0SPeter Geis
159778f71860SMichael Riesch		usb2phy1_host: host-port {
159891c4c3e0SPeter Geis			#phy-cells = <0>;
159991c4c3e0SPeter Geis			status = "disabled";
160091c4c3e0SPeter Geis		};
160191c4c3e0SPeter Geis
160278f71860SMichael Riesch		usb2phy1_otg: otg-port {
160391c4c3e0SPeter Geis			#phy-cells = <0>;
160491c4c3e0SPeter Geis			status = "disabled";
160591c4c3e0SPeter Geis		};
160691c4c3e0SPeter Geis	};
160791c4c3e0SPeter Geis
16084e50d217SPeter Geis	pinctrl: pinctrl {
16094e50d217SPeter Geis		compatible = "rockchip,rk3568-pinctrl";
16104e50d217SPeter Geis		rockchip,grf = <&grf>;
16114e50d217SPeter Geis		rockchip,pmu = <&pmugrf>;
16124e50d217SPeter Geis		#address-cells = <2>;
16134e50d217SPeter Geis		#size-cells = <2>;
16144e50d217SPeter Geis		ranges;
16154e50d217SPeter Geis
16164e50d217SPeter Geis		gpio0: gpio@fdd60000 {
16174e50d217SPeter Geis			compatible = "rockchip,gpio-bank";
16184e50d217SPeter Geis			reg = <0x0 0xfdd60000 0x0 0x100>;
16194e50d217SPeter Geis			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
16203d9170c3SPeter Geis			clocks = <&pmucru PCLK_GPIO0>, <&pmucru DBCLK_GPIO0>;
16214e50d217SPeter Geis			gpio-controller;
16224e50d217SPeter Geis			#gpio-cells = <2>;
16234e50d217SPeter Geis			interrupt-controller;
16244e50d217SPeter Geis			#interrupt-cells = <2>;
16254e50d217SPeter Geis		};
16264e50d217SPeter Geis
16274e50d217SPeter Geis		gpio1: gpio@fe740000 {
16284e50d217SPeter Geis			compatible = "rockchip,gpio-bank";
16294e50d217SPeter Geis			reg = <0x0 0xfe740000 0x0 0x100>;
16304e50d217SPeter Geis			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
16313d9170c3SPeter Geis			clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>;
16324e50d217SPeter Geis			gpio-controller;
16334e50d217SPeter Geis			#gpio-cells = <2>;
16344e50d217SPeter Geis			interrupt-controller;
16354e50d217SPeter Geis			#interrupt-cells = <2>;
16364e50d217SPeter Geis		};
16374e50d217SPeter Geis
16384e50d217SPeter Geis		gpio2: gpio@fe750000 {
16394e50d217SPeter Geis			compatible = "rockchip,gpio-bank";
16404e50d217SPeter Geis			reg = <0x0 0xfe750000 0x0 0x100>;
16414e50d217SPeter Geis			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
16423d9170c3SPeter Geis			clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>;
16434e50d217SPeter Geis			gpio-controller;
16444e50d217SPeter Geis			#gpio-cells = <2>;
16454e50d217SPeter Geis			interrupt-controller;
16464e50d217SPeter Geis			#interrupt-cells = <2>;
16474e50d217SPeter Geis		};
16484e50d217SPeter Geis
16494e50d217SPeter Geis		gpio3: gpio@fe760000 {
16504e50d217SPeter Geis			compatible = "rockchip,gpio-bank";
16514e50d217SPeter Geis			reg = <0x0 0xfe760000 0x0 0x100>;
16524e50d217SPeter Geis			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
16533d9170c3SPeter Geis			clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>;
16544e50d217SPeter Geis			gpio-controller;
16554e50d217SPeter Geis			#gpio-cells = <2>;
16564e50d217SPeter Geis			interrupt-controller;
16574e50d217SPeter Geis			#interrupt-cells = <2>;
16584e50d217SPeter Geis		};
16594e50d217SPeter Geis
16604e50d217SPeter Geis		gpio4: gpio@fe770000 {
16614e50d217SPeter Geis			compatible = "rockchip,gpio-bank";
16624e50d217SPeter Geis			reg = <0x0 0xfe770000 0x0 0x100>;
16634e50d217SPeter Geis			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
16643d9170c3SPeter Geis			clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>;
16654e50d217SPeter Geis			gpio-controller;
16664e50d217SPeter Geis			#gpio-cells = <2>;
16674e50d217SPeter Geis			interrupt-controller;
16684e50d217SPeter Geis			#interrupt-cells = <2>;
16694e50d217SPeter Geis		};
16704e50d217SPeter Geis	};
16714e50d217SPeter Geis};
16724e50d217SPeter Geis
16734e50d217SPeter Geis#include "rk3568-pinctrl.dtsi"
1674