1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd.
4*724ba675SRob Herring */
5*724ba675SRob Herring
6*724ba675SRob Herring#include <dt-bindings/clock/rockchip,rv1126-cru.h>
7*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
8*724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h>
9*724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
10*724ba675SRob Herring#include <dt-bindings/pinctrl/rockchip.h>
11*724ba675SRob Herring#include <dt-bindings/power/rockchip,rv1126-power.h>
12*724ba675SRob Herring#include <dt-bindings/soc/rockchip,boot-mode.h>
13*724ba675SRob Herring
14*724ba675SRob Herring/ {
15*724ba675SRob Herring	#address-cells = <1>;
16*724ba675SRob Herring	#size-cells = <1>;
17*724ba675SRob Herring
18*724ba675SRob Herring	compatible = "rockchip,rv1126";
19*724ba675SRob Herring
20*724ba675SRob Herring	interrupt-parent = <&gic>;
21*724ba675SRob Herring
22*724ba675SRob Herring	aliases {
23*724ba675SRob Herring		i2c0 = &i2c0;
24*724ba675SRob Herring	};
25*724ba675SRob Herring
26*724ba675SRob Herring	cpus {
27*724ba675SRob Herring		#address-cells = <1>;
28*724ba675SRob Herring		#size-cells = <0>;
29*724ba675SRob Herring
30*724ba675SRob Herring		cpu0: cpu@f00 {
31*724ba675SRob Herring			device_type = "cpu";
32*724ba675SRob Herring			compatible = "arm,cortex-a7";
33*724ba675SRob Herring			reg = <0xf00>;
34*724ba675SRob Herring			enable-method = "psci";
35*724ba675SRob Herring			clocks = <&cru ARMCLK>;
36*724ba675SRob Herring		};
37*724ba675SRob Herring
38*724ba675SRob Herring		cpu1: cpu@f01 {
39*724ba675SRob Herring			device_type = "cpu";
40*724ba675SRob Herring			compatible = "arm,cortex-a7";
41*724ba675SRob Herring			reg = <0xf01>;
42*724ba675SRob Herring			enable-method = "psci";
43*724ba675SRob Herring			clocks = <&cru ARMCLK>;
44*724ba675SRob Herring		};
45*724ba675SRob Herring
46*724ba675SRob Herring		cpu2: cpu@f02 {
47*724ba675SRob Herring			device_type = "cpu";
48*724ba675SRob Herring			compatible = "arm,cortex-a7";
49*724ba675SRob Herring			reg = <0xf02>;
50*724ba675SRob Herring			enable-method = "psci";
51*724ba675SRob Herring			clocks = <&cru ARMCLK>;
52*724ba675SRob Herring		};
53*724ba675SRob Herring
54*724ba675SRob Herring		cpu3: cpu@f03 {
55*724ba675SRob Herring			device_type = "cpu";
56*724ba675SRob Herring			compatible = "arm,cortex-a7";
57*724ba675SRob Herring			reg = <0xf03>;
58*724ba675SRob Herring			enable-method = "psci";
59*724ba675SRob Herring			clocks = <&cru ARMCLK>;
60*724ba675SRob Herring		};
61*724ba675SRob Herring	};
62*724ba675SRob Herring
63*724ba675SRob Herring	arm-pmu {
64*724ba675SRob Herring		compatible = "arm,cortex-a7-pmu";
65*724ba675SRob Herring		interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
66*724ba675SRob Herring			     <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>,
67*724ba675SRob Herring			     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
68*724ba675SRob Herring			     <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
69*724ba675SRob Herring		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
70*724ba675SRob Herring	};
71*724ba675SRob Herring
72*724ba675SRob Herring	psci {
73*724ba675SRob Herring		compatible = "arm,psci-1.0";
74*724ba675SRob Herring		method = "smc";
75*724ba675SRob Herring	};
76*724ba675SRob Herring
77*724ba675SRob Herring	timer {
78*724ba675SRob Herring		compatible = "arm,armv7-timer";
79*724ba675SRob Herring		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
80*724ba675SRob Herring			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
81*724ba675SRob Herring			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>,
82*724ba675SRob Herring			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
83*724ba675SRob Herring		clock-frequency = <24000000>;
84*724ba675SRob Herring	};
85*724ba675SRob Herring
86*724ba675SRob Herring	xin24m: oscillator {
87*724ba675SRob Herring		compatible = "fixed-clock";
88*724ba675SRob Herring		clock-frequency = <24000000>;
89*724ba675SRob Herring		clock-output-names = "xin24m";
90*724ba675SRob Herring		#clock-cells = <0>;
91*724ba675SRob Herring	};
92*724ba675SRob Herring
93*724ba675SRob Herring	grf: syscon@fe000000 {
94*724ba675SRob Herring		compatible = "rockchip,rv1126-grf", "syscon", "simple-mfd";
95*724ba675SRob Herring		reg = <0xfe000000 0x20000>;
96*724ba675SRob Herring	};
97*724ba675SRob Herring
98*724ba675SRob Herring	pmugrf: syscon@fe020000 {
99*724ba675SRob Herring		compatible = "rockchip,rv1126-pmugrf", "syscon", "simple-mfd";
100*724ba675SRob Herring		reg = <0xfe020000 0x1000>;
101*724ba675SRob Herring
102*724ba675SRob Herring		pmu_io_domains: io-domains {
103*724ba675SRob Herring			compatible = "rockchip,rv1126-pmu-io-voltage-domain";
104*724ba675SRob Herring			status = "disabled";
105*724ba675SRob Herring		};
106*724ba675SRob Herring	};
107*724ba675SRob Herring
108*724ba675SRob Herring	qos_emmc: qos@fe860000 {
109*724ba675SRob Herring		compatible = "rockchip,rv1126-qos", "syscon";
110*724ba675SRob Herring		reg = <0xfe860000 0x20>;
111*724ba675SRob Herring	};
112*724ba675SRob Herring
113*724ba675SRob Herring	qos_nandc: qos@fe860080 {
114*724ba675SRob Herring		compatible = "rockchip,rv1126-qos", "syscon";
115*724ba675SRob Herring		reg = <0xfe860080 0x20>;
116*724ba675SRob Herring	};
117*724ba675SRob Herring
118*724ba675SRob Herring	qos_sfc: qos@fe860200 {
119*724ba675SRob Herring		compatible = "rockchip,rv1126-qos", "syscon";
120*724ba675SRob Herring		reg = <0xfe860200 0x20>;
121*724ba675SRob Herring	};
122*724ba675SRob Herring
123*724ba675SRob Herring	qos_sdio: qos@fe86c000 {
124*724ba675SRob Herring		compatible = "rockchip,rv1126-qos", "syscon";
125*724ba675SRob Herring		reg = <0xfe86c000 0x20>;
126*724ba675SRob Herring	};
127*724ba675SRob Herring
128*724ba675SRob Herring	gic: interrupt-controller@feff0000 {
129*724ba675SRob Herring		compatible = "arm,gic-400";
130*724ba675SRob Herring		interrupt-controller;
131*724ba675SRob Herring		#interrupt-cells = <3>;
132*724ba675SRob Herring		#address-cells = <0>;
133*724ba675SRob Herring
134*724ba675SRob Herring		reg = <0xfeff1000 0x1000>,
135*724ba675SRob Herring		      <0xfeff2000 0x2000>,
136*724ba675SRob Herring		      <0xfeff4000 0x2000>,
137*724ba675SRob Herring		      <0xfeff6000 0x2000>;
138*724ba675SRob Herring		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
139*724ba675SRob Herring	};
140*724ba675SRob Herring
141*724ba675SRob Herring	pmu: power-management@ff3e0000 {
142*724ba675SRob Herring		compatible = "rockchip,rv1126-pmu", "syscon", "simple-mfd";
143*724ba675SRob Herring		reg = <0xff3e0000 0x1000>;
144*724ba675SRob Herring
145*724ba675SRob Herring		power: power-controller {
146*724ba675SRob Herring			compatible = "rockchip,rv1126-power-controller";
147*724ba675SRob Herring			#power-domain-cells = <1>;
148*724ba675SRob Herring			#address-cells = <1>;
149*724ba675SRob Herring			#size-cells = <0>;
150*724ba675SRob Herring
151*724ba675SRob Herring			power-domain@RV1126_PD_NVM {
152*724ba675SRob Herring				reg = <RV1126_PD_NVM>;
153*724ba675SRob Herring				clocks = <&cru HCLK_EMMC>,
154*724ba675SRob Herring					 <&cru CLK_EMMC>,
155*724ba675SRob Herring					 <&cru HCLK_NANDC>,
156*724ba675SRob Herring					 <&cru CLK_NANDC>,
157*724ba675SRob Herring					 <&cru HCLK_SFC>,
158*724ba675SRob Herring					 <&cru HCLK_SFCXIP>,
159*724ba675SRob Herring					 <&cru SCLK_SFC>;
160*724ba675SRob Herring				pm_qos = <&qos_emmc>,
161*724ba675SRob Herring					 <&qos_nandc>,
162*724ba675SRob Herring					 <&qos_sfc>;
163*724ba675SRob Herring				#power-domain-cells = <0>;
164*724ba675SRob Herring			};
165*724ba675SRob Herring
166*724ba675SRob Herring			power-domain@RV1126_PD_SDIO {
167*724ba675SRob Herring				reg = <RV1126_PD_SDIO>;
168*724ba675SRob Herring				clocks = <&cru HCLK_SDIO>,
169*724ba675SRob Herring					 <&cru CLK_SDIO>;
170*724ba675SRob Herring				pm_qos = <&qos_sdio>;
171*724ba675SRob Herring				#power-domain-cells = <0>;
172*724ba675SRob Herring			};
173*724ba675SRob Herring		};
174*724ba675SRob Herring	};
175*724ba675SRob Herring
176*724ba675SRob Herring	i2c0: i2c@ff3f0000 {
177*724ba675SRob Herring		compatible = "rockchip,rv1126-i2c", "rockchip,rk3399-i2c";
178*724ba675SRob Herring		reg = <0xff3f0000 0x1000>;
179*724ba675SRob Herring		interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
180*724ba675SRob Herring		rockchip,grf = <&pmugrf>;
181*724ba675SRob Herring		clocks = <&pmucru CLK_I2C0>, <&pmucru PCLK_I2C0>;
182*724ba675SRob Herring		clock-names = "i2c", "pclk";
183*724ba675SRob Herring		pinctrl-names = "default";
184*724ba675SRob Herring		pinctrl-0 = <&i2c0_xfer>;
185*724ba675SRob Herring		#address-cells = <1>;
186*724ba675SRob Herring		#size-cells = <0>;
187*724ba675SRob Herring		status = "disabled";
188*724ba675SRob Herring	};
189*724ba675SRob Herring
190*724ba675SRob Herring	uart1: serial@ff410000 {
191*724ba675SRob Herring		compatible = "rockchip,rv1126-uart", "snps,dw-apb-uart";
192*724ba675SRob Herring		reg = <0xff410000 0x100>;
193*724ba675SRob Herring		interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
194*724ba675SRob Herring		clock-frequency = <24000000>;
195*724ba675SRob Herring		clocks = <&pmucru SCLK_UART1>, <&pmucru PCLK_UART1>;
196*724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
197*724ba675SRob Herring		dmas = <&dmac 7>, <&dmac 6>;
198*724ba675SRob Herring		dma-names = "tx", "rx";
199*724ba675SRob Herring		pinctrl-names = "default";
200*724ba675SRob Herring		pinctrl-0 = <&uart1m0_xfer>;
201*724ba675SRob Herring		reg-shift = <2>;
202*724ba675SRob Herring		reg-io-width = <4>;
203*724ba675SRob Herring		status = "disabled";
204*724ba675SRob Herring	};
205*724ba675SRob Herring
206*724ba675SRob Herring	pmucru: clock-controller@ff480000 {
207*724ba675SRob Herring		compatible = "rockchip,rv1126-pmucru";
208*724ba675SRob Herring		reg = <0xff480000 0x1000>;
209*724ba675SRob Herring		rockchip,grf = <&grf>;
210*724ba675SRob Herring		#clock-cells = <1>;
211*724ba675SRob Herring		#reset-cells = <1>;
212*724ba675SRob Herring	};
213*724ba675SRob Herring
214*724ba675SRob Herring	cru: clock-controller@ff490000 {
215*724ba675SRob Herring		compatible = "rockchip,rv1126-cru";
216*724ba675SRob Herring		reg = <0xff490000 0x1000>;
217*724ba675SRob Herring		clocks = <&xin24m>;
218*724ba675SRob Herring		clock-names = "xin24m";
219*724ba675SRob Herring		rockchip,grf = <&grf>;
220*724ba675SRob Herring		#clock-cells = <1>;
221*724ba675SRob Herring		#reset-cells = <1>;
222*724ba675SRob Herring	};
223*724ba675SRob Herring
224*724ba675SRob Herring	dmac: dma-controller@ff4e0000 {
225*724ba675SRob Herring		compatible = "arm,pl330", "arm,primecell";
226*724ba675SRob Herring		reg = <0xff4e0000 0x4000>;
227*724ba675SRob Herring		interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
228*724ba675SRob Herring			     <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
229*724ba675SRob Herring		#dma-cells = <1>;
230*724ba675SRob Herring		arm,pl330-periph-burst;
231*724ba675SRob Herring		clocks = <&cru ACLK_DMAC>;
232*724ba675SRob Herring		clock-names = "apb_pclk";
233*724ba675SRob Herring	};
234*724ba675SRob Herring
235*724ba675SRob Herring	uart0: serial@ff560000 {
236*724ba675SRob Herring		compatible = "rockchip,rv1126-uart", "snps,dw-apb-uart";
237*724ba675SRob Herring		reg = <0xff560000 0x100>;
238*724ba675SRob Herring		interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
239*724ba675SRob Herring		clock-frequency = <24000000>;
240*724ba675SRob Herring		clocks = <&cru SCLK_UART0>, <&cru PCLK_UART0>;
241*724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
242*724ba675SRob Herring		dmas = <&dmac 5>, <&dmac 4>;
243*724ba675SRob Herring		dma-names = "tx", "rx";
244*724ba675SRob Herring		pinctrl-names = "default";
245*724ba675SRob Herring		pinctrl-0 = <&uart0_xfer>;
246*724ba675SRob Herring		reg-shift = <2>;
247*724ba675SRob Herring		reg-io-width = <4>;
248*724ba675SRob Herring		status = "disabled";
249*724ba675SRob Herring	};
250*724ba675SRob Herring
251*724ba675SRob Herring	uart2: serial@ff570000 {
252*724ba675SRob Herring		compatible = "rockchip,rv1126-uart", "snps,dw-apb-uart";
253*724ba675SRob Herring		reg = <0xff570000 0x100>;
254*724ba675SRob Herring		interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
255*724ba675SRob Herring		clock-frequency = <24000000>;
256*724ba675SRob Herring		clocks = <&cru SCLK_UART2>, <&cru PCLK_UART2>;
257*724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
258*724ba675SRob Herring		dmas = <&dmac 9>, <&dmac 8>;
259*724ba675SRob Herring		dma-names = "tx", "rx";
260*724ba675SRob Herring		pinctrl-names = "default";
261*724ba675SRob Herring		pinctrl-0 = <&uart2m1_xfer>;
262*724ba675SRob Herring		reg-shift = <2>;
263*724ba675SRob Herring		reg-io-width = <4>;
264*724ba675SRob Herring		status = "disabled";
265*724ba675SRob Herring	};
266*724ba675SRob Herring
267*724ba675SRob Herring	uart3: serial@ff580000 {
268*724ba675SRob Herring		compatible = "rockchip,rv1126-uart", "snps,dw-apb-uart";
269*724ba675SRob Herring		reg = <0xff580000 0x100>;
270*724ba675SRob Herring		interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
271*724ba675SRob Herring		clock-frequency = <24000000>;
272*724ba675SRob Herring		clocks = <&cru SCLK_UART3>, <&cru PCLK_UART3>;
273*724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
274*724ba675SRob Herring		dmas = <&dmac 11>, <&dmac 10>;
275*724ba675SRob Herring		dma-names = "tx", "rx";
276*724ba675SRob Herring		pinctrl-names = "default";
277*724ba675SRob Herring		pinctrl-0 = <&uart3m0_xfer>;
278*724ba675SRob Herring		reg-shift = <2>;
279*724ba675SRob Herring		reg-io-width = <4>;
280*724ba675SRob Herring		status = "disabled";
281*724ba675SRob Herring	};
282*724ba675SRob Herring
283*724ba675SRob Herring	uart4: serial@ff590000 {
284*724ba675SRob Herring		compatible = "rockchip,rv1126-uart", "snps,dw-apb-uart";
285*724ba675SRob Herring		reg = <0xff590000 0x100>;
286*724ba675SRob Herring		interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
287*724ba675SRob Herring		clock-frequency = <24000000>;
288*724ba675SRob Herring		clocks = <&cru SCLK_UART4>, <&cru PCLK_UART4>;
289*724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
290*724ba675SRob Herring		dmas = <&dmac 13>, <&dmac 12>;
291*724ba675SRob Herring		dma-names = "tx", "rx";
292*724ba675SRob Herring		pinctrl-names = "default";
293*724ba675SRob Herring		pinctrl-0 = <&uart4m0_xfer>;
294*724ba675SRob Herring		reg-shift = <2>;
295*724ba675SRob Herring		reg-io-width = <4>;
296*724ba675SRob Herring		status = "disabled";
297*724ba675SRob Herring	};
298*724ba675SRob Herring
299*724ba675SRob Herring	uart5: serial@ff5a0000 {
300*724ba675SRob Herring		compatible = "rockchip,rv1126-uart", "snps,dw-apb-uart";
301*724ba675SRob Herring		reg = <0xff5a0000 0x100>;
302*724ba675SRob Herring		interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
303*724ba675SRob Herring		clock-frequency = <24000000>;
304*724ba675SRob Herring		clocks = <&cru SCLK_UART5>, <&cru PCLK_UART5>;
305*724ba675SRob Herring		clock-names = "baudclk", "apb_pclk";
306*724ba675SRob Herring		dmas = <&dmac 15>, <&dmac 14>;
307*724ba675SRob Herring		dma-names = "tx", "rx";
308*724ba675SRob Herring		pinctrl-names = "default";
309*724ba675SRob Herring		pinctrl-0 = <&uart5m0_xfer>;
310*724ba675SRob Herring		reg-shift = <2>;
311*724ba675SRob Herring		reg-io-width = <4>;
312*724ba675SRob Herring		status = "disabled";
313*724ba675SRob Herring	};
314*724ba675SRob Herring
315*724ba675SRob Herring	saradc: adc@ff5e0000 {
316*724ba675SRob Herring		compatible = "rockchip,rv1126-saradc", "rockchip,rk3399-saradc";
317*724ba675SRob Herring		reg = <0xff5e0000 0x100>;
318*724ba675SRob Herring		interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
319*724ba675SRob Herring		#io-channel-cells = <1>;
320*724ba675SRob Herring		clocks = <&cru CLK_SARADC>, <&cru PCLK_SARADC>;
321*724ba675SRob Herring		clock-names = "saradc", "apb_pclk";
322*724ba675SRob Herring		resets = <&cru SRST_SARADC_P>;
323*724ba675SRob Herring		reset-names = "saradc-apb";
324*724ba675SRob Herring		status = "disabled";
325*724ba675SRob Herring	};
326*724ba675SRob Herring
327*724ba675SRob Herring	timer0: timer@ff660000 {
328*724ba675SRob Herring		compatible = "rockchip,rv1126-timer", "rockchip,rk3288-timer";
329*724ba675SRob Herring		reg = <0xff660000 0x20>;
330*724ba675SRob Herring		interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
331*724ba675SRob Herring		clocks = <&cru PCLK_TIMER>, <&cru CLK_TIMER0>;
332*724ba675SRob Herring		clock-names = "pclk", "timer";
333*724ba675SRob Herring	};
334*724ba675SRob Herring
335*724ba675SRob Herring	gmac: ethernet@ffc40000 {
336*724ba675SRob Herring		compatible = "rockchip,rv1126-gmac", "snps,dwmac-4.20a";
337*724ba675SRob Herring		reg = <0xffc40000 0x4000>;
338*724ba675SRob Herring		interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>,
339*724ba675SRob Herring			     <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
340*724ba675SRob Herring		interrupt-names = "macirq", "eth_wake_irq";
341*724ba675SRob Herring		rockchip,grf = <&grf>;
342*724ba675SRob Herring		clocks = <&cru CLK_GMAC_SRC>, <&cru CLK_GMAC_TX_RX>,
343*724ba675SRob Herring			 <&cru CLK_GMAC_TX_RX>, <&cru CLK_GMAC_REF>,
344*724ba675SRob Herring			 <&cru ACLK_GMAC>, <&cru PCLK_GMAC>,
345*724ba675SRob Herring			 <&cru CLK_GMAC_TX_RX>, <&cru CLK_GMAC_PTPREF>;
346*724ba675SRob Herring		clock-names = "stmmaceth", "mac_clk_rx",
347*724ba675SRob Herring			      "mac_clk_tx", "clk_mac_ref",
348*724ba675SRob Herring			      "aclk_mac", "pclk_mac",
349*724ba675SRob Herring			      "clk_mac_speed", "ptp_ref";
350*724ba675SRob Herring		resets = <&cru SRST_GMAC_A>;
351*724ba675SRob Herring		reset-names = "stmmaceth";
352*724ba675SRob Herring
353*724ba675SRob Herring		snps,mixed-burst;
354*724ba675SRob Herring		snps,tso;
355*724ba675SRob Herring
356*724ba675SRob Herring		snps,axi-config = <&stmmac_axi_setup>;
357*724ba675SRob Herring		snps,mtl-rx-config = <&mtl_rx_setup>;
358*724ba675SRob Herring		snps,mtl-tx-config = <&mtl_tx_setup>;
359*724ba675SRob Herring		status = "disabled";
360*724ba675SRob Herring
361*724ba675SRob Herring		mdio: mdio {
362*724ba675SRob Herring			compatible = "snps,dwmac-mdio";
363*724ba675SRob Herring			#address-cells = <0x1>;
364*724ba675SRob Herring			#size-cells = <0x0>;
365*724ba675SRob Herring		};
366*724ba675SRob Herring
367*724ba675SRob Herring		stmmac_axi_setup: stmmac-axi-config {
368*724ba675SRob Herring			snps,wr_osr_lmt = <4>;
369*724ba675SRob Herring			snps,rd_osr_lmt = <8>;
370*724ba675SRob Herring			snps,blen = <0 0 0 0 16 8 4>;
371*724ba675SRob Herring		};
372*724ba675SRob Herring
373*724ba675SRob Herring		mtl_rx_setup: rx-queues-config {
374*724ba675SRob Herring			snps,rx-queues-to-use = <1>;
375*724ba675SRob Herring			queue0 {};
376*724ba675SRob Herring		};
377*724ba675SRob Herring
378*724ba675SRob Herring		mtl_tx_setup: tx-queues-config {
379*724ba675SRob Herring			snps,tx-queues-to-use = <1>;
380*724ba675SRob Herring			queue0 {};
381*724ba675SRob Herring		};
382*724ba675SRob Herring	};
383*724ba675SRob Herring
384*724ba675SRob Herring	emmc: mmc@ffc50000 {
385*724ba675SRob Herring		compatible = "rockchip,rv1126-dw-mshc", "rockchip,rk3288-dw-mshc";
386*724ba675SRob Herring		reg = <0xffc50000 0x4000>;
387*724ba675SRob Herring		interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
388*724ba675SRob Herring		clocks = <&cru HCLK_EMMC>, <&cru CLK_EMMC>,
389*724ba675SRob Herring			 <&cru SCLK_EMMC_DRV>, <&cru SCLK_EMMC_SAMPLE>;
390*724ba675SRob Herring		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
391*724ba675SRob Herring		fifo-depth = <0x100>;
392*724ba675SRob Herring		max-frequency = <200000000>;
393*724ba675SRob Herring		power-domains = <&power RV1126_PD_NVM>;
394*724ba675SRob Herring		status = "disabled";
395*724ba675SRob Herring	};
396*724ba675SRob Herring
397*724ba675SRob Herring	sdmmc: mmc@ffc60000 {
398*724ba675SRob Herring		compatible = "rockchip,rv1126-dw-mshc", "rockchip,rk3288-dw-mshc";
399*724ba675SRob Herring		reg = <0xffc60000 0x4000>;
400*724ba675SRob Herring		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
401*724ba675SRob Herring		clocks = <&cru HCLK_SDMMC>, <&cru CLK_SDMMC>,
402*724ba675SRob Herring			 <&cru SCLK_SDMMC_DRV>, <&cru SCLK_SDMMC_SAMPLE>;
403*724ba675SRob Herring		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
404*724ba675SRob Herring		fifo-depth = <0x100>;
405*724ba675SRob Herring		max-frequency = <200000000>;
406*724ba675SRob Herring		status = "disabled";
407*724ba675SRob Herring	};
408*724ba675SRob Herring
409*724ba675SRob Herring	sdio: mmc@ffc70000 {
410*724ba675SRob Herring		compatible = "rockchip,rv1126-dw-mshc", "rockchip,rk3288-dw-mshc";
411*724ba675SRob Herring		reg = <0xffc70000 0x4000>;
412*724ba675SRob Herring		interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
413*724ba675SRob Herring		clocks = <&cru HCLK_SDIO>, <&cru CLK_SDIO>,
414*724ba675SRob Herring			 <&cru SCLK_SDIO_DRV>, <&cru SCLK_SDIO_SAMPLE>;
415*724ba675SRob Herring		clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
416*724ba675SRob Herring		fifo-depth = <0x100>;
417*724ba675SRob Herring		max-frequency = <200000000>;
418*724ba675SRob Herring		power-domains = <&power RV1126_PD_SDIO>;
419*724ba675SRob Herring		status = "disabled";
420*724ba675SRob Herring	};
421*724ba675SRob Herring
422*724ba675SRob Herring	pinctrl: pinctrl {
423*724ba675SRob Herring		compatible = "rockchip,rv1126-pinctrl";
424*724ba675SRob Herring		rockchip,grf = <&grf>;
425*724ba675SRob Herring		rockchip,pmu = <&pmugrf>;
426*724ba675SRob Herring		#address-cells = <1>;
427*724ba675SRob Herring		#size-cells = <1>;
428*724ba675SRob Herring		ranges;
429*724ba675SRob Herring
430*724ba675SRob Herring		gpio0: gpio@ff460000 {
431*724ba675SRob Herring			compatible = "rockchip,gpio-bank";
432*724ba675SRob Herring			reg = <0xff460000 0x100>;
433*724ba675SRob Herring			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
434*724ba675SRob Herring			clocks = <&pmucru PCLK_GPIO0>, <&pmucru DBCLK_GPIO0>;
435*724ba675SRob Herring			gpio-controller;
436*724ba675SRob Herring			#gpio-cells = <2>;
437*724ba675SRob Herring			interrupt-controller;
438*724ba675SRob Herring			#interrupt-cells = <2>;
439*724ba675SRob Herring		};
440*724ba675SRob Herring
441*724ba675SRob Herring		gpio1: gpio@ff620000 {
442*724ba675SRob Herring			compatible = "rockchip,gpio-bank";
443*724ba675SRob Herring			reg = <0xff620000 0x100>;
444*724ba675SRob Herring			interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
445*724ba675SRob Herring			clocks = <&cru PCLK_GPIO1>, <&cru DBCLK_GPIO1>;
446*724ba675SRob Herring			gpio-controller;
447*724ba675SRob Herring			#gpio-cells = <2>;
448*724ba675SRob Herring			interrupt-controller;
449*724ba675SRob Herring			#interrupt-cells = <2>;
450*724ba675SRob Herring		};
451*724ba675SRob Herring
452*724ba675SRob Herring		gpio2: gpio@ff630000 {
453*724ba675SRob Herring			compatible = "rockchip,gpio-bank";
454*724ba675SRob Herring			reg = <0xff630000 0x100>;
455*724ba675SRob Herring			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
456*724ba675SRob Herring			clocks = <&cru PCLK_GPIO2>, <&cru DBCLK_GPIO2>;
457*724ba675SRob Herring			gpio-controller;
458*724ba675SRob Herring			#gpio-cells = <2>;
459*724ba675SRob Herring			interrupt-controller;
460*724ba675SRob Herring			#interrupt-cells = <2>;
461*724ba675SRob Herring		};
462*724ba675SRob Herring
463*724ba675SRob Herring		gpio3: gpio@ff640000 {
464*724ba675SRob Herring			compatible = "rockchip,gpio-bank";
465*724ba675SRob Herring			reg = <0xff640000 0x100>;
466*724ba675SRob Herring			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
467*724ba675SRob Herring			clocks = <&cru PCLK_GPIO3>, <&cru DBCLK_GPIO3>;
468*724ba675SRob Herring			gpio-controller;
469*724ba675SRob Herring			#gpio-cells = <2>;
470*724ba675SRob Herring			interrupt-controller;
471*724ba675SRob Herring			#interrupt-cells = <2>;
472*724ba675SRob Herring		};
473*724ba675SRob Herring
474*724ba675SRob Herring		gpio4: gpio@ff650000 {
475*724ba675SRob Herring			compatible = "rockchip,gpio-bank";
476*724ba675SRob Herring			reg = <0xff650000 0x100>;
477*724ba675SRob Herring			interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
478*724ba675SRob Herring			clocks = <&cru PCLK_GPIO4>, <&cru DBCLK_GPIO4>;
479*724ba675SRob Herring			gpio-controller;
480*724ba675SRob Herring			#gpio-cells = <2>;
481*724ba675SRob Herring			interrupt-controller;
482*724ba675SRob Herring			#interrupt-cells = <2>;
483*724ba675SRob Herring		};
484*724ba675SRob Herring	};
485*724ba675SRob Herring};
486*724ba675SRob Herring
487*724ba675SRob Herring#include "rv1126-pinctrl.dtsi"
488