1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/ingenic,tcu.h>
38cc087a1SEmmanuel Vadot#include <dt-bindings/clock/ingenic,x1830-cgu.h>
4c66ec88fSEmmanuel Vadot#include <dt-bindings/dma/x1830-dma.h>
5c66ec88fSEmmanuel Vadot
6c66ec88fSEmmanuel Vadot/ {
7c66ec88fSEmmanuel Vadot	#address-cells = <1>;
8c66ec88fSEmmanuel Vadot	#size-cells = <1>;
9c66ec88fSEmmanuel Vadot	compatible = "ingenic,x1830";
10c66ec88fSEmmanuel Vadot
116be33864SEmmanuel Vadot	cpus {
126be33864SEmmanuel Vadot		#address-cells = <1>;
136be33864SEmmanuel Vadot		#size-cells = <0>;
146be33864SEmmanuel Vadot
156be33864SEmmanuel Vadot		cpu0: cpu@0 {
166be33864SEmmanuel Vadot			device_type = "cpu";
176be33864SEmmanuel Vadot			compatible = "ingenic,xburst-fpu2.0-mxu2.0";
186be33864SEmmanuel Vadot			reg = <0>;
196be33864SEmmanuel Vadot
206be33864SEmmanuel Vadot			clocks = <&cgu X1830_CLK_CPU>;
216be33864SEmmanuel Vadot			clock-names = "cpu";
226be33864SEmmanuel Vadot		};
236be33864SEmmanuel Vadot	};
246be33864SEmmanuel Vadot
25c66ec88fSEmmanuel Vadot	cpuintc: interrupt-controller {
26c66ec88fSEmmanuel Vadot		#address-cells = <0>;
27c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
28c66ec88fSEmmanuel Vadot		interrupt-controller;
29c66ec88fSEmmanuel Vadot		compatible = "mti,cpu-interrupt-controller";
30c66ec88fSEmmanuel Vadot	};
31c66ec88fSEmmanuel Vadot
32c66ec88fSEmmanuel Vadot	intc: interrupt-controller@10001000 {
33c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-intc", "ingenic,jz4780-intc";
34c66ec88fSEmmanuel Vadot		reg = <0x10001000 0x50>;
35c66ec88fSEmmanuel Vadot
36c66ec88fSEmmanuel Vadot		interrupt-controller;
37c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
38c66ec88fSEmmanuel Vadot
39c66ec88fSEmmanuel Vadot		interrupt-parent = <&cpuintc>;
40c66ec88fSEmmanuel Vadot		interrupts = <2>;
41c66ec88fSEmmanuel Vadot	};
42c66ec88fSEmmanuel Vadot
43c66ec88fSEmmanuel Vadot	exclk: ext {
44c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
45c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
46c66ec88fSEmmanuel Vadot	};
47c66ec88fSEmmanuel Vadot
48c66ec88fSEmmanuel Vadot	rtclk: rtc {
49c66ec88fSEmmanuel Vadot		compatible = "fixed-clock";
50c66ec88fSEmmanuel Vadot		#clock-cells = <0>;
51c66ec88fSEmmanuel Vadot		clock-frequency = <32768>;
52c66ec88fSEmmanuel Vadot	};
53c66ec88fSEmmanuel Vadot
54c66ec88fSEmmanuel Vadot	cgu: x1830-cgu@10000000 {
555def4c47SEmmanuel Vadot		compatible = "ingenic,x1830-cgu", "simple-mfd";
56c66ec88fSEmmanuel Vadot		reg = <0x10000000 0x100>;
575def4c47SEmmanuel Vadot		#address-cells = <1>;
585def4c47SEmmanuel Vadot		#size-cells = <1>;
595def4c47SEmmanuel Vadot		ranges = <0x0 0x10000000 0x100>;
60c66ec88fSEmmanuel Vadot
61c66ec88fSEmmanuel Vadot		#clock-cells = <1>;
62c66ec88fSEmmanuel Vadot
63c66ec88fSEmmanuel Vadot		clocks = <&exclk>, <&rtclk>;
64c66ec88fSEmmanuel Vadot		clock-names = "ext", "rtc";
655def4c47SEmmanuel Vadot
665def4c47SEmmanuel Vadot		otg_phy: usb-phy@3c {
675def4c47SEmmanuel Vadot			compatible = "ingenic,x1830-phy";
685def4c47SEmmanuel Vadot			reg = <0x3c 0x10>;
695def4c47SEmmanuel Vadot
705def4c47SEmmanuel Vadot			clocks = <&cgu X1830_CLK_OTGPHY>;
715def4c47SEmmanuel Vadot
725def4c47SEmmanuel Vadot			#phy-cells = <0>;
735def4c47SEmmanuel Vadot
745def4c47SEmmanuel Vadot			status = "disabled";
755def4c47SEmmanuel Vadot		};
765956d97fSEmmanuel Vadot
775956d97fSEmmanuel Vadot		mac_phy_ctrl: mac-phy-ctrl@e8 {
785956d97fSEmmanuel Vadot			compatible = "syscon";
795956d97fSEmmanuel Vadot			reg = <0xe8 0x4>;
805956d97fSEmmanuel Vadot		};
815def4c47SEmmanuel Vadot	};
825def4c47SEmmanuel Vadot
835def4c47SEmmanuel Vadot	ost: timer@12000000 {
845def4c47SEmmanuel Vadot		compatible = "ingenic,x1830-ost", "ingenic,x1000-ost";
855def4c47SEmmanuel Vadot		reg = <0x12000000 0x3c>;
865def4c47SEmmanuel Vadot
875def4c47SEmmanuel Vadot		#clock-cells = <1>;
885def4c47SEmmanuel Vadot
895def4c47SEmmanuel Vadot		clocks = <&cgu X1830_CLK_OST>;
905def4c47SEmmanuel Vadot		clock-names = "ost";
915def4c47SEmmanuel Vadot
925def4c47SEmmanuel Vadot		interrupt-parent = <&cpuintc>;
935def4c47SEmmanuel Vadot		interrupts = <4>;
94c66ec88fSEmmanuel Vadot	};
95c66ec88fSEmmanuel Vadot
96c66ec88fSEmmanuel Vadot	tcu: timer@10002000 {
97c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-tcu", "ingenic,x1000-tcu", "simple-mfd";
98c66ec88fSEmmanuel Vadot		reg = <0x10002000 0x1000>;
99c66ec88fSEmmanuel Vadot		#address-cells = <1>;
100c66ec88fSEmmanuel Vadot		#size-cells = <1>;
101c66ec88fSEmmanuel Vadot		ranges = <0x0 0x10002000 0x1000>;
102c66ec88fSEmmanuel Vadot
103c66ec88fSEmmanuel Vadot		#clock-cells = <1>;
104c66ec88fSEmmanuel Vadot
1055956d97fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_RTCLK>,
1065956d97fSEmmanuel Vadot			 <&cgu X1830_CLK_EXCLK>,
107*d5b0e70fSEmmanuel Vadot			 <&cgu X1830_CLK_PCLK>,
108*d5b0e70fSEmmanuel Vadot			 <&cgu X1830_CLK_TCU>;
109*d5b0e70fSEmmanuel Vadot		clock-names = "rtc", "ext", "pclk", "tcu";
110c66ec88fSEmmanuel Vadot
111c66ec88fSEmmanuel Vadot		interrupt-controller;
112c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
113c66ec88fSEmmanuel Vadot
114c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
115c66ec88fSEmmanuel Vadot		interrupts = <27 26 25>;
116c66ec88fSEmmanuel Vadot
117c66ec88fSEmmanuel Vadot		wdt: watchdog@0 {
118c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1830-watchdog", "ingenic,jz4780-watchdog";
119c66ec88fSEmmanuel Vadot			reg = <0x0 0x10>;
120c66ec88fSEmmanuel Vadot
121c66ec88fSEmmanuel Vadot			clocks = <&tcu TCU_CLK_WDT>;
122c66ec88fSEmmanuel Vadot			clock-names = "wdt";
123c66ec88fSEmmanuel Vadot		};
124*d5b0e70fSEmmanuel Vadot
125*d5b0e70fSEmmanuel Vadot		pwm: pwm@40 {
126*d5b0e70fSEmmanuel Vadot			compatible = "ingenic,x1830-pwm", "ingenic,jz4740-pwm";
127*d5b0e70fSEmmanuel Vadot			reg = <0x40 0x80>;
128*d5b0e70fSEmmanuel Vadot
129*d5b0e70fSEmmanuel Vadot			#pwm-cells = <3>;
130*d5b0e70fSEmmanuel Vadot
131*d5b0e70fSEmmanuel Vadot			clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>,
132*d5b0e70fSEmmanuel Vadot				 <&tcu TCU_CLK_TIMER2>, <&tcu TCU_CLK_TIMER3>,
133*d5b0e70fSEmmanuel Vadot				 <&tcu TCU_CLK_TIMER4>, <&tcu TCU_CLK_TIMER5>,
134*d5b0e70fSEmmanuel Vadot				 <&tcu TCU_CLK_TIMER6>, <&tcu TCU_CLK_TIMER7>;
135*d5b0e70fSEmmanuel Vadot			clock-names = "timer0", "timer1", "timer2", "timer3",
136*d5b0e70fSEmmanuel Vadot				      "timer4", "timer5", "timer6", "timer7";
137*d5b0e70fSEmmanuel Vadot		};
138c66ec88fSEmmanuel Vadot	};
139c66ec88fSEmmanuel Vadot
140c66ec88fSEmmanuel Vadot	rtc: rtc@10003000 {
141c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-rtc", "ingenic,jz4780-rtc";
142c66ec88fSEmmanuel Vadot		reg = <0x10003000 0x4c>;
143c66ec88fSEmmanuel Vadot
144c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
145c66ec88fSEmmanuel Vadot		interrupts = <32>;
146c66ec88fSEmmanuel Vadot
147c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_RTCLK>;
148c66ec88fSEmmanuel Vadot		clock-names = "rtc";
149c66ec88fSEmmanuel Vadot	};
150c66ec88fSEmmanuel Vadot
151c66ec88fSEmmanuel Vadot	pinctrl: pin-controller@10010000 {
152c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-pinctrl";
153c66ec88fSEmmanuel Vadot		reg = <0x10010000 0x800>;
154c66ec88fSEmmanuel Vadot		#address-cells = <1>;
155c66ec88fSEmmanuel Vadot		#size-cells = <0>;
156c66ec88fSEmmanuel Vadot
157c66ec88fSEmmanuel Vadot		gpa: gpio@0 {
158c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1830-gpio";
159c66ec88fSEmmanuel Vadot			reg = <0>;
160c66ec88fSEmmanuel Vadot
161c66ec88fSEmmanuel Vadot			gpio-controller;
162c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 0 32>;
163c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
164c66ec88fSEmmanuel Vadot
165c66ec88fSEmmanuel Vadot			interrupt-controller;
166c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
167c66ec88fSEmmanuel Vadot
168c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
169c66ec88fSEmmanuel Vadot			interrupts = <17>;
170c66ec88fSEmmanuel Vadot		};
171c66ec88fSEmmanuel Vadot
172c66ec88fSEmmanuel Vadot		gpb: gpio@1 {
173c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1830-gpio";
174c66ec88fSEmmanuel Vadot			reg = <1>;
175c66ec88fSEmmanuel Vadot
176c66ec88fSEmmanuel Vadot			gpio-controller;
177c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 32 32>;
178c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
179c66ec88fSEmmanuel Vadot
180c66ec88fSEmmanuel Vadot			interrupt-controller;
181c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
182c66ec88fSEmmanuel Vadot
183c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
184c66ec88fSEmmanuel Vadot			interrupts = <16>;
185c66ec88fSEmmanuel Vadot		};
186c66ec88fSEmmanuel Vadot
187c66ec88fSEmmanuel Vadot		gpc: gpio@2 {
188c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1830-gpio";
189c66ec88fSEmmanuel Vadot			reg = <2>;
190c66ec88fSEmmanuel Vadot
191c66ec88fSEmmanuel Vadot			gpio-controller;
192c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 64 32>;
193c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
194c66ec88fSEmmanuel Vadot
195c66ec88fSEmmanuel Vadot			interrupt-controller;
196c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
197c66ec88fSEmmanuel Vadot
198c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
199c66ec88fSEmmanuel Vadot			interrupts = <15>;
200c66ec88fSEmmanuel Vadot		};
201c66ec88fSEmmanuel Vadot
202c66ec88fSEmmanuel Vadot		gpd: gpio@3 {
203c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1830-gpio";
204c66ec88fSEmmanuel Vadot			reg = <3>;
205c66ec88fSEmmanuel Vadot
206c66ec88fSEmmanuel Vadot			gpio-controller;
207c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 96 32>;
208c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
209c66ec88fSEmmanuel Vadot
210c66ec88fSEmmanuel Vadot			interrupt-controller;
211c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
212c66ec88fSEmmanuel Vadot
213c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
214c66ec88fSEmmanuel Vadot			interrupts = <14>;
215c66ec88fSEmmanuel Vadot		};
216c66ec88fSEmmanuel Vadot	};
217c66ec88fSEmmanuel Vadot
218c66ec88fSEmmanuel Vadot	uart0: serial@10030000 {
219c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-uart", "ingenic,x1000-uart";
220c66ec88fSEmmanuel Vadot		reg = <0x10030000 0x100>;
221c66ec88fSEmmanuel Vadot
222c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
223c66ec88fSEmmanuel Vadot		interrupts = <51>;
224c66ec88fSEmmanuel Vadot
225c66ec88fSEmmanuel Vadot		clocks = <&exclk>, <&cgu X1830_CLK_UART0>;
226c66ec88fSEmmanuel Vadot		clock-names = "baud", "module";
227c66ec88fSEmmanuel Vadot
228c66ec88fSEmmanuel Vadot		status = "disabled";
229c66ec88fSEmmanuel Vadot	};
230c66ec88fSEmmanuel Vadot
231c66ec88fSEmmanuel Vadot	uart1: serial@10031000 {
232c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-uart", "ingenic,x1000-uart";
233c66ec88fSEmmanuel Vadot		reg = <0x10031000 0x100>;
234c66ec88fSEmmanuel Vadot
235c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
236c66ec88fSEmmanuel Vadot		interrupts = <50>;
237c66ec88fSEmmanuel Vadot
238c66ec88fSEmmanuel Vadot		clocks = <&exclk>, <&cgu X1830_CLK_UART1>;
239c66ec88fSEmmanuel Vadot		clock-names = "baud", "module";
240c66ec88fSEmmanuel Vadot
241c66ec88fSEmmanuel Vadot		status = "disabled";
242c66ec88fSEmmanuel Vadot	};
243c66ec88fSEmmanuel Vadot
244*d5b0e70fSEmmanuel Vadot	ssi0: spi@10043000 {
245*d5b0e70fSEmmanuel Vadot		compatible = "ingenic,x1830-spi", "ingenic,x1000-spi";
246*d5b0e70fSEmmanuel Vadot		reg = <0x10043000 0x20>;
247*d5b0e70fSEmmanuel Vadot		#address-cells = <1>;
248*d5b0e70fSEmmanuel Vadot		#size-cells = <0>;
249*d5b0e70fSEmmanuel Vadot
250*d5b0e70fSEmmanuel Vadot		interrupt-parent = <&intc>;
251*d5b0e70fSEmmanuel Vadot		interrupts = <9>;
252*d5b0e70fSEmmanuel Vadot
253*d5b0e70fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_SSI0>;
254*d5b0e70fSEmmanuel Vadot		clock-names = "spi";
255*d5b0e70fSEmmanuel Vadot
256*d5b0e70fSEmmanuel Vadot		dmas = <&pdma X1830_DMA_SSI0_RX 0xffffffff>,
257*d5b0e70fSEmmanuel Vadot			   <&pdma X1830_DMA_SSI0_TX 0xffffffff>;
258*d5b0e70fSEmmanuel Vadot		dma-names = "rx", "tx";
259*d5b0e70fSEmmanuel Vadot
260*d5b0e70fSEmmanuel Vadot		status = "disabled";
261*d5b0e70fSEmmanuel Vadot	};
262*d5b0e70fSEmmanuel Vadot
263*d5b0e70fSEmmanuel Vadot	ssi1: spi@10044000 {
264*d5b0e70fSEmmanuel Vadot		compatible = "ingenic,x1830-spi", "ingenic,x1000-spi";
265*d5b0e70fSEmmanuel Vadot		reg = <0x10044000 0x20>;
266*d5b0e70fSEmmanuel Vadot		#address-cells = <1>;
267*d5b0e70fSEmmanuel Vadot		#size-cells = <0>;
268*d5b0e70fSEmmanuel Vadot
269*d5b0e70fSEmmanuel Vadot		interrupt-parent = <&intc>;
270*d5b0e70fSEmmanuel Vadot		interrupts = <8>;
271*d5b0e70fSEmmanuel Vadot
272*d5b0e70fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_SSI1>;
273*d5b0e70fSEmmanuel Vadot		clock-names = "spi";
274*d5b0e70fSEmmanuel Vadot
275*d5b0e70fSEmmanuel Vadot		dmas = <&pdma X1830_DMA_SSI1_RX 0xffffffff>,
276*d5b0e70fSEmmanuel Vadot			   <&pdma X1830_DMA_SSI1_TX 0xffffffff>;
277*d5b0e70fSEmmanuel Vadot		dma-names = "rx", "tx";
278*d5b0e70fSEmmanuel Vadot
279*d5b0e70fSEmmanuel Vadot		status = "disabled";
280*d5b0e70fSEmmanuel Vadot	};
281*d5b0e70fSEmmanuel Vadot
282c66ec88fSEmmanuel Vadot	i2c0: i2c-controller@10050000 {
283c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-i2c", "ingenic,x1000-i2c";
284c66ec88fSEmmanuel Vadot		reg = <0x10050000 0x1000>;
285c66ec88fSEmmanuel Vadot		#address-cells = <1>;
286c66ec88fSEmmanuel Vadot		#size-cells = <0>;
287c66ec88fSEmmanuel Vadot
288c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
289c66ec88fSEmmanuel Vadot		interrupts = <60>;
290c66ec88fSEmmanuel Vadot
291c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_SMB0>;
292c66ec88fSEmmanuel Vadot
293c66ec88fSEmmanuel Vadot		status = "disabled";
294c66ec88fSEmmanuel Vadot	};
295c66ec88fSEmmanuel Vadot
296c66ec88fSEmmanuel Vadot	i2c1: i2c-controller@10051000 {
297c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-i2c", "ingenic,x1000-i2c";
298c66ec88fSEmmanuel Vadot		reg = <0x10051000 0x1000>;
299c66ec88fSEmmanuel Vadot		#address-cells = <1>;
300c66ec88fSEmmanuel Vadot		#size-cells = <0>;
301c66ec88fSEmmanuel Vadot
302c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
303c66ec88fSEmmanuel Vadot		interrupts = <59>;
304c66ec88fSEmmanuel Vadot
305c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_SMB1>;
306c66ec88fSEmmanuel Vadot
307c66ec88fSEmmanuel Vadot		status = "disabled";
308c66ec88fSEmmanuel Vadot	};
309c66ec88fSEmmanuel Vadot
310c66ec88fSEmmanuel Vadot	i2c2: i2c-controller@10052000 {
311c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-i2c", "ingenic,x1000-i2c";
312c66ec88fSEmmanuel Vadot		reg = <0x10052000 0x1000>;
313c66ec88fSEmmanuel Vadot		#address-cells = <1>;
314c66ec88fSEmmanuel Vadot		#size-cells = <0>;
315c66ec88fSEmmanuel Vadot
316c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
317c66ec88fSEmmanuel Vadot		interrupts = <58>;
318c66ec88fSEmmanuel Vadot
319c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_SMB2>;
320c66ec88fSEmmanuel Vadot
321c66ec88fSEmmanuel Vadot		status = "disabled";
322c66ec88fSEmmanuel Vadot	};
323c66ec88fSEmmanuel Vadot
3245def4c47SEmmanuel Vadot	dtrng: trng@10072000 {
3255def4c47SEmmanuel Vadot		compatible = "ingenic,x1830-dtrng";
3265def4c47SEmmanuel Vadot		reg = <0x10072000 0xc>;
3275def4c47SEmmanuel Vadot
3285def4c47SEmmanuel Vadot		clocks = <&cgu X1830_CLK_DTRNG>;
3295def4c47SEmmanuel Vadot
3305def4c47SEmmanuel Vadot		status = "disabled";
3315def4c47SEmmanuel Vadot	};
3325def4c47SEmmanuel Vadot
333c66ec88fSEmmanuel Vadot	pdma: dma-controller@13420000 {
334c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-dma";
3355956d97fSEmmanuel Vadot		reg = <0x13420000 0x400>, <0x13421000 0x40>;
336*d5b0e70fSEmmanuel Vadot
337c66ec88fSEmmanuel Vadot		#dma-cells = <2>;
338c66ec88fSEmmanuel Vadot
339c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
340c66ec88fSEmmanuel Vadot		interrupts = <10>;
341c66ec88fSEmmanuel Vadot
342c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_PDMA>;
343c66ec88fSEmmanuel Vadot	};
344c66ec88fSEmmanuel Vadot
345c66ec88fSEmmanuel Vadot	msc0: mmc@13450000 {
346c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-mmc", "ingenic,x1000-mmc";
347c66ec88fSEmmanuel Vadot		reg = <0x13450000 0x1000>;
348c66ec88fSEmmanuel Vadot
349c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
350c66ec88fSEmmanuel Vadot		interrupts = <37>;
351c66ec88fSEmmanuel Vadot
352c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_MSC0>;
353c66ec88fSEmmanuel Vadot		clock-names = "mmc";
354c66ec88fSEmmanuel Vadot
355c66ec88fSEmmanuel Vadot		cap-sd-highspeed;
356c66ec88fSEmmanuel Vadot		cap-mmc-highspeed;
357c66ec88fSEmmanuel Vadot		cap-sdio-irq;
358c66ec88fSEmmanuel Vadot
359c66ec88fSEmmanuel Vadot		dmas = <&pdma X1830_DMA_MSC0_RX 0xffffffff>,
360c66ec88fSEmmanuel Vadot			   <&pdma X1830_DMA_MSC0_TX 0xffffffff>;
361c66ec88fSEmmanuel Vadot		dma-names = "rx", "tx";
362c66ec88fSEmmanuel Vadot
363c66ec88fSEmmanuel Vadot		status = "disabled";
364c66ec88fSEmmanuel Vadot	};
365c66ec88fSEmmanuel Vadot
366c66ec88fSEmmanuel Vadot	msc1: mmc@13460000 {
367c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-mmc", "ingenic,x1000-mmc";
368c66ec88fSEmmanuel Vadot		reg = <0x13460000 0x1000>;
369c66ec88fSEmmanuel Vadot
370c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
371c66ec88fSEmmanuel Vadot		interrupts = <36>;
372c66ec88fSEmmanuel Vadot
373c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_MSC1>;
374c66ec88fSEmmanuel Vadot		clock-names = "mmc";
375c66ec88fSEmmanuel Vadot
376c66ec88fSEmmanuel Vadot		cap-sd-highspeed;
377c66ec88fSEmmanuel Vadot		cap-mmc-highspeed;
378c66ec88fSEmmanuel Vadot		cap-sdio-irq;
379c66ec88fSEmmanuel Vadot
380c66ec88fSEmmanuel Vadot		dmas = <&pdma X1830_DMA_MSC1_RX 0xffffffff>,
381c66ec88fSEmmanuel Vadot			   <&pdma X1830_DMA_MSC1_TX 0xffffffff>;
382c66ec88fSEmmanuel Vadot		dma-names = "rx", "tx";
383c66ec88fSEmmanuel Vadot
384c66ec88fSEmmanuel Vadot		status = "disabled";
385c66ec88fSEmmanuel Vadot	};
386c66ec88fSEmmanuel Vadot
387c66ec88fSEmmanuel Vadot	mac: ethernet@134b0000 {
388c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1830-mac", "snps,dwmac";
389c66ec88fSEmmanuel Vadot		reg = <0x134b0000 0x2000>;
390c66ec88fSEmmanuel Vadot
391c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
392c66ec88fSEmmanuel Vadot		interrupts = <55>;
393c66ec88fSEmmanuel Vadot		interrupt-names = "macirq";
394c66ec88fSEmmanuel Vadot
395c66ec88fSEmmanuel Vadot		clocks = <&cgu X1830_CLK_MAC>;
396c66ec88fSEmmanuel Vadot		clock-names = "stmmaceth";
397c66ec88fSEmmanuel Vadot
3985956d97fSEmmanuel Vadot		mode-reg = <&mac_phy_ctrl>;
3995956d97fSEmmanuel Vadot
400c66ec88fSEmmanuel Vadot		status = "disabled";
401c66ec88fSEmmanuel Vadot
402c66ec88fSEmmanuel Vadot		mdio: mdio {
403c66ec88fSEmmanuel Vadot			compatible = "snps,dwmac-mdio";
404c66ec88fSEmmanuel Vadot			#address-cells = <1>;
405c66ec88fSEmmanuel Vadot			#size-cells = <0>;
406c66ec88fSEmmanuel Vadot
407c66ec88fSEmmanuel Vadot			status = "disabled";
408c66ec88fSEmmanuel Vadot		};
409c66ec88fSEmmanuel Vadot	};
4105def4c47SEmmanuel Vadot
4115def4c47SEmmanuel Vadot	otg: usb@13500000 {
412*d5b0e70fSEmmanuel Vadot		compatible = "ingenic,x1830-otg";
4135def4c47SEmmanuel Vadot		reg = <0x13500000 0x40000>;
4145def4c47SEmmanuel Vadot
4155def4c47SEmmanuel Vadot		interrupt-parent = <&intc>;
4165def4c47SEmmanuel Vadot		interrupts = <21>;
4175def4c47SEmmanuel Vadot
4185def4c47SEmmanuel Vadot		clocks = <&cgu X1830_CLK_OTG>;
4195def4c47SEmmanuel Vadot		clock-names = "otg";
4205def4c47SEmmanuel Vadot
4215def4c47SEmmanuel Vadot		phys = <&otg_phy>;
4225def4c47SEmmanuel Vadot		phy-names = "usb2-phy";
4235def4c47SEmmanuel Vadot
4245def4c47SEmmanuel Vadot		g-rx-fifo-size = <768>;
4255def4c47SEmmanuel Vadot		g-np-tx-fifo-size = <256>;
4265def4c47SEmmanuel Vadot		g-tx-fifo-size = <256 256 256 256 256 256 256 512>;
4275def4c47SEmmanuel Vadot
4285def4c47SEmmanuel Vadot		status = "disabled";
4295def4c47SEmmanuel Vadot	};
430c66ec88fSEmmanuel Vadot};
431