xref: /freebsd-src/sys/contrib/device-tree/src/mips/ingenic/x1000.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/ingenic,tcu.h>
38cc087a1SEmmanuel Vadot#include <dt-bindings/clock/ingenic,x1000-cgu.h>
4c66ec88fSEmmanuel Vadot#include <dt-bindings/dma/x1000-dma.h>
5c66ec88fSEmmanuel Vadot
6c66ec88fSEmmanuel Vadot/ {
7c66ec88fSEmmanuel Vadot	#address-cells = <1>;
8c66ec88fSEmmanuel Vadot	#size-cells = <1>;
9c66ec88fSEmmanuel Vadot	compatible = "ingenic,x1000", "ingenic,x1000e";
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-fpu1.0-mxu1.1";
186be33864SEmmanuel Vadot			reg = <0>;
196be33864SEmmanuel Vadot
206be33864SEmmanuel Vadot			clocks = <&cgu X1000_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,x1000-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: x1000-cgu@10000000 {
555def4c47SEmmanuel Vadot		compatible = "ingenic,x1000-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,x1000-phy";
685def4c47SEmmanuel Vadot			reg = <0x3c 0x10>;
695def4c47SEmmanuel Vadot
705def4c47SEmmanuel Vadot			clocks = <&cgu X1000_CLK_OTGPHY>;
715def4c47SEmmanuel Vadot
725def4c47SEmmanuel Vadot			#phy-cells = <0>;
735def4c47SEmmanuel Vadot
745def4c47SEmmanuel Vadot			status = "disabled";
755def4c47SEmmanuel Vadot		};
765def4c47SEmmanuel Vadot
775def4c47SEmmanuel Vadot		rng: rng@d8 {
785def4c47SEmmanuel Vadot			compatible = "ingenic,x1000-rng";
795def4c47SEmmanuel Vadot			reg = <0xd8 0x8>;
805def4c47SEmmanuel Vadot
815def4c47SEmmanuel Vadot			status = "disabled";
825def4c47SEmmanuel Vadot		};
835956d97fSEmmanuel Vadot
845956d97fSEmmanuel Vadot		mac_phy_ctrl: mac-phy-ctrl@e8 {
855956d97fSEmmanuel Vadot			compatible = "syscon";
865956d97fSEmmanuel Vadot			reg = <0xe8 0x4>;
875956d97fSEmmanuel Vadot		};
885def4c47SEmmanuel Vadot	};
895def4c47SEmmanuel Vadot
905def4c47SEmmanuel Vadot	ost: timer@12000000 {
915def4c47SEmmanuel Vadot		compatible = "ingenic,x1000-ost";
925def4c47SEmmanuel Vadot		reg = <0x12000000 0x3c>;
935def4c47SEmmanuel Vadot
945def4c47SEmmanuel Vadot		#clock-cells = <1>;
955def4c47SEmmanuel Vadot
965def4c47SEmmanuel Vadot		clocks = <&cgu X1000_CLK_OST>;
975def4c47SEmmanuel Vadot		clock-names = "ost";
985def4c47SEmmanuel Vadot
995def4c47SEmmanuel Vadot		interrupt-parent = <&cpuintc>;
1005def4c47SEmmanuel Vadot		interrupts = <3>;
101c66ec88fSEmmanuel Vadot	};
102c66ec88fSEmmanuel Vadot
103c66ec88fSEmmanuel Vadot	tcu: timer@10002000 {
104c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-tcu", "simple-mfd";
105c66ec88fSEmmanuel Vadot		reg = <0x10002000 0x1000>;
106c66ec88fSEmmanuel Vadot		#address-cells = <1>;
107c66ec88fSEmmanuel Vadot		#size-cells = <1>;
108c66ec88fSEmmanuel Vadot		ranges = <0x0 0x10002000 0x1000>;
109c66ec88fSEmmanuel Vadot
110c66ec88fSEmmanuel Vadot		#clock-cells = <1>;
111c66ec88fSEmmanuel Vadot
112c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_RTCLK>,
113c66ec88fSEmmanuel Vadot			 <&cgu X1000_CLK_EXCLK>,
114d5b0e70fSEmmanuel Vadot			 <&cgu X1000_CLK_PCLK>,
115d5b0e70fSEmmanuel Vadot			 <&cgu X1000_CLK_TCU>;
116d5b0e70fSEmmanuel Vadot		clock-names = "rtc", "ext", "pclk", "tcu";
117c66ec88fSEmmanuel Vadot
118c66ec88fSEmmanuel Vadot		interrupt-controller;
119c66ec88fSEmmanuel Vadot		#interrupt-cells = <1>;
120c66ec88fSEmmanuel Vadot
121c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
122c66ec88fSEmmanuel Vadot		interrupts = <27 26 25>;
123c66ec88fSEmmanuel Vadot
124c66ec88fSEmmanuel Vadot		wdt: watchdog@0 {
125c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1000-watchdog", "ingenic,jz4780-watchdog";
126c66ec88fSEmmanuel Vadot			reg = <0x0 0x10>;
127c66ec88fSEmmanuel Vadot
128c66ec88fSEmmanuel Vadot			clocks = <&tcu TCU_CLK_WDT>;
129c66ec88fSEmmanuel Vadot			clock-names = "wdt";
130c66ec88fSEmmanuel Vadot		};
131d5b0e70fSEmmanuel Vadot
132d5b0e70fSEmmanuel Vadot		pwm: pwm@40 {
133d5b0e70fSEmmanuel Vadot			compatible = "ingenic,x1000-pwm";
134d5b0e70fSEmmanuel Vadot			reg = <0x40 0x50>;
135d5b0e70fSEmmanuel Vadot
136d5b0e70fSEmmanuel Vadot			#pwm-cells = <3>;
137d5b0e70fSEmmanuel Vadot
138d5b0e70fSEmmanuel Vadot			clocks = <&tcu TCU_CLK_TIMER0>, <&tcu TCU_CLK_TIMER1>,
139d5b0e70fSEmmanuel Vadot				 <&tcu TCU_CLK_TIMER2>, <&tcu TCU_CLK_TIMER3>,
140d5b0e70fSEmmanuel Vadot				 <&tcu TCU_CLK_TIMER4>;
141d5b0e70fSEmmanuel Vadot			clock-names = "timer0", "timer1", "timer2", "timer3", "timer4";
142d5b0e70fSEmmanuel Vadot		};
143c66ec88fSEmmanuel Vadot	};
144c66ec88fSEmmanuel Vadot
145c66ec88fSEmmanuel Vadot	rtc: rtc@10003000 {
146c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-rtc", "ingenic,jz4780-rtc";
147c66ec88fSEmmanuel Vadot		reg = <0x10003000 0x4c>;
148c66ec88fSEmmanuel Vadot
149c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
150c66ec88fSEmmanuel Vadot		interrupts = <32>;
151c66ec88fSEmmanuel Vadot
152c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_RTCLK>;
153c66ec88fSEmmanuel Vadot		clock-names = "rtc";
154c66ec88fSEmmanuel Vadot	};
155c66ec88fSEmmanuel Vadot
156c66ec88fSEmmanuel Vadot	pinctrl: pin-controller@10010000 {
157c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-pinctrl";
158c66ec88fSEmmanuel Vadot		reg = <0x10010000 0x800>;
159c66ec88fSEmmanuel Vadot		#address-cells = <1>;
160c66ec88fSEmmanuel Vadot		#size-cells = <0>;
161c66ec88fSEmmanuel Vadot
162c66ec88fSEmmanuel Vadot		gpa: gpio@0 {
163c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1000-gpio";
164c66ec88fSEmmanuel Vadot			reg = <0>;
165c66ec88fSEmmanuel Vadot
166c66ec88fSEmmanuel Vadot			gpio-controller;
167c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 0 32>;
168c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
169c66ec88fSEmmanuel Vadot
170c66ec88fSEmmanuel Vadot			interrupt-controller;
171c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
172c66ec88fSEmmanuel Vadot
173c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
174c66ec88fSEmmanuel Vadot			interrupts = <17>;
175c66ec88fSEmmanuel Vadot		};
176c66ec88fSEmmanuel Vadot
177c66ec88fSEmmanuel Vadot		gpb: gpio@1 {
178c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1000-gpio";
179c66ec88fSEmmanuel Vadot			reg = <1>;
180c66ec88fSEmmanuel Vadot
181c66ec88fSEmmanuel Vadot			gpio-controller;
182c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 32 32>;
183c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
184c66ec88fSEmmanuel Vadot
185c66ec88fSEmmanuel Vadot			interrupt-controller;
186c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
187c66ec88fSEmmanuel Vadot
188c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
189c66ec88fSEmmanuel Vadot			interrupts = <16>;
190c66ec88fSEmmanuel Vadot		};
191c66ec88fSEmmanuel Vadot
192c66ec88fSEmmanuel Vadot		gpc: gpio@2 {
193c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1000-gpio";
194c66ec88fSEmmanuel Vadot			reg = <2>;
195c66ec88fSEmmanuel Vadot
196c66ec88fSEmmanuel Vadot			gpio-controller;
197c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 64 32>;
198c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
199c66ec88fSEmmanuel Vadot
200c66ec88fSEmmanuel Vadot			interrupt-controller;
201c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
202c66ec88fSEmmanuel Vadot
203c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
204c66ec88fSEmmanuel Vadot			interrupts = <15>;
205c66ec88fSEmmanuel Vadot		};
206c66ec88fSEmmanuel Vadot
207c66ec88fSEmmanuel Vadot		gpd: gpio@3 {
208c66ec88fSEmmanuel Vadot			compatible = "ingenic,x1000-gpio";
209c66ec88fSEmmanuel Vadot			reg = <3>;
210c66ec88fSEmmanuel Vadot
211c66ec88fSEmmanuel Vadot			gpio-controller;
212c66ec88fSEmmanuel Vadot			gpio-ranges = <&pinctrl 0 96 32>;
213c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
214c66ec88fSEmmanuel Vadot
215c66ec88fSEmmanuel Vadot			interrupt-controller;
216c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
217c66ec88fSEmmanuel Vadot
218c66ec88fSEmmanuel Vadot			interrupt-parent = <&intc>;
219c66ec88fSEmmanuel Vadot			interrupts = <14>;
220c66ec88fSEmmanuel Vadot		};
221c66ec88fSEmmanuel Vadot	};
222c66ec88fSEmmanuel Vadot
223c66ec88fSEmmanuel Vadot	uart0: serial@10030000 {
224c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-uart";
225c66ec88fSEmmanuel Vadot		reg = <0x10030000 0x100>;
226c66ec88fSEmmanuel Vadot
227c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
228c66ec88fSEmmanuel Vadot		interrupts = <51>;
229c66ec88fSEmmanuel Vadot
230c66ec88fSEmmanuel Vadot		clocks = <&exclk>, <&cgu X1000_CLK_UART0>;
231c66ec88fSEmmanuel Vadot		clock-names = "baud", "module";
232c66ec88fSEmmanuel Vadot
233c66ec88fSEmmanuel Vadot		status = "disabled";
234c66ec88fSEmmanuel Vadot	};
235c66ec88fSEmmanuel Vadot
236c66ec88fSEmmanuel Vadot	uart1: serial@10031000 {
237c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-uart";
238c66ec88fSEmmanuel Vadot		reg = <0x10031000 0x100>;
239c66ec88fSEmmanuel Vadot
240c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
241c66ec88fSEmmanuel Vadot		interrupts = <50>;
242c66ec88fSEmmanuel Vadot
243c66ec88fSEmmanuel Vadot		clocks = <&exclk>, <&cgu X1000_CLK_UART1>;
244c66ec88fSEmmanuel Vadot		clock-names = "baud", "module";
245c66ec88fSEmmanuel Vadot
246c66ec88fSEmmanuel Vadot		status = "disabled";
247c66ec88fSEmmanuel Vadot	};
248c66ec88fSEmmanuel Vadot
249c66ec88fSEmmanuel Vadot	uart2: serial@10032000 {
250c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-uart";
251c66ec88fSEmmanuel Vadot		reg = <0x10032000 0x100>;
252c66ec88fSEmmanuel Vadot
253c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
254c66ec88fSEmmanuel Vadot		interrupts = <49>;
255c66ec88fSEmmanuel Vadot
256c66ec88fSEmmanuel Vadot		clocks = <&exclk>, <&cgu X1000_CLK_UART2>;
257c66ec88fSEmmanuel Vadot		clock-names = "baud", "module";
258c66ec88fSEmmanuel Vadot
259c66ec88fSEmmanuel Vadot		status = "disabled";
260c66ec88fSEmmanuel Vadot	};
261c66ec88fSEmmanuel Vadot
262d5b0e70fSEmmanuel Vadot	ssi: spi@10043000 {
263d5b0e70fSEmmanuel Vadot		compatible = "ingenic,x1000-spi";
264d5b0e70fSEmmanuel Vadot		reg = <0x10043000 0x20>;
265d5b0e70fSEmmanuel Vadot		#address-cells = <1>;
266d5b0e70fSEmmanuel Vadot		#size-cells = <0>;
267d5b0e70fSEmmanuel Vadot
268d5b0e70fSEmmanuel Vadot		interrupt-parent = <&intc>;
269d5b0e70fSEmmanuel Vadot		interrupts = <8>;
270d5b0e70fSEmmanuel Vadot
271d5b0e70fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_SSI>;
272d5b0e70fSEmmanuel Vadot		clock-names = "spi";
273d5b0e70fSEmmanuel Vadot
274d5b0e70fSEmmanuel Vadot		dmas = <&pdma X1000_DMA_SSI0_RX 0xffffffff>,
275d5b0e70fSEmmanuel Vadot			   <&pdma X1000_DMA_SSI0_TX 0xffffffff>;
276d5b0e70fSEmmanuel Vadot		dma-names = "rx", "tx";
277d5b0e70fSEmmanuel Vadot
278d5b0e70fSEmmanuel Vadot		status = "disabled";
279d5b0e70fSEmmanuel Vadot	};
280d5b0e70fSEmmanuel Vadot
281c66ec88fSEmmanuel Vadot	i2c0: i2c-controller@10050000 {
282c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-i2c";
283c66ec88fSEmmanuel Vadot		reg = <0x10050000 0x1000>;
284c66ec88fSEmmanuel Vadot		#address-cells = <1>;
285c66ec88fSEmmanuel Vadot		#size-cells = <0>;
286c66ec88fSEmmanuel Vadot
287c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
288c66ec88fSEmmanuel Vadot		interrupts = <60>;
289c66ec88fSEmmanuel Vadot
290c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_I2C0>;
291c66ec88fSEmmanuel Vadot
292c66ec88fSEmmanuel Vadot		status = "disabled";
293c66ec88fSEmmanuel Vadot	};
294c66ec88fSEmmanuel Vadot
295c66ec88fSEmmanuel Vadot	i2c1: i2c-controller@10051000 {
296c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-i2c";
297c66ec88fSEmmanuel Vadot		reg = <0x10051000 0x1000>;
298c66ec88fSEmmanuel Vadot		#address-cells = <1>;
299c66ec88fSEmmanuel Vadot		#size-cells = <0>;
300c66ec88fSEmmanuel Vadot
301c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
302c66ec88fSEmmanuel Vadot		interrupts = <59>;
303c66ec88fSEmmanuel Vadot
304c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_I2C1>;
305c66ec88fSEmmanuel Vadot
306c66ec88fSEmmanuel Vadot		status = "disabled";
307c66ec88fSEmmanuel Vadot	};
308c66ec88fSEmmanuel Vadot
309c66ec88fSEmmanuel Vadot	i2c2: i2c-controller@10052000 {
310c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-i2c";
311c66ec88fSEmmanuel Vadot		reg = <0x10052000 0x1000>;
312c66ec88fSEmmanuel Vadot		#address-cells = <1>;
313c66ec88fSEmmanuel Vadot		#size-cells = <0>;
314c66ec88fSEmmanuel Vadot
315c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
316c66ec88fSEmmanuel Vadot		interrupts = <58>;
317c66ec88fSEmmanuel Vadot
318c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_I2C2>;
319c66ec88fSEmmanuel Vadot
320c66ec88fSEmmanuel Vadot		status = "disabled";
321c66ec88fSEmmanuel Vadot	};
322c66ec88fSEmmanuel Vadot
323c66ec88fSEmmanuel Vadot	pdma: dma-controller@13420000 {
324c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-dma";
325c66ec88fSEmmanuel Vadot		reg = <0x13420000 0x400>, <0x13421000 0x40>;
326d5b0e70fSEmmanuel Vadot
327c66ec88fSEmmanuel Vadot		#dma-cells = <2>;
328c66ec88fSEmmanuel Vadot
329c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
330c66ec88fSEmmanuel Vadot		interrupts = <10>;
331c66ec88fSEmmanuel Vadot
332c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_PDMA>;
333c66ec88fSEmmanuel Vadot	};
334c66ec88fSEmmanuel Vadot
335c66ec88fSEmmanuel Vadot	msc0: mmc@13450000 {
336c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-mmc";
337c66ec88fSEmmanuel Vadot		reg = <0x13450000 0x1000>;
338c66ec88fSEmmanuel Vadot
339c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
340c66ec88fSEmmanuel Vadot		interrupts = <37>;
341c66ec88fSEmmanuel Vadot
342c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_MSC0>;
343c66ec88fSEmmanuel Vadot		clock-names = "mmc";
344c66ec88fSEmmanuel Vadot
345c66ec88fSEmmanuel Vadot		cap-sd-highspeed;
346c66ec88fSEmmanuel Vadot		cap-mmc-highspeed;
347c66ec88fSEmmanuel Vadot		cap-sdio-irq;
348c66ec88fSEmmanuel Vadot
349c66ec88fSEmmanuel Vadot		dmas = <&pdma X1000_DMA_MSC0_RX 0xffffffff>,
350c66ec88fSEmmanuel Vadot			   <&pdma X1000_DMA_MSC0_TX 0xffffffff>;
351c66ec88fSEmmanuel Vadot		dma-names = "rx", "tx";
352c66ec88fSEmmanuel Vadot
353c66ec88fSEmmanuel Vadot		status = "disabled";
354c66ec88fSEmmanuel Vadot	};
355c66ec88fSEmmanuel Vadot
356c66ec88fSEmmanuel Vadot	msc1: mmc@13460000 {
357c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-mmc";
358c66ec88fSEmmanuel Vadot		reg = <0x13460000 0x1000>;
359c66ec88fSEmmanuel Vadot
360c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
361c66ec88fSEmmanuel Vadot		interrupts = <36>;
362c66ec88fSEmmanuel Vadot
363c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_MSC1>;
364c66ec88fSEmmanuel Vadot		clock-names = "mmc";
365c66ec88fSEmmanuel Vadot
366c66ec88fSEmmanuel Vadot		cap-sd-highspeed;
367c66ec88fSEmmanuel Vadot		cap-mmc-highspeed;
368c66ec88fSEmmanuel Vadot		cap-sdio-irq;
369c66ec88fSEmmanuel Vadot
370c66ec88fSEmmanuel Vadot		dmas = <&pdma X1000_DMA_MSC1_RX 0xffffffff>,
371c66ec88fSEmmanuel Vadot			   <&pdma X1000_DMA_MSC1_TX 0xffffffff>;
372c66ec88fSEmmanuel Vadot		dma-names = "rx", "tx";
373c66ec88fSEmmanuel Vadot
374c66ec88fSEmmanuel Vadot		status = "disabled";
375c66ec88fSEmmanuel Vadot	};
376c66ec88fSEmmanuel Vadot
377c66ec88fSEmmanuel Vadot	mac: ethernet@134b0000 {
378c66ec88fSEmmanuel Vadot		compatible = "ingenic,x1000-mac", "snps,dwmac";
379c66ec88fSEmmanuel Vadot		reg = <0x134b0000 0x2000>;
380c66ec88fSEmmanuel Vadot
381c66ec88fSEmmanuel Vadot		interrupt-parent = <&intc>;
382c66ec88fSEmmanuel Vadot		interrupts = <55>;
383c66ec88fSEmmanuel Vadot		interrupt-names = "macirq";
384c66ec88fSEmmanuel Vadot
385c66ec88fSEmmanuel Vadot		clocks = <&cgu X1000_CLK_MAC>;
386c66ec88fSEmmanuel Vadot		clock-names = "stmmaceth";
387c66ec88fSEmmanuel Vadot
3885956d97fSEmmanuel Vadot		mode-reg = <&mac_phy_ctrl>;
3895956d97fSEmmanuel Vadot
390c66ec88fSEmmanuel Vadot		status = "disabled";
391c66ec88fSEmmanuel Vadot
392c66ec88fSEmmanuel Vadot		mdio: mdio {
393c66ec88fSEmmanuel Vadot			compatible = "snps,dwmac-mdio";
394c66ec88fSEmmanuel Vadot			#address-cells = <1>;
395c66ec88fSEmmanuel Vadot			#size-cells = <0>;
396c66ec88fSEmmanuel Vadot
397c66ec88fSEmmanuel Vadot			status = "disabled";
398c66ec88fSEmmanuel Vadot		};
399c66ec88fSEmmanuel Vadot	};
4005def4c47SEmmanuel Vadot
4015def4c47SEmmanuel Vadot	otg: usb@13500000 {
402d5b0e70fSEmmanuel Vadot		compatible = "ingenic,x1000-otg";
4035def4c47SEmmanuel Vadot		reg = <0x13500000 0x40000>;
4045def4c47SEmmanuel Vadot
4055def4c47SEmmanuel Vadot		interrupt-parent = <&intc>;
4065def4c47SEmmanuel Vadot		interrupts = <21>;
4075def4c47SEmmanuel Vadot
4085def4c47SEmmanuel Vadot		clocks = <&cgu X1000_CLK_OTG>;
4095def4c47SEmmanuel Vadot		clock-names = "otg";
4105def4c47SEmmanuel Vadot
4115def4c47SEmmanuel Vadot		phys = <&otg_phy>;
4125def4c47SEmmanuel Vadot		phy-names = "usb2-phy";
4135def4c47SEmmanuel Vadot
4145def4c47SEmmanuel Vadot		g-rx-fifo-size = <768>;
4155def4c47SEmmanuel Vadot		g-np-tx-fifo-size = <256>;
4165def4c47SEmmanuel Vadot		g-tx-fifo-size = <256 256 256 256 256 256 256 512>;
4175def4c47SEmmanuel Vadot
4185def4c47SEmmanuel Vadot		status = "disabled";
4195def4c47SEmmanuel Vadot	};
420*f126890aSEmmanuel Vadot
421*f126890aSEmmanuel Vadot	aic: audio-controller@10020000 {
422*f126890aSEmmanuel Vadot		compatible = "ingenic,x1000-i2s";
423*f126890aSEmmanuel Vadot		reg = <0x10020000 0x38>;
424*f126890aSEmmanuel Vadot
425*f126890aSEmmanuel Vadot		#sound-dai-cells = <0>;
426*f126890aSEmmanuel Vadot
427*f126890aSEmmanuel Vadot		interrupt-parent = <&intc>;
428*f126890aSEmmanuel Vadot		interrupts = <1>;
429*f126890aSEmmanuel Vadot
430*f126890aSEmmanuel Vadot		clocks = <&cgu X1000_CLK_AIC>,
431*f126890aSEmmanuel Vadot			 <&cgu X1000_CLK_I2S>;
432*f126890aSEmmanuel Vadot		clock-names = "aic", "i2s";
433*f126890aSEmmanuel Vadot
434*f126890aSEmmanuel Vadot		dmas = <&pdma X1000_DMA_I2S0_RX 0xffffffff>,
435*f126890aSEmmanuel Vadot			   <&pdma X1000_DMA_I2S0_TX 0xffffffff>;
436*f126890aSEmmanuel Vadot		dma-names = "rx", "tx";
437*f126890aSEmmanuel Vadot	};
438c66ec88fSEmmanuel Vadot};
439