xref: /linux/arch/arm64/boot/dts/rockchip/rk3328.dtsi (revision 20590de2802155e65968e7569587f3dd29218d50)
152e02d37SLiang Chen/*
252e02d37SLiang Chen * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd
352e02d37SLiang Chen *
452e02d37SLiang Chen * This file is dual-licensed: you can use it either under the terms
552e02d37SLiang Chen * of the GPL or the X11 license, at your option. Note that this dual
652e02d37SLiang Chen * licensing only applies to this file, and not this project as a
752e02d37SLiang Chen * whole.
852e02d37SLiang Chen *
952e02d37SLiang Chen *  a) This library is free software; you can redistribute it and/or
1052e02d37SLiang Chen *     modify it under the terms of the GNU General Public License as
1152e02d37SLiang Chen *     published by the Free Software Foundation; either version 2 of the
1252e02d37SLiang Chen *     License, or (at your option) any later version.
1352e02d37SLiang Chen *
1452e02d37SLiang Chen *     This library is distributed in the hope that it will be useful,
1552e02d37SLiang Chen *     but WITHOUT ANY WARRANTY; without even the implied warranty of
1652e02d37SLiang Chen *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1752e02d37SLiang Chen *     GNU General Public License for more details.
1852e02d37SLiang Chen *
1952e02d37SLiang Chen * Or, alternatively,
2052e02d37SLiang Chen *
2152e02d37SLiang Chen *  b) Permission is hereby granted, free of charge, to any person
2252e02d37SLiang Chen *     obtaining a copy of this software and associated documentation
2352e02d37SLiang Chen *     files (the "Software"), to deal in the Software without
2452e02d37SLiang Chen *     restriction, including without limitation the rights to use,
2552e02d37SLiang Chen *     copy, modify, merge, publish, distribute, sublicense, and/or
2652e02d37SLiang Chen *     sell copies of the Software, and to permit persons to whom the
2752e02d37SLiang Chen *     Software is furnished to do so, subject to the following
2852e02d37SLiang Chen *     conditions:
2952e02d37SLiang Chen *
3052e02d37SLiang Chen *     The above copyright notice and this permission notice shall be
3152e02d37SLiang Chen *     included in all copies or substantial portions of the Software.
3252e02d37SLiang Chen *
3352e02d37SLiang Chen *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
3452e02d37SLiang Chen *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
3552e02d37SLiang Chen *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
3652e02d37SLiang Chen *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
3752e02d37SLiang Chen *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
3852e02d37SLiang Chen *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
3952e02d37SLiang Chen *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4052e02d37SLiang Chen *     OTHER DEALINGS IN THE SOFTWARE.
4152e02d37SLiang Chen */
4252e02d37SLiang Chen
4352e02d37SLiang Chen#include <dt-bindings/clock/rk3328-cru.h>
4452e02d37SLiang Chen#include <dt-bindings/gpio/gpio.h>
4552e02d37SLiang Chen#include <dt-bindings/interrupt-controller/arm-gic.h>
4652e02d37SLiang Chen#include <dt-bindings/interrupt-controller/irq.h>
4752e02d37SLiang Chen#include <dt-bindings/pinctrl/rockchip.h>
4852e02d37SLiang Chen#include <dt-bindings/power/rk3328-power.h>
4952e02d37SLiang Chen#include <dt-bindings/soc/rockchip,boot-mode.h>
5052e02d37SLiang Chen
5152e02d37SLiang Chen/ {
5252e02d37SLiang Chen	compatible = "rockchip,rk3328";
5352e02d37SLiang Chen
5452e02d37SLiang Chen	interrupt-parent = <&gic>;
5552e02d37SLiang Chen	#address-cells = <2>;
5652e02d37SLiang Chen	#size-cells = <2>;
5752e02d37SLiang Chen
5852e02d37SLiang Chen	aliases {
5952e02d37SLiang Chen		serial0 = &uart0;
6052e02d37SLiang Chen		serial1 = &uart1;
6152e02d37SLiang Chen		serial2 = &uart2;
6252e02d37SLiang Chen		i2c0 = &i2c0;
6352e02d37SLiang Chen		i2c1 = &i2c1;
6452e02d37SLiang Chen		i2c2 = &i2c2;
6552e02d37SLiang Chen		i2c3 = &i2c3;
6652e02d37SLiang Chen	};
6752e02d37SLiang Chen
6852e02d37SLiang Chen	cpus {
6952e02d37SLiang Chen		#address-cells = <2>;
7052e02d37SLiang Chen		#size-cells = <0>;
7152e02d37SLiang Chen
7252e02d37SLiang Chen		cpu0: cpu@0 {
7352e02d37SLiang Chen			device_type = "cpu";
7452e02d37SLiang Chen			compatible = "arm,cortex-a53", "arm,armv8";
7552e02d37SLiang Chen			reg = <0x0 0x0>;
7652e02d37SLiang Chen			clocks = <&cru ARMCLK>;
7752e02d37SLiang Chen			enable-method = "psci";
7852e02d37SLiang Chen			next-level-cache = <&l2>;
79e997a6a4SFinley Xiao			operating-points-v2 = <&cpu0_opp_table>;
8052e02d37SLiang Chen		};
8152e02d37SLiang Chen
8252e02d37SLiang Chen		cpu1: cpu@1 {
8352e02d37SLiang Chen			device_type = "cpu";
8452e02d37SLiang Chen			compatible = "arm,cortex-a53", "arm,armv8";
8552e02d37SLiang Chen			reg = <0x0 0x1>;
8652e02d37SLiang Chen			clocks = <&cru ARMCLK>;
8752e02d37SLiang Chen			enable-method = "psci";
8852e02d37SLiang Chen			next-level-cache = <&l2>;
89e997a6a4SFinley Xiao			operating-points-v2 = <&cpu0_opp_table>;
9052e02d37SLiang Chen		};
9152e02d37SLiang Chen
9252e02d37SLiang Chen		cpu2: cpu@2 {
9352e02d37SLiang Chen			device_type = "cpu";
9452e02d37SLiang Chen			compatible = "arm,cortex-a53", "arm,armv8";
9552e02d37SLiang Chen			reg = <0x0 0x2>;
9652e02d37SLiang Chen			clocks = <&cru ARMCLK>;
9752e02d37SLiang Chen			enable-method = "psci";
9852e02d37SLiang Chen			next-level-cache = <&l2>;
99e997a6a4SFinley Xiao			operating-points-v2 = <&cpu0_opp_table>;
10052e02d37SLiang Chen		};
10152e02d37SLiang Chen
10252e02d37SLiang Chen		cpu3: cpu@3 {
10352e02d37SLiang Chen			device_type = "cpu";
10452e02d37SLiang Chen			compatible = "arm,cortex-a53", "arm,armv8";
10552e02d37SLiang Chen			reg = <0x0 0x3>;
10652e02d37SLiang Chen			clocks = <&cru ARMCLK>;
10752e02d37SLiang Chen			enable-method = "psci";
10852e02d37SLiang Chen			next-level-cache = <&l2>;
109e997a6a4SFinley Xiao			operating-points-v2 = <&cpu0_opp_table>;
11052e02d37SLiang Chen		};
11152e02d37SLiang Chen
11252e02d37SLiang Chen		l2: l2-cache0 {
11352e02d37SLiang Chen			compatible = "cache";
11452e02d37SLiang Chen		};
11552e02d37SLiang Chen	};
11652e02d37SLiang Chen
117e997a6a4SFinley Xiao	cpu0_opp_table: opp_table0 {
118e997a6a4SFinley Xiao		compatible = "operating-points-v2";
119e997a6a4SFinley Xiao		opp-shared;
120e997a6a4SFinley Xiao
121e997a6a4SFinley Xiao		opp-408000000 {
122e997a6a4SFinley Xiao			opp-hz = /bits/ 64 <408000000>;
123e997a6a4SFinley Xiao			opp-microvolt = <950000>;
124e997a6a4SFinley Xiao			clock-latency-ns = <40000>;
125e997a6a4SFinley Xiao			opp-suspend;
126e997a6a4SFinley Xiao		};
127e997a6a4SFinley Xiao		opp-600000000 {
128e997a6a4SFinley Xiao			opp-hz = /bits/ 64 <600000000>;
129e997a6a4SFinley Xiao			opp-microvolt = <950000>;
130e997a6a4SFinley Xiao			clock-latency-ns = <40000>;
131e997a6a4SFinley Xiao		};
132e997a6a4SFinley Xiao		opp-816000000 {
133e997a6a4SFinley Xiao			opp-hz = /bits/ 64 <816000000>;
134e997a6a4SFinley Xiao			opp-microvolt = <1000000>;
135e997a6a4SFinley Xiao			clock-latency-ns = <40000>;
136e997a6a4SFinley Xiao		};
137e997a6a4SFinley Xiao		opp-1008000000 {
138e997a6a4SFinley Xiao			opp-hz = /bits/ 64 <1008000000>;
139e997a6a4SFinley Xiao			opp-microvolt = <1100000>;
140e997a6a4SFinley Xiao			clock-latency-ns = <40000>;
141e997a6a4SFinley Xiao		};
142e997a6a4SFinley Xiao		opp-1200000000 {
143e997a6a4SFinley Xiao			opp-hz = /bits/ 64 <1200000000>;
144e997a6a4SFinley Xiao			opp-microvolt = <1225000>;
145e997a6a4SFinley Xiao			clock-latency-ns = <40000>;
146e997a6a4SFinley Xiao		};
147e997a6a4SFinley Xiao		opp-1296000000 {
148e997a6a4SFinley Xiao			opp-hz = /bits/ 64 <1296000000>;
149e997a6a4SFinley Xiao			opp-microvolt = <1300000>;
150e997a6a4SFinley Xiao			clock-latency-ns = <40000>;
151e997a6a4SFinley Xiao		};
152e997a6a4SFinley Xiao	};
153e997a6a4SFinley Xiao
15452e02d37SLiang Chen	amba {
15552e02d37SLiang Chen		compatible = "simple-bus";
15652e02d37SLiang Chen		#address-cells = <2>;
15752e02d37SLiang Chen		#size-cells = <2>;
15852e02d37SLiang Chen		ranges;
15952e02d37SLiang Chen
16052e02d37SLiang Chen		dmac: dmac@ff1f0000 {
16152e02d37SLiang Chen			compatible = "arm,pl330", "arm,primecell";
16252e02d37SLiang Chen			reg = <0x0 0xff1f0000 0x0 0x4000>;
16352e02d37SLiang Chen			interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
16452e02d37SLiang Chen				     <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
16552e02d37SLiang Chen			clocks = <&cru ACLK_DMAC>;
16652e02d37SLiang Chen			clock-names = "apb_pclk";
16752e02d37SLiang Chen			#dma-cells = <1>;
16852e02d37SLiang Chen		};
16952e02d37SLiang Chen	};
17052e02d37SLiang Chen
17152e02d37SLiang Chen	arm-pmu {
17252e02d37SLiang Chen		compatible = "arm,cortex-a53-pmu";
17352e02d37SLiang Chen		interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
17452e02d37SLiang Chen			     <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
17552e02d37SLiang Chen			     <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
17652e02d37SLiang Chen			     <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
17752e02d37SLiang Chen		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
17852e02d37SLiang Chen	};
17952e02d37SLiang Chen
18052e02d37SLiang Chen	psci {
18152e02d37SLiang Chen		compatible = "arm,psci-1.0", "arm,psci-0.2";
18252e02d37SLiang Chen		method = "smc";
18352e02d37SLiang Chen	};
18452e02d37SLiang Chen
18552e02d37SLiang Chen	timer {
18652e02d37SLiang Chen		compatible = "arm,armv8-timer";
18752e02d37SLiang Chen		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
18852e02d37SLiang Chen			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
18952e02d37SLiang Chen			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
19052e02d37SLiang Chen			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
19152e02d37SLiang Chen	};
19252e02d37SLiang Chen
19352e02d37SLiang Chen	xin24m: xin24m {
19452e02d37SLiang Chen		compatible = "fixed-clock";
19552e02d37SLiang Chen		#clock-cells = <0>;
19652e02d37SLiang Chen		clock-frequency = <24000000>;
19752e02d37SLiang Chen		clock-output-names = "xin24m";
19852e02d37SLiang Chen	};
19952e02d37SLiang Chen
200d80ef50aSSugar Zhang	i2s0: i2s@ff000000 {
201d80ef50aSSugar Zhang		compatible = "rockchip,rk3328-i2s", "rockchip,rk3066-i2s";
202d80ef50aSSugar Zhang		reg = <0x0 0xff000000 0x0 0x1000>;
203d80ef50aSSugar Zhang		interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
204d80ef50aSSugar Zhang		clocks = <&cru SCLK_I2S0>, <&cru HCLK_I2S0_8CH>;
205d80ef50aSSugar Zhang		clock-names = "i2s_clk", "i2s_hclk";
206d80ef50aSSugar Zhang		dmas = <&dmac 11>, <&dmac 12>;
207d80ef50aSSugar Zhang		dma-names = "tx", "rx";
208d80ef50aSSugar Zhang		status = "disabled";
209d80ef50aSSugar Zhang	};
210d80ef50aSSugar Zhang
211d80ef50aSSugar Zhang	i2s1: i2s@ff010000 {
212d80ef50aSSugar Zhang		compatible = "rockchip,rk3328-i2s", "rockchip,rk3066-i2s";
213d80ef50aSSugar Zhang		reg = <0x0 0xff010000 0x0 0x1000>;
214d80ef50aSSugar Zhang		interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
215d80ef50aSSugar Zhang		clocks = <&cru SCLK_I2S1>, <&cru HCLK_I2S1_8CH>;
216d80ef50aSSugar Zhang		clock-names = "i2s_clk", "i2s_hclk";
217d80ef50aSSugar Zhang		dmas = <&dmac 14>, <&dmac 15>;
218d80ef50aSSugar Zhang		dma-names = "tx", "rx";
219d80ef50aSSugar Zhang		status = "disabled";
220d80ef50aSSugar Zhang	};
221d80ef50aSSugar Zhang
222d80ef50aSSugar Zhang	i2s2: i2s@ff020000 {
223d80ef50aSSugar Zhang		compatible = "rockchip,rk3328-i2s", "rockchip,rk3066-i2s";
224d80ef50aSSugar Zhang		reg = <0x0 0xff020000 0x0 0x1000>;
225d80ef50aSSugar Zhang		interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
226d80ef50aSSugar Zhang		clocks = <&cru SCLK_I2S2>, <&cru HCLK_I2S2_2CH>;
227d80ef50aSSugar Zhang		clock-names = "i2s_clk", "i2s_hclk";
228d80ef50aSSugar Zhang		dmas = <&dmac 0>, <&dmac 1>;
229d80ef50aSSugar Zhang		dma-names = "tx", "rx";
230d80ef50aSSugar Zhang		status = "disabled";
231d80ef50aSSugar Zhang	};
232d80ef50aSSugar Zhang
233fc982e0bSSugar Zhang	spdif: spdif@ff030000 {
234fc982e0bSSugar Zhang		compatible = "rockchip,rk3328-spdif";
235fc982e0bSSugar Zhang		reg = <0x0 0xff030000 0x0 0x1000>;
236fc982e0bSSugar Zhang		interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
237fc982e0bSSugar Zhang		clocks = <&cru SCLK_SPDIF>, <&cru HCLK_SPDIF_8CH>;
238fc982e0bSSugar Zhang		clock-names = "mclk", "hclk";
239fc982e0bSSugar Zhang		dmas = <&dmac 10>;
240fc982e0bSSugar Zhang		dma-names = "tx";
241fc982e0bSSugar Zhang		pinctrl-names = "default";
242fc982e0bSSugar Zhang		pinctrl-0 = <&spdifm2_tx>;
243fc982e0bSSugar Zhang		status = "disabled";
244fc982e0bSSugar Zhang	};
245fc982e0bSSugar Zhang
24652e02d37SLiang Chen	grf: syscon@ff100000 {
24752e02d37SLiang Chen		compatible = "rockchip,rk3328-grf", "syscon", "simple-mfd";
24852e02d37SLiang Chen		reg = <0x0 0xff100000 0x0 0x1000>;
24952e02d37SLiang Chen		#address-cells = <1>;
25052e02d37SLiang Chen		#size-cells = <1>;
25152e02d37SLiang Chen
252cc51f503SDavid Wu		io_domains: io-domains {
253cc51f503SDavid Wu			compatible = "rockchip,rk3328-io-voltage-domain";
254cc51f503SDavid Wu			status = "disabled";
255cc51f503SDavid Wu		};
256cc51f503SDavid Wu
25752e02d37SLiang Chen		power: power-controller {
25852e02d37SLiang Chen			compatible = "rockchip,rk3328-power-controller";
25952e02d37SLiang Chen			#power-domain-cells = <1>;
26052e02d37SLiang Chen			#address-cells = <1>;
26152e02d37SLiang Chen			#size-cells = <0>;
26252e02d37SLiang Chen
26352e02d37SLiang Chen			pd_hevc@RK3328_PD_HEVC {
26452e02d37SLiang Chen				reg = <RK3328_PD_HEVC>;
26552e02d37SLiang Chen			};
26652e02d37SLiang Chen			pd_video@RK3328_PD_VIDEO {
26752e02d37SLiang Chen				reg = <RK3328_PD_VIDEO>;
26852e02d37SLiang Chen			};
26952e02d37SLiang Chen			pd_vpu@RK3328_PD_VPU {
27052e02d37SLiang Chen				reg = <RK3328_PD_VPU>;
27152e02d37SLiang Chen			};
27252e02d37SLiang Chen		};
27352e02d37SLiang Chen
27452e02d37SLiang Chen		reboot-mode {
27552e02d37SLiang Chen			compatible = "syscon-reboot-mode";
27652e02d37SLiang Chen			offset = <0x5c8>;
27752e02d37SLiang Chen			mode-normal = <BOOT_NORMAL>;
27852e02d37SLiang Chen			mode-recovery = <BOOT_RECOVERY>;
27952e02d37SLiang Chen			mode-bootloader = <BOOT_FASTBOOT>;
28052e02d37SLiang Chen			mode-loader = <BOOT_BL_DOWNLOAD>;
28152e02d37SLiang Chen		};
28252e02d37SLiang Chen
28352e02d37SLiang Chen	};
28452e02d37SLiang Chen
28552e02d37SLiang Chen	uart0: serial@ff110000 {
28652e02d37SLiang Chen		compatible = "rockchip,rk3328-uart", "snps,dw-apb-uart";
28752e02d37SLiang Chen		reg = <0x0 0xff110000 0x0 0x100>;
28852e02d37SLiang Chen		interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
28952e02d37SLiang Chen		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
29052e02d37SLiang Chen		clock-names = "baudclk", "apb_pclk";
29152e02d37SLiang Chen		dmas = <&dmac 2>, <&dmac 3>;
29252e02d37SLiang Chen		#dma-cells = <2>;
29352e02d37SLiang Chen		pinctrl-names = "default";
29452e02d37SLiang Chen		pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
29552e02d37SLiang Chen		reg-io-width = <4>;
29652e02d37SLiang Chen		reg-shift = <2>;
29752e02d37SLiang Chen		status = "disabled";
29852e02d37SLiang Chen	};
29952e02d37SLiang Chen
30052e02d37SLiang Chen	uart1: serial@ff120000 {
30152e02d37SLiang Chen		compatible = "rockchip,rk3328-uart", "snps,dw-apb-uart";
30252e02d37SLiang Chen		reg = <0x0 0xff120000 0x0 0x100>;
30352e02d37SLiang Chen		interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
30452e02d37SLiang Chen		clocks = <&cru SCLK_UART1>, <&cru PCLK_UART1>;
30552e02d37SLiang Chen		clock-names = "sclk_uart", "pclk_uart";
30652e02d37SLiang Chen		dmas = <&dmac 4>, <&dmac 5>;
30752e02d37SLiang Chen		#dma-cells = <2>;
30852e02d37SLiang Chen		pinctrl-names = "default";
30952e02d37SLiang Chen		pinctrl-0 = <&uart1_xfer &uart1_cts &uart1_rts>;
31052e02d37SLiang Chen		reg-io-width = <4>;
31152e02d37SLiang Chen		reg-shift = <2>;
31252e02d37SLiang Chen		status = "disabled";
31352e02d37SLiang Chen	};
31452e02d37SLiang Chen
31552e02d37SLiang Chen	uart2: serial@ff130000 {
31652e02d37SLiang Chen		compatible = "rockchip,rk3328-uart", "snps,dw-apb-uart";
31752e02d37SLiang Chen		reg = <0x0 0xff130000 0x0 0x100>;
31852e02d37SLiang Chen		interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
31952e02d37SLiang Chen		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
32052e02d37SLiang Chen		clock-names = "baudclk", "apb_pclk";
32152e02d37SLiang Chen		dmas = <&dmac 6>, <&dmac 7>;
32252e02d37SLiang Chen		#dma-cells = <2>;
32352e02d37SLiang Chen		pinctrl-names = "default";
32452e02d37SLiang Chen		pinctrl-0 = <&uart2m1_xfer>;
32552e02d37SLiang Chen		reg-io-width = <4>;
32652e02d37SLiang Chen		reg-shift = <2>;
32752e02d37SLiang Chen		status = "disabled";
32852e02d37SLiang Chen	};
32952e02d37SLiang Chen
33052e02d37SLiang Chen	i2c0: i2c@ff150000 {
33152e02d37SLiang Chen		compatible = "rockchip,rk3328-i2c", "rockchip,rk3399-i2c";
33252e02d37SLiang Chen		reg = <0x0 0xff150000 0x0 0x1000>;
33352e02d37SLiang Chen		interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
33452e02d37SLiang Chen		#address-cells = <1>;
33552e02d37SLiang Chen		#size-cells = <0>;
33652e02d37SLiang Chen		clocks = <&cru SCLK_I2C0>, <&cru PCLK_I2C0>;
33752e02d37SLiang Chen		clock-names = "i2c", "pclk";
33852e02d37SLiang Chen		pinctrl-names = "default";
33952e02d37SLiang Chen		pinctrl-0 = <&i2c0_xfer>;
34052e02d37SLiang Chen		status = "disabled";
34152e02d37SLiang Chen	};
34252e02d37SLiang Chen
34352e02d37SLiang Chen	i2c1: i2c@ff160000 {
34452e02d37SLiang Chen		compatible = "rockchip,rk3328-i2c", "rockchip,rk3399-i2c";
34552e02d37SLiang Chen		reg = <0x0 0xff160000 0x0 0x1000>;
34652e02d37SLiang Chen		interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
34752e02d37SLiang Chen		#address-cells = <1>;
34852e02d37SLiang Chen		#size-cells = <0>;
34952e02d37SLiang Chen		clocks = <&cru SCLK_I2C1>, <&cru PCLK_I2C1>;
35052e02d37SLiang Chen		clock-names = "i2c", "pclk";
35152e02d37SLiang Chen		pinctrl-names = "default";
35252e02d37SLiang Chen		pinctrl-0 = <&i2c1_xfer>;
35352e02d37SLiang Chen		status = "disabled";
35452e02d37SLiang Chen	};
35552e02d37SLiang Chen
35652e02d37SLiang Chen	i2c2: i2c@ff170000 {
35752e02d37SLiang Chen		compatible = "rockchip,rk3328-i2c", "rockchip,rk3399-i2c";
35852e02d37SLiang Chen		reg = <0x0 0xff170000 0x0 0x1000>;
35952e02d37SLiang Chen		interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
36052e02d37SLiang Chen		#address-cells = <1>;
36152e02d37SLiang Chen		#size-cells = <0>;
36252e02d37SLiang Chen		clocks = <&cru SCLK_I2C2>, <&cru PCLK_I2C2>;
36352e02d37SLiang Chen		clock-names = "i2c", "pclk";
36452e02d37SLiang Chen		pinctrl-names = "default";
36552e02d37SLiang Chen		pinctrl-0 = <&i2c2_xfer>;
36652e02d37SLiang Chen		status = "disabled";
36752e02d37SLiang Chen	};
36852e02d37SLiang Chen
36952e02d37SLiang Chen	i2c3: i2c@ff180000 {
37052e02d37SLiang Chen		compatible = "rockchip,rk3328-i2c", "rockchip,rk3399-i2c";
37152e02d37SLiang Chen		reg = <0x0 0xff180000 0x0 0x1000>;
37252e02d37SLiang Chen		interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
37352e02d37SLiang Chen		#address-cells = <1>;
37452e02d37SLiang Chen		#size-cells = <0>;
37552e02d37SLiang Chen		clocks = <&cru SCLK_I2C3>, <&cru PCLK_I2C3>;
37652e02d37SLiang Chen		clock-names = "i2c", "pclk";
37752e02d37SLiang Chen		pinctrl-names = "default";
37852e02d37SLiang Chen		pinctrl-0 = <&i2c3_xfer>;
37952e02d37SLiang Chen		status = "disabled";
38052e02d37SLiang Chen	};
38152e02d37SLiang Chen
38252e02d37SLiang Chen	spi0: spi@ff190000 {
38352e02d37SLiang Chen		compatible = "rockchip,rk3328-spi", "rockchip,rk3066-spi";
38452e02d37SLiang Chen		reg = <0x0 0xff190000 0x0 0x1000>;
38552e02d37SLiang Chen		interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
38652e02d37SLiang Chen		#address-cells = <1>;
38752e02d37SLiang Chen		#size-cells = <0>;
38852e02d37SLiang Chen		clocks = <&cru SCLK_SPI>, <&cru PCLK_SPI>;
38952e02d37SLiang Chen		clock-names = "spiclk", "apb_pclk";
39052e02d37SLiang Chen		dmas = <&dmac 8>, <&dmac 9>;
39152e02d37SLiang Chen		dma-names = "tx", "rx";
39252e02d37SLiang Chen		pinctrl-names = "default";
39352e02d37SLiang Chen		pinctrl-0 = <&spi0m2_clk &spi0m2_tx &spi0m2_rx &spi0m2_cs0>;
39452e02d37SLiang Chen		status = "disabled";
39552e02d37SLiang Chen	};
39652e02d37SLiang Chen
39752e02d37SLiang Chen	wdt: watchdog@ff1a0000 {
39852e02d37SLiang Chen		compatible = "snps,dw-wdt";
39952e02d37SLiang Chen		reg = <0x0 0xff1a0000 0x0 0x100>;
40052e02d37SLiang Chen		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
40152e02d37SLiang Chen	};
40252e02d37SLiang Chen
403*20590de2SRocky Hao	tsadc: tsadc@ff250000 {
404*20590de2SRocky Hao		compatible = "rockchip,rk3328-tsadc";
405*20590de2SRocky Hao		reg = <0x0 0xff250000 0x0 0x100>;
406*20590de2SRocky Hao		interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH 0>;
407*20590de2SRocky Hao		assigned-clocks = <&cru SCLK_TSADC>;
408*20590de2SRocky Hao		assigned-clock-rates = <50000>;
409*20590de2SRocky Hao		clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>;
410*20590de2SRocky Hao		clock-names = "tsadc", "apb_pclk";
411*20590de2SRocky Hao		pinctrl-names = "init", "default", "sleep";
412*20590de2SRocky Hao		pinctrl-0 = <&otp_gpio>;
413*20590de2SRocky Hao		pinctrl-1 = <&otp_out>;
414*20590de2SRocky Hao		pinctrl-2 = <&otp_gpio>;
415*20590de2SRocky Hao		resets = <&cru SRST_TSADC>;
416*20590de2SRocky Hao		reset-names = "tsadc-apb";
417*20590de2SRocky Hao		rockchip,grf = <&grf>;
418*20590de2SRocky Hao		rockchip,hw-tshut-temp = <100000>;
419*20590de2SRocky Hao		#thermal-sensor-cells = <1>;
420*20590de2SRocky Hao		status = "disabled";
421*20590de2SRocky Hao	};
422*20590de2SRocky Hao
42352e02d37SLiang Chen	saradc: adc@ff280000 {
42452e02d37SLiang Chen		compatible = "rockchip,rk3328-saradc", "rockchip,rk3399-saradc";
42552e02d37SLiang Chen		reg = <0x0 0xff280000 0x0 0x100>;
42652e02d37SLiang Chen		interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
42752e02d37SLiang Chen		#io-channel-cells = <1>;
42852e02d37SLiang Chen		clocks = <&cru SCLK_SARADC>, <&cru PCLK_SARADC>;
42952e02d37SLiang Chen		clock-names = "saradc", "apb_pclk";
43052e02d37SLiang Chen		resets = <&cru SRST_SARADC_P>;
43152e02d37SLiang Chen		reset-names = "saradc-apb";
43252e02d37SLiang Chen		status = "disabled";
43352e02d37SLiang Chen	};
43452e02d37SLiang Chen
43552e02d37SLiang Chen	cru: clock-controller@ff440000 {
43652e02d37SLiang Chen		compatible = "rockchip,rk3328-cru", "rockchip,cru", "syscon";
43752e02d37SLiang Chen		reg = <0x0 0xff440000 0x0 0x1000>;
43852e02d37SLiang Chen		rockchip,grf = <&grf>;
43952e02d37SLiang Chen		#clock-cells = <1>;
44052e02d37SLiang Chen		#reset-cells = <1>;
44152e02d37SLiang Chen		assigned-clocks =
44252e02d37SLiang Chen			/*
44352e02d37SLiang Chen			 * CPLL should run at 1200, but that is to high for
44452e02d37SLiang Chen			 * the initial dividers of most of its children.
44552e02d37SLiang Chen			 * We need set cpll child clk div first,
44652e02d37SLiang Chen			 * and then set the cpll frequency.
44752e02d37SLiang Chen			 */
44852e02d37SLiang Chen			<&cru DCLK_LCDC>, <&cru SCLK_PDM>,
44952e02d37SLiang Chen			<&cru SCLK_RTC32K>, <&cru SCLK_UART0>,
45052e02d37SLiang Chen			<&cru SCLK_UART1>, <&cru SCLK_UART2>,
45152e02d37SLiang Chen			<&cru ACLK_BUS_PRE>, <&cru ACLK_PERI_PRE>,
45252e02d37SLiang Chen			<&cru ACLK_VIO_PRE>, <&cru ACLK_RGA_PRE>,
45352e02d37SLiang Chen			<&cru ACLK_VOP_PRE>, <&cru ACLK_RKVDEC_PRE>,
45452e02d37SLiang Chen			<&cru ACLK_RKVENC>, <&cru ACLK_VPU_PRE>,
45552e02d37SLiang Chen			<&cru SCLK_VDEC_CABAC>, <&cru SCLK_VDEC_CORE>,
45652e02d37SLiang Chen			<&cru SCLK_VENC_CORE>, <&cru SCLK_VENC_DSP>,
45752e02d37SLiang Chen			<&cru SCLK_SDIO>, <&cru SCLK_TSP>,
45852e02d37SLiang Chen			<&cru SCLK_WIFI>, <&cru ARMCLK>,
45952e02d37SLiang Chen			<&cru PLL_GPLL>, <&cru PLL_CPLL>,
46052e02d37SLiang Chen			<&cru ACLK_BUS_PRE>, <&cru HCLK_BUS_PRE>,
46152e02d37SLiang Chen			<&cru PCLK_BUS_PRE>, <&cru ACLK_PERI_PRE>,
46252e02d37SLiang Chen			<&cru HCLK_PERI>, <&cru PCLK_PERI>,
46352e02d37SLiang Chen			<&cru SCLK_RTC32K>;
46452e02d37SLiang Chen		assigned-clock-parents =
46552e02d37SLiang Chen			<&cru HDMIPHY>, <&cru PLL_APLL>,
46652e02d37SLiang Chen			<&cru PLL_GPLL>, <&xin24m>,
46752e02d37SLiang Chen			<&xin24m>, <&xin24m>;
46852e02d37SLiang Chen		assigned-clock-rates =
46952e02d37SLiang Chen			<0>, <61440000>,
47052e02d37SLiang Chen			<0>, <24000000>,
47152e02d37SLiang Chen			<24000000>, <24000000>,
47252e02d37SLiang Chen			<15000000>, <15000000>,
47352e02d37SLiang Chen			<100000000>, <100000000>,
47452e02d37SLiang Chen			<100000000>, <100000000>,
47552e02d37SLiang Chen			<50000000>, <100000000>,
47652e02d37SLiang Chen			<100000000>, <100000000>,
47752e02d37SLiang Chen			<50000000>, <50000000>,
47852e02d37SLiang Chen			<50000000>, <50000000>,
47952e02d37SLiang Chen			<24000000>, <600000000>,
48052e02d37SLiang Chen			<491520000>, <1200000000>,
48152e02d37SLiang Chen			<150000000>, <75000000>,
48252e02d37SLiang Chen			<75000000>, <150000000>,
48352e02d37SLiang Chen			<75000000>, <75000000>,
48452e02d37SLiang Chen			<32768>;
48552e02d37SLiang Chen	};
48652e02d37SLiang Chen
487c60c0373SWilliam Wu	usb2phy_grf: syscon@ff450000 {
488c60c0373SWilliam Wu		compatible = "rockchip,rk3328-usb2phy-grf", "syscon",
489c60c0373SWilliam Wu			     "simple-mfd";
490c60c0373SWilliam Wu		reg = <0x0 0xff450000 0x0 0x10000>;
491c60c0373SWilliam Wu		#address-cells = <1>;
492c60c0373SWilliam Wu		#size-cells = <1>;
493c60c0373SWilliam Wu
494c60c0373SWilliam Wu		u2phy: usb2-phy@100 {
495c60c0373SWilliam Wu			compatible = "rockchip,rk3328-usb2phy";
496c60c0373SWilliam Wu			reg = <0x100 0x10>;
497c60c0373SWilliam Wu			clocks = <&xin24m>;
498c60c0373SWilliam Wu			clock-names = "phyclk";
499c60c0373SWilliam Wu			clock-output-names = "usb480m_phy";
500c60c0373SWilliam Wu			#clock-cells = <0>;
501c60c0373SWilliam Wu			assigned-clocks = <&cru USB480M>;
502c60c0373SWilliam Wu			assigned-clock-parents = <&u2phy>;
503c60c0373SWilliam Wu			status = "disabled";
504c60c0373SWilliam Wu
505c60c0373SWilliam Wu			u2phy_otg: otg-port {
506c60c0373SWilliam Wu				#phy-cells = <0>;
507c60c0373SWilliam Wu				interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
508c60c0373SWilliam Wu					     <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>,
509c60c0373SWilliam Wu					     <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
510c60c0373SWilliam Wu				interrupt-names = "otg-bvalid", "otg-id",
511c60c0373SWilliam Wu						  "linestate";
512c60c0373SWilliam Wu				status = "disabled";
513c60c0373SWilliam Wu			};
514c60c0373SWilliam Wu
515c60c0373SWilliam Wu			u2phy_host: host-port {
516c60c0373SWilliam Wu				#phy-cells = <0>;
517c60c0373SWilliam Wu				interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
518c60c0373SWilliam Wu				interrupt-names = "linestate";
519c60c0373SWilliam Wu				status = "disabled";
520c60c0373SWilliam Wu			};
521c60c0373SWilliam Wu		};
522c60c0373SWilliam Wu	};
523c60c0373SWilliam Wu
524d717f735SShawn Lin	sdmmc: dwmmc@ff500000 {
525d717f735SShawn Lin		compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc";
526d717f735SShawn Lin		reg = <0x0 0xff500000 0x0 0x4000>;
527d717f735SShawn Lin		interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
528d717f735SShawn Lin		clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>,
529d717f735SShawn Lin			 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
530d717f735SShawn Lin		clock-names = "biu", "ciu", "ciu_drv", "ciu_sample";
531d717f735SShawn Lin		fifo-depth = <0x100>;
532d717f735SShawn Lin		status = "disabled";
533d717f735SShawn Lin	};
534d717f735SShawn Lin
535d717f735SShawn Lin	sdio: dwmmc@ff510000 {
536d717f735SShawn Lin		compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc";
537d717f735SShawn Lin		reg = <0x0 0xff510000 0x0 0x4000>;
538d717f735SShawn Lin		interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
539d717f735SShawn Lin		clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>,
540d717f735SShawn Lin			 <&cru SCLK_SDIO_DRV>, <&cru SCLK_SDIO_SAMPLE>;
541d717f735SShawn Lin		clock-names = "biu", "ciu", "ciu_drv", "ciu_sample";
542d717f735SShawn Lin		fifo-depth = <0x100>;
543d717f735SShawn Lin		status = "disabled";
544d717f735SShawn Lin	};
545d717f735SShawn Lin
546d717f735SShawn Lin	emmc: dwmmc@ff520000 {
547d717f735SShawn Lin		compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc";
548d717f735SShawn Lin		reg = <0x0 0xff520000 0x0 0x4000>;
549d717f735SShawn Lin		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
550d717f735SShawn Lin		clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>,
551d717f735SShawn Lin			 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
552d717f735SShawn Lin		clock-names = "biu", "ciu", "ciu_drv", "ciu_sample";
553d717f735SShawn Lin		fifo-depth = <0x100>;
554d717f735SShawn Lin		status = "disabled";
555d717f735SShawn Lin	};
556d717f735SShawn Lin
55752e02d37SLiang Chen	gmac2io: ethernet@ff540000 {
55852e02d37SLiang Chen		compatible = "rockchip,rk3328-gmac";
55952e02d37SLiang Chen		reg = <0x0 0xff540000 0x0 0x10000>;
56052e02d37SLiang Chen		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
56152e02d37SLiang Chen		interrupt-names = "macirq";
56252e02d37SLiang Chen		clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_RX>,
56352e02d37SLiang Chen			 <&cru SCLK_MAC2IO_TX>, <&cru SCLK_MAC2IO_REF>,
56452e02d37SLiang Chen			 <&cru SCLK_MAC2IO_REFOUT>, <&cru ACLK_MAC2IO>,
56552e02d37SLiang Chen			 <&cru PCLK_MAC2IO>;
56652e02d37SLiang Chen		clock-names = "stmmaceth", "mac_clk_rx",
56752e02d37SLiang Chen			      "mac_clk_tx", "clk_mac_ref",
56852e02d37SLiang Chen			      "clk_mac_refout", "aclk_mac",
56952e02d37SLiang Chen			      "pclk_mac";
57052e02d37SLiang Chen		resets = <&cru SRST_GMAC2IO_A>;
57152e02d37SLiang Chen		reset-names = "stmmaceth";
57252e02d37SLiang Chen		rockchip,grf = <&grf>;
57352e02d37SLiang Chen		status = "disabled";
57452e02d37SLiang Chen	};
57552e02d37SLiang Chen
576c60c0373SWilliam Wu	usb20_otg: usb@ff580000 {
577c60c0373SWilliam Wu		compatible = "rockchip,rk3328-usb", "rockchip,rk3066-usb",
578c60c0373SWilliam Wu			     "snps,dwc2";
579c60c0373SWilliam Wu		reg = <0x0 0xff580000 0x0 0x40000>;
580c60c0373SWilliam Wu		interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
581c60c0373SWilliam Wu		clocks = <&cru HCLK_OTG>;
582c60c0373SWilliam Wu		clock-names = "otg";
583c60c0373SWilliam Wu		dr_mode = "otg";
584c60c0373SWilliam Wu		g-np-tx-fifo-size = <16>;
585c60c0373SWilliam Wu		g-rx-fifo-size = <280>;
586c60c0373SWilliam Wu		g-tx-fifo-size = <256 128 128 64 32 16>;
587c60c0373SWilliam Wu		g-use-dma;
588c60c0373SWilliam Wu		phys = <&u2phy_otg>;
589c60c0373SWilliam Wu		phy-names = "usb2-phy";
590c60c0373SWilliam Wu		status = "disabled";
591c60c0373SWilliam Wu	};
592c60c0373SWilliam Wu
593c60c0373SWilliam Wu	usb_host0_ehci: usb@ff5c0000 {
594c60c0373SWilliam Wu		compatible = "generic-ehci";
595c60c0373SWilliam Wu		reg = <0x0 0xff5c0000 0x0 0x10000>;
596c60c0373SWilliam Wu		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
597c60c0373SWilliam Wu		clocks = <&cru HCLK_HOST0>, <&u2phy>;
598c60c0373SWilliam Wu		clock-names = "usbhost", "utmi";
599c60c0373SWilliam Wu		phys = <&u2phy_host>;
600c60c0373SWilliam Wu		phy-names = "usb";
601c60c0373SWilliam Wu		status = "disabled";
602c60c0373SWilliam Wu	};
603c60c0373SWilliam Wu
604c60c0373SWilliam Wu	usb_host0_ohci: usb@ff5d0000 {
605c60c0373SWilliam Wu		compatible = "generic-ohci";
606c60c0373SWilliam Wu		reg = <0x0 0xff5d0000 0x0 0x10000>;
607c60c0373SWilliam Wu		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
608c60c0373SWilliam Wu		clocks = <&cru HCLK_HOST0>, <&u2phy>;
609c60c0373SWilliam Wu		clock-names = "usbhost", "utmi";
610c60c0373SWilliam Wu		phys = <&u2phy_host>;
611c60c0373SWilliam Wu		phy-names = "usb";
612c60c0373SWilliam Wu		status = "disabled";
613c60c0373SWilliam Wu	};
614c60c0373SWilliam Wu
61552e02d37SLiang Chen	gic: interrupt-controller@ff811000 {
61652e02d37SLiang Chen		compatible = "arm,gic-400";
61752e02d37SLiang Chen		#interrupt-cells = <3>;
61852e02d37SLiang Chen		#address-cells = <0>;
61952e02d37SLiang Chen		interrupt-controller;
62052e02d37SLiang Chen		reg = <0x0 0xff811000 0 0x1000>,
62152e02d37SLiang Chen		      <0x0 0xff812000 0 0x2000>,
62252e02d37SLiang Chen		      <0x0 0xff814000 0 0x2000>,
62352e02d37SLiang Chen		      <0x0 0xff816000 0 0x2000>;
62452e02d37SLiang Chen		interrupts = <GIC_PPI 9
62552e02d37SLiang Chen		      (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
62652e02d37SLiang Chen	};
62752e02d37SLiang Chen
62852e02d37SLiang Chen	pinctrl: pinctrl {
62952e02d37SLiang Chen		compatible = "rockchip,rk3328-pinctrl";
63052e02d37SLiang Chen		rockchip,grf = <&grf>;
63152e02d37SLiang Chen		#address-cells = <2>;
63252e02d37SLiang Chen		#size-cells = <2>;
63352e02d37SLiang Chen		ranges;
63452e02d37SLiang Chen
63552e02d37SLiang Chen		gpio0: gpio0@ff210000 {
63652e02d37SLiang Chen			compatible = "rockchip,gpio-bank";
63752e02d37SLiang Chen			reg = <0x0 0xff210000 0x0 0x100>;
63852e02d37SLiang Chen			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
63952e02d37SLiang Chen			clocks = <&cru PCLK_GPIO0>;
64052e02d37SLiang Chen
64152e02d37SLiang Chen			gpio-controller;
64252e02d37SLiang Chen			#gpio-cells = <2>;
64352e02d37SLiang Chen
64452e02d37SLiang Chen			interrupt-controller;
64552e02d37SLiang Chen			#interrupt-cells = <2>;
64652e02d37SLiang Chen		};
64752e02d37SLiang Chen
64852e02d37SLiang Chen		gpio1: gpio1@ff220000 {
64952e02d37SLiang Chen			compatible = "rockchip,gpio-bank";
65052e02d37SLiang Chen			reg = <0x0 0xff220000 0x0 0x100>;
65152e02d37SLiang Chen			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
65252e02d37SLiang Chen			clocks = <&cru PCLK_GPIO1>;
65352e02d37SLiang Chen
65452e02d37SLiang Chen			gpio-controller;
65552e02d37SLiang Chen			#gpio-cells = <2>;
65652e02d37SLiang Chen
65752e02d37SLiang Chen			interrupt-controller;
65852e02d37SLiang Chen			#interrupt-cells = <2>;
65952e02d37SLiang Chen		};
66052e02d37SLiang Chen
66152e02d37SLiang Chen		gpio2: gpio2@ff230000 {
66252e02d37SLiang Chen			compatible = "rockchip,gpio-bank";
66352e02d37SLiang Chen			reg = <0x0 0xff230000 0x0 0x100>;
66452e02d37SLiang Chen			interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
66552e02d37SLiang Chen			clocks = <&cru PCLK_GPIO2>;
66652e02d37SLiang Chen
66752e02d37SLiang Chen			gpio-controller;
66852e02d37SLiang Chen			#gpio-cells = <2>;
66952e02d37SLiang Chen
67052e02d37SLiang Chen			interrupt-controller;
67152e02d37SLiang Chen			#interrupt-cells = <2>;
67252e02d37SLiang Chen		};
67352e02d37SLiang Chen
67452e02d37SLiang Chen		gpio3: gpio3@ff240000 {
67552e02d37SLiang Chen			compatible = "rockchip,gpio-bank";
67652e02d37SLiang Chen			reg = <0x0 0xff240000 0x0 0x100>;
67752e02d37SLiang Chen			interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
67852e02d37SLiang Chen			clocks = <&cru PCLK_GPIO3>;
67952e02d37SLiang Chen
68052e02d37SLiang Chen			gpio-controller;
68152e02d37SLiang Chen			#gpio-cells = <2>;
68252e02d37SLiang Chen
68352e02d37SLiang Chen			interrupt-controller;
68452e02d37SLiang Chen			#interrupt-cells = <2>;
68552e02d37SLiang Chen		};
68652e02d37SLiang Chen
68752e02d37SLiang Chen		pcfg_pull_up: pcfg-pull-up {
68852e02d37SLiang Chen			bias-pull-up;
68952e02d37SLiang Chen		};
69052e02d37SLiang Chen
69152e02d37SLiang Chen		pcfg_pull_down: pcfg-pull-down {
69252e02d37SLiang Chen			bias-pull-down;
69352e02d37SLiang Chen		};
69452e02d37SLiang Chen
69552e02d37SLiang Chen		pcfg_pull_none: pcfg-pull-none {
69652e02d37SLiang Chen			bias-disable;
69752e02d37SLiang Chen		};
69852e02d37SLiang Chen
69952e02d37SLiang Chen		pcfg_pull_none_2ma: pcfg-pull-none-2ma {
70052e02d37SLiang Chen			bias-disable;
70152e02d37SLiang Chen			drive-strength = <2>;
70252e02d37SLiang Chen		};
70352e02d37SLiang Chen
70452e02d37SLiang Chen		pcfg_pull_up_2ma: pcfg-pull-up-2ma {
70552e02d37SLiang Chen			bias-pull-up;
70652e02d37SLiang Chen			drive-strength = <2>;
70752e02d37SLiang Chen		};
70852e02d37SLiang Chen
70952e02d37SLiang Chen		pcfg_pull_up_4ma: pcfg-pull-up-4ma {
71052e02d37SLiang Chen			bias-pull-up;
71152e02d37SLiang Chen			drive-strength = <4>;
71252e02d37SLiang Chen		};
71352e02d37SLiang Chen
71452e02d37SLiang Chen		pcfg_pull_none_4ma: pcfg-pull-none-4ma {
71552e02d37SLiang Chen			bias-disable;
71652e02d37SLiang Chen			drive-strength = <4>;
71752e02d37SLiang Chen		};
71852e02d37SLiang Chen
71952e02d37SLiang Chen		pcfg_pull_down_4ma: pcfg-pull-down-4ma {
72052e02d37SLiang Chen			bias-pull-down;
72152e02d37SLiang Chen			drive-strength = <4>;
72252e02d37SLiang Chen		};
72352e02d37SLiang Chen
72452e02d37SLiang Chen		pcfg_pull_none_8ma: pcfg-pull-none-8ma {
72552e02d37SLiang Chen			bias-disable;
72652e02d37SLiang Chen			drive-strength = <8>;
72752e02d37SLiang Chen		};
72852e02d37SLiang Chen
72952e02d37SLiang Chen		pcfg_pull_up_8ma: pcfg-pull-up-8ma {
73052e02d37SLiang Chen			bias-pull-up;
73152e02d37SLiang Chen			drive-strength = <8>;
73252e02d37SLiang Chen		};
73352e02d37SLiang Chen
73452e02d37SLiang Chen		pcfg_pull_none_12ma: pcfg-pull-none-12ma {
73552e02d37SLiang Chen			bias-disable;
73652e02d37SLiang Chen			drive-strength = <12>;
73752e02d37SLiang Chen		};
73852e02d37SLiang Chen
73952e02d37SLiang Chen		pcfg_pull_up_12ma: pcfg-pull-up-12ma {
74052e02d37SLiang Chen			bias-pull-up;
74152e02d37SLiang Chen			drive-strength = <12>;
74252e02d37SLiang Chen		};
74352e02d37SLiang Chen
74452e02d37SLiang Chen		pcfg_output_high: pcfg-output-high {
74552e02d37SLiang Chen			output-high;
74652e02d37SLiang Chen		};
74752e02d37SLiang Chen
74852e02d37SLiang Chen		pcfg_output_low: pcfg-output-low {
74952e02d37SLiang Chen			output-low;
75052e02d37SLiang Chen		};
75152e02d37SLiang Chen
75252e02d37SLiang Chen		pcfg_input_high: pcfg-input-high {
75352e02d37SLiang Chen			bias-pull-up;
75452e02d37SLiang Chen			input-enable;
75552e02d37SLiang Chen		};
75652e02d37SLiang Chen
75752e02d37SLiang Chen		pcfg_input: pcfg-input {
75852e02d37SLiang Chen			input-enable;
75952e02d37SLiang Chen		};
76052e02d37SLiang Chen
76152e02d37SLiang Chen		i2c0 {
76252e02d37SLiang Chen			i2c0_xfer: i2c0-xfer {
76352e02d37SLiang Chen				rockchip,pins = <2 RK_PD0 1 &pcfg_pull_none>,
76452e02d37SLiang Chen						<2 RK_PD1 1 &pcfg_pull_none>;
76552e02d37SLiang Chen			};
76652e02d37SLiang Chen		};
76752e02d37SLiang Chen
76852e02d37SLiang Chen		i2c1 {
76952e02d37SLiang Chen			i2c1_xfer: i2c1-xfer {
77052e02d37SLiang Chen				rockchip,pins = <2 RK_PA4 2 &pcfg_pull_none>,
77152e02d37SLiang Chen						<2 RK_PA5 2 &pcfg_pull_none>;
77252e02d37SLiang Chen			};
77352e02d37SLiang Chen		};
77452e02d37SLiang Chen
77552e02d37SLiang Chen		i2c2 {
77652e02d37SLiang Chen			i2c2_xfer: i2c2-xfer {
77752e02d37SLiang Chen				rockchip,pins = <2 RK_PB5 1 &pcfg_pull_none>,
77852e02d37SLiang Chen						<2 RK_PB6 1 &pcfg_pull_none>;
77952e02d37SLiang Chen			};
78052e02d37SLiang Chen		};
78152e02d37SLiang Chen
78252e02d37SLiang Chen		i2c3 {
78352e02d37SLiang Chen			i2c3_xfer: i2c3-xfer {
78452e02d37SLiang Chen				rockchip,pins = <0 RK_PA5 2 &pcfg_pull_none>,
78552e02d37SLiang Chen						<0 RK_PA6 2 &pcfg_pull_none>;
78652e02d37SLiang Chen			};
78752e02d37SLiang Chen			i2c3_gpio: i2c3-gpio {
78852e02d37SLiang Chen				rockchip,pins =
78952e02d37SLiang Chen					<0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>,
79052e02d37SLiang Chen					<0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
79152e02d37SLiang Chen			};
79252e02d37SLiang Chen		};
79352e02d37SLiang Chen
79452e02d37SLiang Chen		hdmi_i2c {
79552e02d37SLiang Chen			hdmii2c_xfer: hdmii2c-xfer {
79652e02d37SLiang Chen				rockchip,pins = <0 RK_PA5 1 &pcfg_pull_none>,
79752e02d37SLiang Chen						<0 RK_PA6 1 &pcfg_pull_none>;
79852e02d37SLiang Chen			};
79952e02d37SLiang Chen		};
80052e02d37SLiang Chen
80152e02d37SLiang Chen		tsadc {
80252e02d37SLiang Chen			otp_gpio: otp-gpio {
80352e02d37SLiang Chen				rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
80452e02d37SLiang Chen			};
80552e02d37SLiang Chen
80652e02d37SLiang Chen			otp_out: otp-out {
80752e02d37SLiang Chen				rockchip,pins = <2 RK_PB5 1 &pcfg_pull_none>;
80852e02d37SLiang Chen			};
80952e02d37SLiang Chen		};
81052e02d37SLiang Chen
81152e02d37SLiang Chen		uart0 {
81252e02d37SLiang Chen			uart0_xfer: uart0-xfer {
81352e02d37SLiang Chen				rockchip,pins = <1 RK_PB1 1 &pcfg_pull_up>,
81452e02d37SLiang Chen						<1 RK_PB0 1 &pcfg_pull_none>;
81552e02d37SLiang Chen			};
81652e02d37SLiang Chen
81752e02d37SLiang Chen			uart0_cts: uart0-cts {
81852e02d37SLiang Chen				rockchip,pins = <1 RK_PB3 1 &pcfg_pull_none>;
81952e02d37SLiang Chen			};
82052e02d37SLiang Chen
82152e02d37SLiang Chen			uart0_rts: uart0-rts {
82252e02d37SLiang Chen				rockchip,pins = <1 RK_PB2 1 &pcfg_pull_none>;
82352e02d37SLiang Chen			};
82452e02d37SLiang Chen
82552e02d37SLiang Chen			uart0_rts_gpio: uart0-rts-gpio {
82652e02d37SLiang Chen				rockchip,pins = <1 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
82752e02d37SLiang Chen			};
82852e02d37SLiang Chen		};
82952e02d37SLiang Chen
83052e02d37SLiang Chen		uart1 {
83152e02d37SLiang Chen			uart1_xfer: uart1-xfer {
83252e02d37SLiang Chen				rockchip,pins = <3 RK_PA4 4 &pcfg_pull_up>,
83352e02d37SLiang Chen						<3 RK_PA6 4 &pcfg_pull_none>;
83452e02d37SLiang Chen			};
83552e02d37SLiang Chen
83652e02d37SLiang Chen			uart1_cts: uart1-cts {
83752e02d37SLiang Chen				rockchip,pins = <3 RK_PA7 4 &pcfg_pull_none>;
83852e02d37SLiang Chen			};
83952e02d37SLiang Chen
84052e02d37SLiang Chen			uart1_rts: uart1-rts {
84152e02d37SLiang Chen				rockchip,pins = <3 RK_PA5 4 &pcfg_pull_none>;
84252e02d37SLiang Chen			};
84352e02d37SLiang Chen
84452e02d37SLiang Chen			uart1_rts_gpio: uart1-rts-gpio {
84552e02d37SLiang Chen				rockchip,pins = <3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
84652e02d37SLiang Chen			};
84752e02d37SLiang Chen		};
84852e02d37SLiang Chen
84952e02d37SLiang Chen		uart2-0 {
85052e02d37SLiang Chen			uart2m0_xfer: uart2m0-xfer {
85152e02d37SLiang Chen				rockchip,pins = <1 RK_PA0 2 &pcfg_pull_up>,
85252e02d37SLiang Chen						<1 RK_PA1 2 &pcfg_pull_none>;
85352e02d37SLiang Chen			};
85452e02d37SLiang Chen		};
85552e02d37SLiang Chen
85652e02d37SLiang Chen		uart2-1 {
85752e02d37SLiang Chen			uart2m1_xfer: uart2m1-xfer {
85852e02d37SLiang Chen				rockchip,pins = <2 RK_PA0 1 &pcfg_pull_up>,
85952e02d37SLiang Chen						<2 RK_PA1 1 &pcfg_pull_none>;
86052e02d37SLiang Chen			};
86152e02d37SLiang Chen		};
86252e02d37SLiang Chen
86352e02d37SLiang Chen		spi0-0 {
86452e02d37SLiang Chen			spi0m0_clk: spi0m0-clk {
86552e02d37SLiang Chen				rockchip,pins = <2 RK_PB0 1 &pcfg_pull_up>;
86652e02d37SLiang Chen			};
86752e02d37SLiang Chen
86852e02d37SLiang Chen			spi0m0_cs0: spi0m0-cs0 {
86952e02d37SLiang Chen				rockchip,pins = <2 RK_PB3 1 &pcfg_pull_up>;
87052e02d37SLiang Chen			};
87152e02d37SLiang Chen
87252e02d37SLiang Chen			spi0m0_tx: spi0m0-tx {
87352e02d37SLiang Chen				rockchip,pins = <2 RK_PB1 1 &pcfg_pull_up>;
87452e02d37SLiang Chen			};
87552e02d37SLiang Chen
87652e02d37SLiang Chen			spi0m0_rx: spi0m0-rx {
87752e02d37SLiang Chen				rockchip,pins = <2 RK_PB2 1 &pcfg_pull_up>;
87852e02d37SLiang Chen			};
87952e02d37SLiang Chen
88052e02d37SLiang Chen			spi0m0_cs1: spi0m0-cs1 {
88152e02d37SLiang Chen				rockchip,pins = <2 RK_PB4 1 &pcfg_pull_up>;
88252e02d37SLiang Chen			};
88352e02d37SLiang Chen		};
88452e02d37SLiang Chen
88552e02d37SLiang Chen		spi0-1 {
88652e02d37SLiang Chen			spi0m1_clk: spi0m1-clk {
88752e02d37SLiang Chen				rockchip,pins = <3 RK_PC7 2 &pcfg_pull_up>;
88852e02d37SLiang Chen			};
88952e02d37SLiang Chen
89052e02d37SLiang Chen			spi0m1_cs0: spi0m1-cs0 {
89152e02d37SLiang Chen				rockchip,pins = <3 RK_PD2 2 &pcfg_pull_up>;
89252e02d37SLiang Chen			};
89352e02d37SLiang Chen
89452e02d37SLiang Chen			spi0m1_tx: spi0m1-tx {
89552e02d37SLiang Chen				rockchip,pins = <3 RK_PD1 2 &pcfg_pull_up>;
89652e02d37SLiang Chen			};
89752e02d37SLiang Chen
89852e02d37SLiang Chen			spi0m1_rx: spi0m1-rx {
89952e02d37SLiang Chen				rockchip,pins = <3 RK_PD0 2 &pcfg_pull_up>;
90052e02d37SLiang Chen			};
90152e02d37SLiang Chen
90252e02d37SLiang Chen			spi0m1_cs1: spi0m1-cs1 {
90352e02d37SLiang Chen				rockchip,pins = <3 RK_PD3 2 &pcfg_pull_up>;
90452e02d37SLiang Chen			};
90552e02d37SLiang Chen		};
90652e02d37SLiang Chen
90752e02d37SLiang Chen		spi0-2 {
90852e02d37SLiang Chen			spi0m2_clk: spi0m2-clk {
90952e02d37SLiang Chen				rockchip,pins = <3 RK_PA0 4 &pcfg_pull_up>;
91052e02d37SLiang Chen			};
91152e02d37SLiang Chen
91252e02d37SLiang Chen			spi0m2_cs0: spi0m2-cs0 {
91352e02d37SLiang Chen				rockchip,pins = <3 RK_PB0 3 &pcfg_pull_up>;
91452e02d37SLiang Chen			};
91552e02d37SLiang Chen
91652e02d37SLiang Chen			spi0m2_tx: spi0m2-tx {
91752e02d37SLiang Chen				rockchip,pins = <3 RK_PA1 4 &pcfg_pull_up>;
91852e02d37SLiang Chen			};
91952e02d37SLiang Chen
92052e02d37SLiang Chen			spi0m2_rx: spi0m2-rx {
92152e02d37SLiang Chen				rockchip,pins = <3 RK_PA2 4 &pcfg_pull_up>;
92252e02d37SLiang Chen			};
92352e02d37SLiang Chen		};
92452e02d37SLiang Chen
92552e02d37SLiang Chen		i2s1 {
92652e02d37SLiang Chen			i2s1_mclk: i2s1-mclk {
92752e02d37SLiang Chen				rockchip,pins = <2 RK_PB7 1 &pcfg_pull_none>;
92852e02d37SLiang Chen			};
92952e02d37SLiang Chen
93052e02d37SLiang Chen			i2s1_sclk: i2s1-sclk {
93152e02d37SLiang Chen				rockchip,pins = <2 RK_PC2 1 &pcfg_pull_none>;
93252e02d37SLiang Chen			};
93352e02d37SLiang Chen
93452e02d37SLiang Chen			i2s1_lrckrx: i2s1-lrckrx {
93552e02d37SLiang Chen				rockchip,pins = <2 RK_PC0 1 &pcfg_pull_none>;
93652e02d37SLiang Chen			};
93752e02d37SLiang Chen
93852e02d37SLiang Chen			i2s1_lrcktx: i2s1-lrcktx {
93952e02d37SLiang Chen				rockchip,pins = <2 RK_PC1 1 &pcfg_pull_none>;
94052e02d37SLiang Chen			};
94152e02d37SLiang Chen
94252e02d37SLiang Chen			i2s1_sdi: i2s1-sdi {
94352e02d37SLiang Chen				rockchip,pins = <2 RK_PC3 1 &pcfg_pull_none>;
94452e02d37SLiang Chen			};
94552e02d37SLiang Chen
94652e02d37SLiang Chen			i2s1_sdo: i2s1-sdo {
94752e02d37SLiang Chen				rockchip,pins = <2 RK_PC7 1 &pcfg_pull_none>;
94852e02d37SLiang Chen			};
94952e02d37SLiang Chen
95052e02d37SLiang Chen			i2s1_sdio1: i2s1-sdio1 {
95152e02d37SLiang Chen				rockchip,pins = <2 RK_PC4 1 &pcfg_pull_none>;
95252e02d37SLiang Chen			};
95352e02d37SLiang Chen
95452e02d37SLiang Chen			i2s1_sdio2: i2s1-sdio2 {
95552e02d37SLiang Chen				rockchip,pins = <2 RK_PC5 1 &pcfg_pull_none>;
95652e02d37SLiang Chen			};
95752e02d37SLiang Chen
95852e02d37SLiang Chen			i2s1_sdio3: i2s1-sdio3 {
95952e02d37SLiang Chen				rockchip,pins = <2 RK_PC6 1 &pcfg_pull_none>;
96052e02d37SLiang Chen			};
96152e02d37SLiang Chen
96252e02d37SLiang Chen			i2s1_sleep: i2s1-sleep {
96352e02d37SLiang Chen				rockchip,pins =
96452e02d37SLiang Chen					<2 RK_PB7 RK_FUNC_GPIO &pcfg_input_high>,
96552e02d37SLiang Chen					<2 RK_PC0 RK_FUNC_GPIO &pcfg_input_high>,
96652e02d37SLiang Chen					<2 RK_PC1 RK_FUNC_GPIO &pcfg_input_high>,
96752e02d37SLiang Chen					<2 RK_PC2 RK_FUNC_GPIO &pcfg_input_high>,
96852e02d37SLiang Chen					<2 RK_PC3 RK_FUNC_GPIO &pcfg_input_high>,
96952e02d37SLiang Chen					<2 RK_PC4 RK_FUNC_GPIO &pcfg_input_high>,
97052e02d37SLiang Chen					<2 RK_PC5 RK_FUNC_GPIO &pcfg_input_high>,
97152e02d37SLiang Chen					<2 RK_PC6 RK_FUNC_GPIO &pcfg_input_high>,
97252e02d37SLiang Chen					<2 RK_PC7 RK_FUNC_GPIO &pcfg_input_high>;
97352e02d37SLiang Chen			};
97452e02d37SLiang Chen		};
97552e02d37SLiang Chen
97652e02d37SLiang Chen		i2s2-0 {
97752e02d37SLiang Chen			i2s2m0_mclk: i2s2m0-mclk {
97852e02d37SLiang Chen				rockchip,pins = <1 RK_PC5 1 &pcfg_pull_none>;
97952e02d37SLiang Chen			};
98052e02d37SLiang Chen
98152e02d37SLiang Chen			i2s2m0_sclk: i2s2m0-sclk {
98252e02d37SLiang Chen				rockchip,pins = <1 RK_PC6 1 &pcfg_pull_none>;
98352e02d37SLiang Chen			};
98452e02d37SLiang Chen
98552e02d37SLiang Chen			i2s2m0_lrckrx: i2s2m0-lrckrx {
98652e02d37SLiang Chen				rockchip,pins = <1 RK_PD2 1 &pcfg_pull_none>;
98752e02d37SLiang Chen			};
98852e02d37SLiang Chen
98952e02d37SLiang Chen			i2s2m0_lrcktx: i2s2m0-lrcktx {
99052e02d37SLiang Chen				rockchip,pins = <1 RK_PC7 1 &pcfg_pull_none>;
99152e02d37SLiang Chen			};
99252e02d37SLiang Chen
99352e02d37SLiang Chen			i2s2m0_sdi: i2s2m0-sdi {
99452e02d37SLiang Chen				rockchip,pins = <1 RK_PD0 1 &pcfg_pull_none>;
99552e02d37SLiang Chen			};
99652e02d37SLiang Chen
99752e02d37SLiang Chen			i2s2m0_sdo: i2s2m0-sdo {
99852e02d37SLiang Chen				rockchip,pins = <1 RK_PD1 1 &pcfg_pull_none>;
99952e02d37SLiang Chen			};
100052e02d37SLiang Chen
100152e02d37SLiang Chen			i2s2m0_sleep: i2s2m0-sleep {
100252e02d37SLiang Chen				rockchip,pins =
100352e02d37SLiang Chen					<1 RK_PC5 RK_FUNC_GPIO &pcfg_input_high>,
100452e02d37SLiang Chen					<1 RK_PC6 RK_FUNC_GPIO &pcfg_input_high>,
100552e02d37SLiang Chen					<1 RK_PD2 RK_FUNC_GPIO &pcfg_input_high>,
100652e02d37SLiang Chen					<1 RK_PC7 RK_FUNC_GPIO &pcfg_input_high>,
100752e02d37SLiang Chen					<1 RK_PD0 RK_FUNC_GPIO &pcfg_input_high>,
100852e02d37SLiang Chen					<1 RK_PD1 RK_FUNC_GPIO &pcfg_input_high>;
100952e02d37SLiang Chen			};
101052e02d37SLiang Chen		};
101152e02d37SLiang Chen
101252e02d37SLiang Chen		i2s2-1 {
101352e02d37SLiang Chen			i2s2m1_mclk: i2s2m1-mclk {
101452e02d37SLiang Chen				rockchip,pins = <1 RK_PC5 1 &pcfg_pull_none>;
101552e02d37SLiang Chen			};
101652e02d37SLiang Chen
101752e02d37SLiang Chen			i2s2m1_sclk: i2s2m1-sclk {
101852e02d37SLiang Chen				rockchip,pins = <3 RK_PA0 6 &pcfg_pull_none>;
101952e02d37SLiang Chen			};
102052e02d37SLiang Chen
102152e02d37SLiang Chen			i2s2m1_lrckrx: i2sm1-lrckrx {
102252e02d37SLiang Chen				rockchip,pins = <3 RK_PB0 6 &pcfg_pull_none>;
102352e02d37SLiang Chen			};
102452e02d37SLiang Chen
102552e02d37SLiang Chen			i2s2m1_lrcktx: i2s2m1-lrcktx {
102652e02d37SLiang Chen				rockchip,pins = <3 RK_PB0 4 &pcfg_pull_none>;
102752e02d37SLiang Chen			};
102852e02d37SLiang Chen
102952e02d37SLiang Chen			i2s2m1_sdi: i2s2m1-sdi {
103052e02d37SLiang Chen				rockchip,pins = <3 RK_PA2 6 &pcfg_pull_none>;
103152e02d37SLiang Chen			};
103252e02d37SLiang Chen
103352e02d37SLiang Chen			i2s2m1_sdo: i2s2m1-sdo {
103452e02d37SLiang Chen				rockchip,pins = <3 RK_PA1 6 &pcfg_pull_none>;
103552e02d37SLiang Chen			};
103652e02d37SLiang Chen
103752e02d37SLiang Chen			i2s2m1_sleep: i2s2m1-sleep {
103852e02d37SLiang Chen				rockchip,pins =
103952e02d37SLiang Chen					<1 RK_PC5 RK_FUNC_GPIO &pcfg_input_high>,
104052e02d37SLiang Chen					<3 RK_PA0 RK_FUNC_GPIO &pcfg_input_high>,
104152e02d37SLiang Chen					<3 RK_PB0 RK_FUNC_GPIO &pcfg_input_high>,
104252e02d37SLiang Chen					<3 RK_PA2 RK_FUNC_GPIO &pcfg_input_high>,
104352e02d37SLiang Chen					<3 RK_PA1 RK_FUNC_GPIO &pcfg_input_high>;
104452e02d37SLiang Chen			};
104552e02d37SLiang Chen		};
104652e02d37SLiang Chen
104752e02d37SLiang Chen		spdif-0 {
104852e02d37SLiang Chen			spdifm0_tx: spdifm0-tx {
104952e02d37SLiang Chen				rockchip,pins = <0 RK_PD3 1 &pcfg_pull_none>;
105052e02d37SLiang Chen			};
105152e02d37SLiang Chen		};
105252e02d37SLiang Chen
105352e02d37SLiang Chen		spdif-1 {
105452e02d37SLiang Chen			spdifm1_tx: spdifm1-tx {
105552e02d37SLiang Chen				rockchip,pins = <2 RK_PC1 2 &pcfg_pull_none>;
105652e02d37SLiang Chen			};
105752e02d37SLiang Chen		};
105852e02d37SLiang Chen
105952e02d37SLiang Chen		spdif-2 {
106052e02d37SLiang Chen			spdifm2_tx: spdifm2-tx {
106152e02d37SLiang Chen				rockchip,pins = <0 RK_PA2 2 &pcfg_pull_none>;
106252e02d37SLiang Chen			};
106352e02d37SLiang Chen		};
106452e02d37SLiang Chen
106552e02d37SLiang Chen		sdmmc0-0 {
106652e02d37SLiang Chen			sdmmc0m0_pwren: sdmmc0m0-pwren {
106752e02d37SLiang Chen				rockchip,pins = <2 RK_PA7 1 &pcfg_pull_up_4ma>;
106852e02d37SLiang Chen			};
106952e02d37SLiang Chen
107052e02d37SLiang Chen			sdmmc0m0_gpio: sdmmc0m0-gpio {
107152e02d37SLiang Chen				rockchip,pins = <2 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
107252e02d37SLiang Chen			};
107352e02d37SLiang Chen		};
107452e02d37SLiang Chen
107552e02d37SLiang Chen		sdmmc0-1 {
107652e02d37SLiang Chen			sdmmc0m1_pwren: sdmmc0m1-pwren {
107752e02d37SLiang Chen				rockchip,pins = <0 RK_PD6 3 &pcfg_pull_up_4ma>;
107852e02d37SLiang Chen			};
107952e02d37SLiang Chen
108052e02d37SLiang Chen			sdmmc0m1_gpio: sdmmc0m1-gpio {
108152e02d37SLiang Chen				rockchip,pins = <0 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
108252e02d37SLiang Chen			};
108352e02d37SLiang Chen		};
108452e02d37SLiang Chen
108552e02d37SLiang Chen		sdmmc0 {
108652e02d37SLiang Chen			sdmmc0_clk: sdmmc0-clk {
108752e02d37SLiang Chen				rockchip,pins = <1 RK_PA6 1 &pcfg_pull_none_4ma>;
108852e02d37SLiang Chen			};
108952e02d37SLiang Chen
109052e02d37SLiang Chen			sdmmc0_cmd: sdmmc0-cmd {
109152e02d37SLiang Chen				rockchip,pins = <1 RK_PA4 1 &pcfg_pull_up_4ma>;
109252e02d37SLiang Chen			};
109352e02d37SLiang Chen
109452e02d37SLiang Chen			sdmmc0_dectn: sdmmc0-dectn {
109552e02d37SLiang Chen				rockchip,pins = <1 RK_PA5 1 &pcfg_pull_up_4ma>;
109652e02d37SLiang Chen			};
109752e02d37SLiang Chen
109852e02d37SLiang Chen			sdmmc0_wrprt: sdmmc0-wrprt {
109952e02d37SLiang Chen				rockchip,pins = <1 RK_PA7 1 &pcfg_pull_up_4ma>;
110052e02d37SLiang Chen			};
110152e02d37SLiang Chen
110252e02d37SLiang Chen			sdmmc0_bus1: sdmmc0-bus1 {
110352e02d37SLiang Chen				rockchip,pins = <1 RK_PA0 1 &pcfg_pull_up_4ma>;
110452e02d37SLiang Chen			};
110552e02d37SLiang Chen
110652e02d37SLiang Chen			sdmmc0_bus4: sdmmc0-bus4 {
110752e02d37SLiang Chen				rockchip,pins = <1 RK_PA0 1 &pcfg_pull_up_4ma>,
110852e02d37SLiang Chen						<1 RK_PA1 1 &pcfg_pull_up_4ma>,
110952e02d37SLiang Chen						<1 RK_PA2 1 &pcfg_pull_up_4ma>,
111052e02d37SLiang Chen						<1 RK_PA3 1 &pcfg_pull_up_4ma>;
111152e02d37SLiang Chen			};
111252e02d37SLiang Chen
111352e02d37SLiang Chen			sdmmc0_gpio: sdmmc0-gpio {
111452e02d37SLiang Chen				rockchip,pins =
111552e02d37SLiang Chen					<1 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
111652e02d37SLiang Chen					<1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
111752e02d37SLiang Chen					<1 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
111852e02d37SLiang Chen					<1 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
111952e02d37SLiang Chen					<1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
112052e02d37SLiang Chen					<1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
112152e02d37SLiang Chen					<1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
112252e02d37SLiang Chen					<1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
112352e02d37SLiang Chen			};
112452e02d37SLiang Chen		};
112552e02d37SLiang Chen
112652e02d37SLiang Chen		sdmmc0ext {
112752e02d37SLiang Chen			sdmmc0ext_clk: sdmmc0ext-clk {
112852e02d37SLiang Chen				rockchip,pins = <3 RK_PA2 3 &pcfg_pull_none_4ma>;
112952e02d37SLiang Chen			};
113052e02d37SLiang Chen
113152e02d37SLiang Chen			sdmmc0ext_cmd: sdmmc0ext-cmd {
113252e02d37SLiang Chen				rockchip,pins = <3 RK_PA0 3 &pcfg_pull_up_4ma>;
113352e02d37SLiang Chen			};
113452e02d37SLiang Chen
113552e02d37SLiang Chen			sdmmc0ext_wrprt: sdmmc0ext-wrprt {
113652e02d37SLiang Chen				rockchip,pins = <3 RK_PA3 3 &pcfg_pull_up_4ma>;
113752e02d37SLiang Chen			};
113852e02d37SLiang Chen
113952e02d37SLiang Chen			sdmmc0ext_dectn: sdmmc0ext-dectn {
114052e02d37SLiang Chen				rockchip,pins = <3 RK_PA1 3 &pcfg_pull_up_4ma>;
114152e02d37SLiang Chen			};
114252e02d37SLiang Chen
114352e02d37SLiang Chen			sdmmc0ext_bus1: sdmmc0ext-bus1 {
114452e02d37SLiang Chen				rockchip,pins = <3 RK_PA4 3 &pcfg_pull_up_4ma>;
114552e02d37SLiang Chen			};
114652e02d37SLiang Chen
114752e02d37SLiang Chen			sdmmc0ext_bus4: sdmmc0ext-bus4 {
114852e02d37SLiang Chen				rockchip,pins =
114952e02d37SLiang Chen					<3 RK_PA4 3 &pcfg_pull_up_4ma>,
115052e02d37SLiang Chen					<3 RK_PA5 3 &pcfg_pull_up_4ma>,
115152e02d37SLiang Chen					<3 RK_PA6 3 &pcfg_pull_up_4ma>,
115252e02d37SLiang Chen					<3 RK_PA7 3 &pcfg_pull_up_4ma>;
115352e02d37SLiang Chen			};
115452e02d37SLiang Chen
115552e02d37SLiang Chen			sdmmc0ext_gpio: sdmmc0ext-gpio {
115652e02d37SLiang Chen				rockchip,pins =
115752e02d37SLiang Chen					<3 RK_PA0 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
115852e02d37SLiang Chen					<3 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
115952e02d37SLiang Chen					<3 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
116052e02d37SLiang Chen					<3 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
116152e02d37SLiang Chen					<3 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
116252e02d37SLiang Chen					<3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
116352e02d37SLiang Chen					<3 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
116452e02d37SLiang Chen					<3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
116552e02d37SLiang Chen			};
116652e02d37SLiang Chen		};
116752e02d37SLiang Chen
116852e02d37SLiang Chen		sdmmc1 {
116952e02d37SLiang Chen			sdmmc1_clk: sdmmc1-clk {
117052e02d37SLiang Chen				rockchip,pins = <1 RK_PB4 1 &pcfg_pull_none_8ma>;
117152e02d37SLiang Chen			};
117252e02d37SLiang Chen
117352e02d37SLiang Chen			sdmmc1_cmd: sdmmc1-cmd {
117452e02d37SLiang Chen				rockchip,pins = <1 RK_PB5 1 &pcfg_pull_up_8ma>;
117552e02d37SLiang Chen			};
117652e02d37SLiang Chen
117752e02d37SLiang Chen			sdmmc1_pwren: sdmmc1-pwren {
117852e02d37SLiang Chen				rockchip,pins = <1 RK_PC2 1 &pcfg_pull_up_8ma>;
117952e02d37SLiang Chen			};
118052e02d37SLiang Chen
118152e02d37SLiang Chen			sdmmc1_wrprt: sdmmc1-wrprt {
118252e02d37SLiang Chen				rockchip,pins = <1 RK_PC4 1 &pcfg_pull_up_8ma>;
118352e02d37SLiang Chen			};
118452e02d37SLiang Chen
118552e02d37SLiang Chen			sdmmc1_dectn: sdmmc1-dectn {
118652e02d37SLiang Chen				rockchip,pins = <1 RK_PC3 1 &pcfg_pull_up_8ma>;
118752e02d37SLiang Chen			};
118852e02d37SLiang Chen
118952e02d37SLiang Chen			sdmmc1_bus1: sdmmc1-bus1 {
119052e02d37SLiang Chen				rockchip,pins = <1 RK_PB6 1 &pcfg_pull_up_8ma>;
119152e02d37SLiang Chen			};
119252e02d37SLiang Chen
119352e02d37SLiang Chen			sdmmc1_bus4: sdmmc1-bus4 {
119452e02d37SLiang Chen				rockchip,pins = <1 RK_PB6 1 &pcfg_pull_up_8ma>,
119552e02d37SLiang Chen						<1 RK_PB7 1 &pcfg_pull_up_8ma>,
119652e02d37SLiang Chen						<1 RK_PC0 1 &pcfg_pull_up_8ma>,
119752e02d37SLiang Chen						<1 RK_PC1 1 &pcfg_pull_up_8ma>;
119852e02d37SLiang Chen			};
119952e02d37SLiang Chen
120052e02d37SLiang Chen			sdmmc1_gpio: sdmmc1-gpio {
120152e02d37SLiang Chen				rockchip,pins =
120252e02d37SLiang Chen					<1 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120352e02d37SLiang Chen					<1 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120452e02d37SLiang Chen					<1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120552e02d37SLiang Chen					<1 RK_PB7 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120652e02d37SLiang Chen					<1 RK_PC0 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120752e02d37SLiang Chen					<1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120852e02d37SLiang Chen					<1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
120952e02d37SLiang Chen					<1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_up_4ma>,
121052e02d37SLiang Chen					<1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_up_4ma>;
121152e02d37SLiang Chen			};
121252e02d37SLiang Chen		};
121352e02d37SLiang Chen
121452e02d37SLiang Chen		emmc {
121552e02d37SLiang Chen			emmc_clk: emmc-clk {
121652e02d37SLiang Chen				rockchip,pins = <3 RK_PC5 2 &pcfg_pull_none_12ma>;
121752e02d37SLiang Chen			};
121852e02d37SLiang Chen
121952e02d37SLiang Chen			emmc_cmd: emmc-cmd {
122052e02d37SLiang Chen				rockchip,pins = <3 RK_PC3 2 &pcfg_pull_up_12ma>;
122152e02d37SLiang Chen			};
122252e02d37SLiang Chen
122352e02d37SLiang Chen			emmc_pwren: emmc-pwren {
122452e02d37SLiang Chen				rockchip,pins = <3 RK_PC6 2 &pcfg_pull_none>;
122552e02d37SLiang Chen			};
122652e02d37SLiang Chen
122752e02d37SLiang Chen			emmc_rstnout: emmc-rstnout {
122852e02d37SLiang Chen				rockchip,pins = <3 RK_PC4 2 &pcfg_pull_none>;
122952e02d37SLiang Chen			};
123052e02d37SLiang Chen
123152e02d37SLiang Chen			emmc_bus1: emmc-bus1 {
123252e02d37SLiang Chen				rockchip,pins = <0 RK_PA7 2 &pcfg_pull_up_12ma>;
123352e02d37SLiang Chen			};
123452e02d37SLiang Chen
123552e02d37SLiang Chen			emmc_bus4: emmc-bus4 {
123652e02d37SLiang Chen				rockchip,pins =
123752e02d37SLiang Chen					<0 RK_PA7 2 &pcfg_pull_up_12ma>,
123852e02d37SLiang Chen					<2 RK_PD4 2 &pcfg_pull_up_12ma>,
123952e02d37SLiang Chen					<2 RK_PD5 2 &pcfg_pull_up_12ma>,
124052e02d37SLiang Chen					<2 RK_PD6 2 &pcfg_pull_up_12ma>;
124152e02d37SLiang Chen			};
124252e02d37SLiang Chen
124352e02d37SLiang Chen			emmc_bus8: emmc-bus8 {
124452e02d37SLiang Chen				rockchip,pins =
124552e02d37SLiang Chen					<0 RK_PA7 2 &pcfg_pull_up_12ma>,
124652e02d37SLiang Chen					<2 RK_PD4 2 &pcfg_pull_up_12ma>,
124752e02d37SLiang Chen					<2 RK_PD5 2 &pcfg_pull_up_12ma>,
124852e02d37SLiang Chen					<2 RK_PD6 2 &pcfg_pull_up_12ma>,
124952e02d37SLiang Chen					<2 RK_PD7 2 &pcfg_pull_up_12ma>,
125052e02d37SLiang Chen					<3 RK_PC0 2 &pcfg_pull_up_12ma>,
125152e02d37SLiang Chen					<3 RK_PC1 2 &pcfg_pull_up_12ma>,
125252e02d37SLiang Chen					<3 RK_PC2 2 &pcfg_pull_up_12ma>;
125352e02d37SLiang Chen			};
125452e02d37SLiang Chen		};
125552e02d37SLiang Chen
125652e02d37SLiang Chen		pwm0 {
125752e02d37SLiang Chen			pwm0_pin: pwm0-pin {
125852e02d37SLiang Chen				rockchip,pins = <2 RK_PA4 1 &pcfg_pull_none>;
125952e02d37SLiang Chen			};
126052e02d37SLiang Chen		};
126152e02d37SLiang Chen
126252e02d37SLiang Chen		pwm1 {
126352e02d37SLiang Chen			pwm1_pin: pwm1-pin {
126452e02d37SLiang Chen				rockchip,pins = <2 RK_PA5 1 &pcfg_pull_none>;
126552e02d37SLiang Chen			};
126652e02d37SLiang Chen		};
126752e02d37SLiang Chen
126852e02d37SLiang Chen		pwm2 {
126952e02d37SLiang Chen			pwm2_pin: pwm2-pin {
127052e02d37SLiang Chen				rockchip,pins = <2 RK_PA6 1 &pcfg_pull_none>;
127152e02d37SLiang Chen			};
127252e02d37SLiang Chen		};
127352e02d37SLiang Chen
127452e02d37SLiang Chen		pwmir {
127552e02d37SLiang Chen			pwmir_pin: pwmir-pin {
127652e02d37SLiang Chen				rockchip,pins = <2 RK_PA2 1 &pcfg_pull_none>;
127752e02d37SLiang Chen			};
127852e02d37SLiang Chen		};
127952e02d37SLiang Chen
128052e02d37SLiang Chen		gmac-1 {
128152e02d37SLiang Chen			rgmiim1_pins: rgmiim1-pins {
128252e02d37SLiang Chen				rockchip,pins =
128352e02d37SLiang Chen					/* mac_txclk */
128452e02d37SLiang Chen					<1 RK_PB4 2 &pcfg_pull_none_12ma>,
128552e02d37SLiang Chen					/* mac_rxclk */
128652e02d37SLiang Chen					<1 RK_PB5 2 &pcfg_pull_none_2ma>,
128752e02d37SLiang Chen					/* mac_mdio */
128852e02d37SLiang Chen					<1 RK_PC3 2 &pcfg_pull_none_2ma>,
128952e02d37SLiang Chen					/* mac_txen */
129052e02d37SLiang Chen					<1 RK_PD1 2 &pcfg_pull_none_12ma>,
129152e02d37SLiang Chen					/* mac_clk */
129252e02d37SLiang Chen					<1 RK_PC5 2 &pcfg_pull_none_2ma>,
129352e02d37SLiang Chen					/* mac_rxdv */
129452e02d37SLiang Chen					<1 RK_PC6 2 &pcfg_pull_none_2ma>,
129552e02d37SLiang Chen					/* mac_mdc */
129652e02d37SLiang Chen					<1 RK_PC7 2 &pcfg_pull_none_2ma>,
129752e02d37SLiang Chen					/* mac_rxd1 */
129852e02d37SLiang Chen					<1 RK_PB2 2 &pcfg_pull_none_2ma>,
129952e02d37SLiang Chen					/* mac_rxd0 */
130052e02d37SLiang Chen					<1 RK_PB3 2 &pcfg_pull_none_2ma>,
130152e02d37SLiang Chen					/* mac_txd1 */
130252e02d37SLiang Chen					<1 RK_PB0 2 &pcfg_pull_none_12ma>,
130352e02d37SLiang Chen					/* mac_txd0 */
130452e02d37SLiang Chen					<1 RK_PB1 2 &pcfg_pull_none_12ma>,
130552e02d37SLiang Chen					/* mac_rxd3 */
130652e02d37SLiang Chen					<1 RK_PB6 2 &pcfg_pull_none_2ma>,
130752e02d37SLiang Chen					/* mac_rxd2 */
130852e02d37SLiang Chen					<1 RK_PB7 2 &pcfg_pull_none_2ma>,
130952e02d37SLiang Chen					/* mac_txd3 */
131052e02d37SLiang Chen					<1 RK_PC0 2 &pcfg_pull_none_12ma>,
131152e02d37SLiang Chen					/* mac_txd2 */
131252e02d37SLiang Chen					<1 RK_PC1 2 &pcfg_pull_none_12ma>,
131352e02d37SLiang Chen
131452e02d37SLiang Chen					/* mac_txclk */
131552e02d37SLiang Chen					<0 RK_PB0 1 &pcfg_pull_none>,
131652e02d37SLiang Chen					/* mac_txen */
131752e02d37SLiang Chen					<0 RK_PB4 1 &pcfg_pull_none>,
131852e02d37SLiang Chen					/* mac_clk */
131952e02d37SLiang Chen					<0 RK_PD0 1 &pcfg_pull_none>,
132052e02d37SLiang Chen					/* mac_txd1 */
132152e02d37SLiang Chen					<0 RK_PC0 1 &pcfg_pull_none>,
132252e02d37SLiang Chen					/* mac_txd0 */
132352e02d37SLiang Chen					<0 RK_PC1 1 &pcfg_pull_none>,
132452e02d37SLiang Chen					/* mac_txd3 */
132552e02d37SLiang Chen					<0 RK_PC7 1 &pcfg_pull_none>,
132652e02d37SLiang Chen					/* mac_txd2 */
132752e02d37SLiang Chen					<0 RK_PC6 1 &pcfg_pull_none>;
132852e02d37SLiang Chen			};
132952e02d37SLiang Chen
133052e02d37SLiang Chen			rmiim1_pins: rmiim1-pins {
133152e02d37SLiang Chen				rockchip,pins =
133252e02d37SLiang Chen					/* mac_mdio */
133352e02d37SLiang Chen					<1 RK_PC3 2 &pcfg_pull_none_2ma>,
133452e02d37SLiang Chen					/* mac_txen */
133552e02d37SLiang Chen					<1 RK_PD1 2 &pcfg_pull_none_12ma>,
133652e02d37SLiang Chen					/* mac_clk */
133752e02d37SLiang Chen					<1 RK_PC5 2 &pcfg_pull_none_2ma>,
133852e02d37SLiang Chen					/* mac_rxer */
133952e02d37SLiang Chen					<1 RK_PD0 2 &pcfg_pull_none_2ma>,
134052e02d37SLiang Chen					/* mac_rxdv */
134152e02d37SLiang Chen					<1 RK_PC6 2 &pcfg_pull_none_2ma>,
134252e02d37SLiang Chen					/* mac_mdc */
134352e02d37SLiang Chen					<1 RK_PC7 2 &pcfg_pull_none_2ma>,
134452e02d37SLiang Chen					/* mac_rxd1 */
134552e02d37SLiang Chen					<1 RK_PB2 2 &pcfg_pull_none_2ma>,
134652e02d37SLiang Chen					/* mac_rxd0 */
134752e02d37SLiang Chen					<1 RK_PB3 2 &pcfg_pull_none_2ma>,
134852e02d37SLiang Chen					/* mac_txd1 */
134952e02d37SLiang Chen					<1 RK_PB0 2 &pcfg_pull_none_12ma>,
135052e02d37SLiang Chen					/* mac_txd0 */
135152e02d37SLiang Chen					<1 RK_PB1 2 &pcfg_pull_none_12ma>,
135252e02d37SLiang Chen
135352e02d37SLiang Chen					/* mac_mdio */
135452e02d37SLiang Chen					<0 RK_PB3 1 &pcfg_pull_none>,
135552e02d37SLiang Chen					/* mac_txen */
135652e02d37SLiang Chen					<0 RK_PB4 1 &pcfg_pull_none>,
135752e02d37SLiang Chen					/* mac_clk */
135852e02d37SLiang Chen					<0 RK_PD0 1 &pcfg_pull_none>,
135952e02d37SLiang Chen					/* mac_mdc */
136052e02d37SLiang Chen					<0 RK_PC3 1 &pcfg_pull_none>,
136152e02d37SLiang Chen					/* mac_txd1 */
136252e02d37SLiang Chen					<0 RK_PC0 1 &pcfg_pull_none>,
136352e02d37SLiang Chen					/* mac_txd0 */
136452e02d37SLiang Chen					<0 RK_PC1 1 &pcfg_pull_none>;
136552e02d37SLiang Chen			};
136652e02d37SLiang Chen		};
136752e02d37SLiang Chen
136852e02d37SLiang Chen		gmac2phy {
136952e02d37SLiang Chen			fephyled_speed100: fephyled-speed100 {
137052e02d37SLiang Chen				rockchip,pins = <0 RK_PD7 1 &pcfg_pull_none>;
137152e02d37SLiang Chen			};
137252e02d37SLiang Chen
137352e02d37SLiang Chen			fephyled_speed10: fephyled-speed10 {
137452e02d37SLiang Chen				rockchip,pins = <0 RK_PD6 1 &pcfg_pull_none>;
137552e02d37SLiang Chen			};
137652e02d37SLiang Chen
137752e02d37SLiang Chen			fephyled_duplex: fephyled-duplex {
137852e02d37SLiang Chen				rockchip,pins = <0 RK_PD6 2 &pcfg_pull_none>;
137952e02d37SLiang Chen			};
138052e02d37SLiang Chen
138152e02d37SLiang Chen			fephyled_rxm0: fephyled-rxm0 {
138252e02d37SLiang Chen				rockchip,pins = <0 RK_PD5 1 &pcfg_pull_none>;
138352e02d37SLiang Chen			};
138452e02d37SLiang Chen
138552e02d37SLiang Chen			fephyled_txm0: fephyled-txm0 {
138652e02d37SLiang Chen				rockchip,pins = <0 RK_PD5 2 &pcfg_pull_none>;
138752e02d37SLiang Chen			};
138852e02d37SLiang Chen
138952e02d37SLiang Chen			fephyled_linkm0: fephyled-linkm0 {
139052e02d37SLiang Chen				rockchip,pins = <0 RK_PD4 1 &pcfg_pull_none>;
139152e02d37SLiang Chen			};
139252e02d37SLiang Chen
139352e02d37SLiang Chen			fephyled_rxm1: fephyled-rxm1 {
139452e02d37SLiang Chen				rockchip,pins = <2 RK_PD1 2 &pcfg_pull_none>;
139552e02d37SLiang Chen			};
139652e02d37SLiang Chen
139752e02d37SLiang Chen			fephyled_txm1: fephyled-txm1 {
139852e02d37SLiang Chen				rockchip,pins = <2 RK_PD1 3 &pcfg_pull_none>;
139952e02d37SLiang Chen			};
140052e02d37SLiang Chen
140152e02d37SLiang Chen			fephyled_linkm1: fephyled-linkm1 {
140252e02d37SLiang Chen				rockchip,pins = <2 RK_PD0 2 &pcfg_pull_none>;
140352e02d37SLiang Chen			};
140452e02d37SLiang Chen		};
140552e02d37SLiang Chen
140652e02d37SLiang Chen		tsadc_pin {
140752e02d37SLiang Chen			tsadc_int: tsadc-int {
140852e02d37SLiang Chen				rockchip,pins = <2 RK_PB5 2 &pcfg_pull_none>;
140952e02d37SLiang Chen			};
141052e02d37SLiang Chen			tsadc_gpio: tsadc-gpio {
141152e02d37SLiang Chen				rockchip,pins = <2 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
141252e02d37SLiang Chen			};
141352e02d37SLiang Chen		};
141452e02d37SLiang Chen
141552e02d37SLiang Chen		hdmi_pin {
141652e02d37SLiang Chen			hdmi_cec: hdmi-cec {
141752e02d37SLiang Chen				rockchip,pins = <0 RK_PA3 1 &pcfg_pull_none>;
141852e02d37SLiang Chen			};
141952e02d37SLiang Chen
142052e02d37SLiang Chen			hdmi_hpd: hdmi-hpd {
142152e02d37SLiang Chen				rockchip,pins = <0 RK_PA4 1 &pcfg_pull_down>;
142252e02d37SLiang Chen			};
142352e02d37SLiang Chen		};
142452e02d37SLiang Chen
142552e02d37SLiang Chen		cif-0 {
142652e02d37SLiang Chen			dvp_d2d9_m0:dvp-d2d9-m0 {
142752e02d37SLiang Chen				rockchip,pins =
142852e02d37SLiang Chen					/* cif_d0 */
142952e02d37SLiang Chen					<3 RK_PA4 2 &pcfg_pull_none>,
143052e02d37SLiang Chen					/* cif_d1 */
143152e02d37SLiang Chen					<3 RK_PA5 2 &pcfg_pull_none>,
143252e02d37SLiang Chen					/* cif_d2 */
143352e02d37SLiang Chen					<3 RK_PA6 2 &pcfg_pull_none>,
143452e02d37SLiang Chen					/* cif_d3 */
143552e02d37SLiang Chen					<3 RK_PA7 2 &pcfg_pull_none>,
143652e02d37SLiang Chen					/* cif_d4 */
143752e02d37SLiang Chen					<3 RK_PB0 2 &pcfg_pull_none>,
143852e02d37SLiang Chen					/* cif_d5m0 */
143952e02d37SLiang Chen					<3 RK_PB1 2 &pcfg_pull_none>,
144052e02d37SLiang Chen					/* cif_d6m0 */
144152e02d37SLiang Chen					<3 RK_PB2 2 &pcfg_pull_none>,
144252e02d37SLiang Chen					/* cif_d7m0 */
144352e02d37SLiang Chen					<3 RK_PB3 2 &pcfg_pull_none>,
144452e02d37SLiang Chen					/* cif_href */
144552e02d37SLiang Chen					<3 RK_PA1 2 &pcfg_pull_none>,
144652e02d37SLiang Chen					/* cif_vsync */
144752e02d37SLiang Chen					<3 RK_PA0 2 &pcfg_pull_none>,
144852e02d37SLiang Chen					/* cif_clkoutm0 */
144952e02d37SLiang Chen					<3 RK_PA3 2 &pcfg_pull_none>,
145052e02d37SLiang Chen					/* cif_clkin */
145152e02d37SLiang Chen					<3 RK_PA2 2 &pcfg_pull_none>;
145252e02d37SLiang Chen			};
145352e02d37SLiang Chen		};
145452e02d37SLiang Chen
145552e02d37SLiang Chen		cif-1 {
145652e02d37SLiang Chen			dvp_d2d9_m1:dvp-d2d9-m1 {
145752e02d37SLiang Chen				rockchip,pins =
145852e02d37SLiang Chen					/* cif_d0 */
145952e02d37SLiang Chen					<3 RK_PA4 2 &pcfg_pull_none>,
146052e02d37SLiang Chen					/* cif_d1 */
146152e02d37SLiang Chen					<3 RK_PA5 2 &pcfg_pull_none>,
146252e02d37SLiang Chen					/* cif_d2 */
146352e02d37SLiang Chen					<3 RK_PA6 2 &pcfg_pull_none>,
146452e02d37SLiang Chen					/* cif_d3 */
146552e02d37SLiang Chen					<3 RK_PA7 2 &pcfg_pull_none>,
146652e02d37SLiang Chen					/* cif_d4 */
146752e02d37SLiang Chen					<3 RK_PB0 2 &pcfg_pull_none>,
146852e02d37SLiang Chen					/* cif_d5m1 */
146952e02d37SLiang Chen					<2 RK_PC0 4 &pcfg_pull_none>,
147052e02d37SLiang Chen					/* cif_d6m1 */
147152e02d37SLiang Chen					<2 RK_PC1 4 &pcfg_pull_none>,
147252e02d37SLiang Chen					/* cif_d7m1 */
147352e02d37SLiang Chen					<2 RK_PC2 4 &pcfg_pull_none>,
147452e02d37SLiang Chen					/* cif_href */
147552e02d37SLiang Chen					<3 RK_PA1 2 &pcfg_pull_none>,
147652e02d37SLiang Chen					/* cif_vsync */
147752e02d37SLiang Chen					<3 RK_PA0 2 &pcfg_pull_none>,
147852e02d37SLiang Chen					/* cif_clkoutm1 */
147952e02d37SLiang Chen					<2 RK_PB7 4 &pcfg_pull_none>,
148052e02d37SLiang Chen					/* cif_clkin */
148152e02d37SLiang Chen					<3 RK_PA2 2 &pcfg_pull_none>;
148252e02d37SLiang Chen			};
148352e02d37SLiang Chen		};
148452e02d37SLiang Chen	};
148552e02d37SLiang Chen};
1486