xref: /freebsd-src/sys/contrib/device-tree/src/arm/renesas/r9a06g032.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Base Device Tree Source for the Renesas RZ/N1D (R9A06G032)
4f126890aSEmmanuel Vadot *
5f126890aSEmmanuel Vadot * Copyright (C) 2018 Renesas Electronics Europe Limited
6f126890aSEmmanuel Vadot *
7f126890aSEmmanuel Vadot */
8f126890aSEmmanuel Vadot
9f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
10f126890aSEmmanuel Vadot#include <dt-bindings/clock/r9a06g032-sysctrl.h>
11f126890aSEmmanuel Vadot
12f126890aSEmmanuel Vadot/ {
13f126890aSEmmanuel Vadot	compatible = "renesas,r9a06g032";
14f126890aSEmmanuel Vadot	#address-cells = <1>;
15f126890aSEmmanuel Vadot	#size-cells = <1>;
16f126890aSEmmanuel Vadot
17f126890aSEmmanuel Vadot	cpus {
18f126890aSEmmanuel Vadot		#address-cells = <1>;
19f126890aSEmmanuel Vadot		#size-cells = <0>;
20f126890aSEmmanuel Vadot
21f126890aSEmmanuel Vadot		cpu@0 {
22f126890aSEmmanuel Vadot			device_type = "cpu";
23f126890aSEmmanuel Vadot			compatible = "arm,cortex-a7";
24f126890aSEmmanuel Vadot			reg = <0>;
25f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_A7MP>;
26f126890aSEmmanuel Vadot		};
27f126890aSEmmanuel Vadot
28f126890aSEmmanuel Vadot		cpu@1 {
29f126890aSEmmanuel Vadot			device_type = "cpu";
30f126890aSEmmanuel Vadot			compatible = "arm,cortex-a7";
31f126890aSEmmanuel Vadot			reg = <1>;
32f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_A7MP>;
33f126890aSEmmanuel Vadot			enable-method = "renesas,r9a06g032-smp";
34f126890aSEmmanuel Vadot			cpu-release-addr = <0 0x4000c204>;
35f126890aSEmmanuel Vadot		};
36f126890aSEmmanuel Vadot	};
37f126890aSEmmanuel Vadot
38f126890aSEmmanuel Vadot	ext_jtag_clk: extjtagclk {
39f126890aSEmmanuel Vadot		#clock-cells = <0>;
40f126890aSEmmanuel Vadot		compatible = "fixed-clock";
41f126890aSEmmanuel Vadot		clock-frequency = <0>;
42f126890aSEmmanuel Vadot	};
43f126890aSEmmanuel Vadot
44f126890aSEmmanuel Vadot	ext_mclk: extmclk {
45f126890aSEmmanuel Vadot		#clock-cells = <0>;
46f126890aSEmmanuel Vadot		compatible = "fixed-clock";
47f126890aSEmmanuel Vadot		clock-frequency = <40000000>;
48f126890aSEmmanuel Vadot	};
49f126890aSEmmanuel Vadot
50f126890aSEmmanuel Vadot	ext_rgmii_ref: extrgmiiref {
51f126890aSEmmanuel Vadot		#clock-cells = <0>;
52f126890aSEmmanuel Vadot		compatible = "fixed-clock";
53f126890aSEmmanuel Vadot		clock-frequency = <0>;
54f126890aSEmmanuel Vadot	};
55f126890aSEmmanuel Vadot
56f126890aSEmmanuel Vadot	ext_rtc_clk: extrtcclk {
57f126890aSEmmanuel Vadot		#clock-cells = <0>;
58f126890aSEmmanuel Vadot		compatible = "fixed-clock";
59f126890aSEmmanuel Vadot		clock-frequency = <0>;
60f126890aSEmmanuel Vadot	};
61f126890aSEmmanuel Vadot
62f126890aSEmmanuel Vadot	soc {
63f126890aSEmmanuel Vadot		compatible = "simple-bus";
64f126890aSEmmanuel Vadot		#address-cells = <1>;
65f126890aSEmmanuel Vadot		#size-cells = <1>;
66f126890aSEmmanuel Vadot		interrupt-parent = <&gic>;
67f126890aSEmmanuel Vadot		ranges;
68f126890aSEmmanuel Vadot
69f126890aSEmmanuel Vadot		rtc0: rtc@40006000 {
70f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-rtc", "renesas,rzn1-rtc";
71f126890aSEmmanuel Vadot			reg = <0x40006000 0x1000>;
72f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 66 IRQ_TYPE_EDGE_RISING>,
73f126890aSEmmanuel Vadot				     <GIC_SPI 67 IRQ_TYPE_EDGE_RISING>,
74f126890aSEmmanuel Vadot				     <GIC_SPI 68 IRQ_TYPE_EDGE_RISING>;
75f126890aSEmmanuel Vadot			interrupt-names = "alarm", "timer", "pps";
76f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_RTC>;
77f126890aSEmmanuel Vadot			clock-names = "hclk";
78f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
79f126890aSEmmanuel Vadot			status = "disabled";
80f126890aSEmmanuel Vadot		};
81f126890aSEmmanuel Vadot
82f126890aSEmmanuel Vadot		wdt0: watchdog@40008000 {
83f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-wdt", "renesas,rzn1-wdt";
84f126890aSEmmanuel Vadot			reg = <0x40008000 0x1000>;
85f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>;
86f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_WATCHDOG>;
87f126890aSEmmanuel Vadot			status = "disabled";
88f126890aSEmmanuel Vadot		};
89f126890aSEmmanuel Vadot
90f126890aSEmmanuel Vadot		wdt1: watchdog@40009000 {
91f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-wdt", "renesas,rzn1-wdt";
92f126890aSEmmanuel Vadot			reg = <0x40009000 0x1000>;
93f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 74 IRQ_TYPE_EDGE_RISING>;
94f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_WATCHDOG>;
95f126890aSEmmanuel Vadot			status = "disabled";
96f126890aSEmmanuel Vadot		};
97f126890aSEmmanuel Vadot
98f126890aSEmmanuel Vadot		sysctrl: system-controller@4000c000 {
99f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-sysctrl";
100f126890aSEmmanuel Vadot			reg = <0x4000c000 0x1000>;
101f126890aSEmmanuel Vadot			status = "okay";
102f126890aSEmmanuel Vadot			#clock-cells = <1>;
103f126890aSEmmanuel Vadot			#power-domain-cells = <0>;
104f126890aSEmmanuel Vadot
105f126890aSEmmanuel Vadot			clocks = <&ext_mclk>, <&ext_rtc_clk>,
106f126890aSEmmanuel Vadot					<&ext_jtag_clk>, <&ext_rgmii_ref>;
107f126890aSEmmanuel Vadot			clock-names = "mclk", "rtc", "jtag", "rgmii_ref_ext";
108f126890aSEmmanuel Vadot			#address-cells = <1>;
109f126890aSEmmanuel Vadot			#size-cells = <1>;
110f126890aSEmmanuel Vadot
111f126890aSEmmanuel Vadot			dmamux: dma-router@a0 {
112f126890aSEmmanuel Vadot				compatible = "renesas,rzn1-dmamux";
113f126890aSEmmanuel Vadot				reg = <0xa0 4>;
114f126890aSEmmanuel Vadot				#dma-cells = <6>;
115f126890aSEmmanuel Vadot				dma-requests = <32>;
116f126890aSEmmanuel Vadot				dma-masters = <&dma0 &dma1>;
117f126890aSEmmanuel Vadot			};
118f126890aSEmmanuel Vadot		};
119f126890aSEmmanuel Vadot
120f126890aSEmmanuel Vadot		udc: usb@4001e000 {
121f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-usbf", "renesas,rzn1-usbf";
122f126890aSEmmanuel Vadot			reg = <0x4001e000 0x2000>;
123f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>,
124f126890aSEmmanuel Vadot				     <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
125f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_USBF>,
126f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_HCLK_USBPM>;
127f126890aSEmmanuel Vadot			clock-names = "hclkf", "hclkpm";
128f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
129f126890aSEmmanuel Vadot			status = "disabled";
130f126890aSEmmanuel Vadot		};
131f126890aSEmmanuel Vadot
132f126890aSEmmanuel Vadot		pci_usb: pci@40030000 {
133f126890aSEmmanuel Vadot			compatible = "renesas,pci-r9a06g032", "renesas,pci-rzn1";
134f126890aSEmmanuel Vadot			device_type = "pci";
135f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_USBH>,
136f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_HCLK_USBPM>,
137f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_CLK_PCI_USB>;
138f126890aSEmmanuel Vadot			clock-names = "hclkh", "hclkpm", "pciclk";
139f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
140f126890aSEmmanuel Vadot			reg = <0x40030000 0xc00>,
141f126890aSEmmanuel Vadot			      <0x40020000 0x1100>;
142f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
143f126890aSEmmanuel Vadot			status = "disabled";
144f126890aSEmmanuel Vadot
145f126890aSEmmanuel Vadot			bus-range = <0 0>;
146f126890aSEmmanuel Vadot			#address-cells = <3>;
147f126890aSEmmanuel Vadot			#size-cells = <2>;
148f126890aSEmmanuel Vadot			#interrupt-cells = <1>;
149f126890aSEmmanuel Vadot			ranges = <0x02000000 0 0x40020000 0x40020000 0 0x00010000>;
150f126890aSEmmanuel Vadot			/* Should map all possible DDR as inbound ranges, but
151f126890aSEmmanuel Vadot			 * the IP only supports a 256MB, 512MB, or 1GB window.
152f126890aSEmmanuel Vadot			 * flags, PCI addr (64-bit), CPU addr, PCI size (64-bit)
153f126890aSEmmanuel Vadot			 */
154f126890aSEmmanuel Vadot			dma-ranges = <0x42000000 0 0x80000000 0x80000000 0 0x40000000>;
155f126890aSEmmanuel Vadot			interrupt-map-mask = <0xf800 0 0 0x7>;
156f126890aSEmmanuel Vadot			interrupt-map = <0x0000 0 0 1 &gic GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH
157f126890aSEmmanuel Vadot					 0x0800 0 0 1 &gic GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH
158f126890aSEmmanuel Vadot					 0x1000 0 0 2 &gic GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
159f126890aSEmmanuel Vadot
160f126890aSEmmanuel Vadot			usb@1,0 {
161f126890aSEmmanuel Vadot				reg = <0x800 0 0 0 0>;
162f126890aSEmmanuel Vadot				phys = <&usbphy>;
163f126890aSEmmanuel Vadot				phy-names = "usb";
164f126890aSEmmanuel Vadot			};
165f126890aSEmmanuel Vadot
166f126890aSEmmanuel Vadot			usb@2,0 {
167f126890aSEmmanuel Vadot				reg = <0x1000 0 0 0 0>;
168f126890aSEmmanuel Vadot				phys = <&usbphy>;
169f126890aSEmmanuel Vadot				phy-names = "usb";
170f126890aSEmmanuel Vadot			};
171f126890aSEmmanuel Vadot		};
172f126890aSEmmanuel Vadot
173f126890aSEmmanuel Vadot		uart0: serial@40060000 {
174f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart", "snps,dw-apb-uart";
175f126890aSEmmanuel Vadot			reg = <0x40060000 0x400>;
176f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
177f126890aSEmmanuel Vadot			reg-shift = <2>;
178f126890aSEmmanuel Vadot			reg-io-width = <4>;
179f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART0>, <&sysctrl R9A06G032_HCLK_UART0>;
180f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
181f126890aSEmmanuel Vadot			status = "disabled";
182f126890aSEmmanuel Vadot		};
183f126890aSEmmanuel Vadot
184f126890aSEmmanuel Vadot		uart1: serial@40061000 {
185f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart", "snps,dw-apb-uart";
186f126890aSEmmanuel Vadot			reg = <0x40061000 0x400>;
187f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
188f126890aSEmmanuel Vadot			reg-shift = <2>;
189f126890aSEmmanuel Vadot			reg-io-width = <4>;
190f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART1>, <&sysctrl R9A06G032_HCLK_UART1>;
191f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
192f126890aSEmmanuel Vadot			status = "disabled";
193f126890aSEmmanuel Vadot		};
194f126890aSEmmanuel Vadot
195f126890aSEmmanuel Vadot		uart2: serial@40062000 {
196f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart", "snps,dw-apb-uart";
197f126890aSEmmanuel Vadot			reg = <0x40062000 0x400>;
198f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
199f126890aSEmmanuel Vadot			reg-shift = <2>;
200f126890aSEmmanuel Vadot			reg-io-width = <4>;
201f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART2>, <&sysctrl R9A06G032_HCLK_UART2>;
202f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
203f126890aSEmmanuel Vadot			status = "disabled";
204f126890aSEmmanuel Vadot		};
205f126890aSEmmanuel Vadot
206f126890aSEmmanuel Vadot		uart3: serial@50000000 {
207f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart";
208f126890aSEmmanuel Vadot			reg = <0x50000000 0x400>;
209f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
210f126890aSEmmanuel Vadot			reg-shift = <2>;
211f126890aSEmmanuel Vadot			reg-io-width = <4>;
212f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART3>, <&sysctrl R9A06G032_HCLK_UART3>;
213f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
214f126890aSEmmanuel Vadot			dmas = <&dmamux 0 0 0 0 0 1>, <&dmamux 1 0 0 0 1 1>;
215f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
216f126890aSEmmanuel Vadot			status = "disabled";
217f126890aSEmmanuel Vadot		};
218f126890aSEmmanuel Vadot
219f126890aSEmmanuel Vadot		uart4: serial@50001000 {
220f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart";
221f126890aSEmmanuel Vadot			reg = <0x50001000 0x400>;
222f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
223f126890aSEmmanuel Vadot			reg-shift = <2>;
224f126890aSEmmanuel Vadot			reg-io-width = <4>;
225f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART4>, <&sysctrl R9A06G032_HCLK_UART4>;
226f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
227f126890aSEmmanuel Vadot			dmas = <&dmamux 2 0 0 0 2 1>, <&dmamux 3 0 0 0 3 1>;
228f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
229f126890aSEmmanuel Vadot			status = "disabled";
230f126890aSEmmanuel Vadot		};
231f126890aSEmmanuel Vadot
232f126890aSEmmanuel Vadot		uart5: serial@50002000 {
233f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart";
234f126890aSEmmanuel Vadot			reg = <0x50002000 0x400>;
235f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
236f126890aSEmmanuel Vadot			reg-shift = <2>;
237f126890aSEmmanuel Vadot			reg-io-width = <4>;
238f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART5>, <&sysctrl R9A06G032_HCLK_UART5>;
239f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
240f126890aSEmmanuel Vadot			dmas = <&dmamux 4 0 0 0 4 1>, <&dmamux 5 0 0 0 5 1>;
241f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
242f126890aSEmmanuel Vadot			status = "disabled";
243f126890aSEmmanuel Vadot		};
244f126890aSEmmanuel Vadot
245f126890aSEmmanuel Vadot		uart6: serial@50003000 {
246f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart";
247f126890aSEmmanuel Vadot			reg = <0x50003000 0x400>;
248f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
249f126890aSEmmanuel Vadot			reg-shift = <2>;
250f126890aSEmmanuel Vadot			reg-io-width = <4>;
251f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART6>, <&sysctrl R9A06G032_HCLK_UART6>;
252f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
253f126890aSEmmanuel Vadot			dmas = <&dmamux 6 0 0 0 6 1>, <&dmamux 7 0 0 0 7 1>;
254f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
255f126890aSEmmanuel Vadot			status = "disabled";
256f126890aSEmmanuel Vadot		};
257f126890aSEmmanuel Vadot
258f126890aSEmmanuel Vadot		uart7: serial@50004000 {
259f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-uart", "renesas,rzn1-uart";
260f126890aSEmmanuel Vadot			reg = <0x50004000 0x400>;
261f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
262f126890aSEmmanuel Vadot			reg-shift = <2>;
263f126890aSEmmanuel Vadot			reg-io-width = <4>;
264f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_UART7>, <&sysctrl R9A06G032_HCLK_UART7>;
265f126890aSEmmanuel Vadot			clock-names = "baudclk", "apb_pclk";
266f126890aSEmmanuel Vadot			dmas = <&dmamux 4 0 0 0 20 1>, <&dmamux 5 0 0 0 21 1>;
267f126890aSEmmanuel Vadot			dma-names = "rx", "tx";
268f126890aSEmmanuel Vadot			status = "disabled";
269f126890aSEmmanuel Vadot		};
270f126890aSEmmanuel Vadot
271f126890aSEmmanuel Vadot		pinctrl: pinctrl@40067000 {
272f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-pinctrl", "renesas,rzn1-pinctrl";
273f126890aSEmmanuel Vadot			reg = <0x40067000 0x1000>, <0x51000000 0x480>;
274f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_PINCONFIG>;
275f126890aSEmmanuel Vadot			clock-names = "bus";
276f126890aSEmmanuel Vadot			status = "okay";
277f126890aSEmmanuel Vadot		};
278f126890aSEmmanuel Vadot
279f126890aSEmmanuel Vadot		nand_controller: nand-controller@40102000 {
280f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-nandc", "renesas,rzn1-nandc";
281f126890aSEmmanuel Vadot			reg = <0x40102000 0x2000>;
282f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
283f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_NAND>, <&sysctrl R9A06G032_CLK_NAND>;
284f126890aSEmmanuel Vadot			clock-names = "hclk", "eclk";
285f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
286f126890aSEmmanuel Vadot			#address-cells = <1>;
287f126890aSEmmanuel Vadot			#size-cells = <0>;
288f126890aSEmmanuel Vadot			status = "disabled";
289f126890aSEmmanuel Vadot		};
290f126890aSEmmanuel Vadot
291f126890aSEmmanuel Vadot		dma0: dma-controller@40104000 {
292f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-dma", "renesas,rzn1-dma";
293f126890aSEmmanuel Vadot			reg = <0x40104000 0x1000>;
294f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
295f126890aSEmmanuel Vadot			clock-names = "hclk";
296f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_DMA0>;
297f126890aSEmmanuel Vadot			dma-channels = <8>;
298f126890aSEmmanuel Vadot			dma-requests = <16>;
299f126890aSEmmanuel Vadot			dma-masters = <1>;
300f126890aSEmmanuel Vadot			#dma-cells = <3>;
301f126890aSEmmanuel Vadot			block_size = <0xfff>;
302f126890aSEmmanuel Vadot			data-width = <8>;
303f126890aSEmmanuel Vadot		};
304f126890aSEmmanuel Vadot
305f126890aSEmmanuel Vadot		dma1: dma-controller@40105000 {
306f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-dma", "renesas,rzn1-dma";
307f126890aSEmmanuel Vadot			reg = <0x40105000 0x1000>;
308f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
309f126890aSEmmanuel Vadot			clock-names = "hclk";
310f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_DMA1>;
311f126890aSEmmanuel Vadot			dma-channels = <8>;
312f126890aSEmmanuel Vadot			dma-requests = <16>;
313f126890aSEmmanuel Vadot			dma-masters = <1>;
314f126890aSEmmanuel Vadot			#dma-cells = <3>;
315f126890aSEmmanuel Vadot			block_size = <0xfff>;
316f126890aSEmmanuel Vadot			data-width = <8>;
317f126890aSEmmanuel Vadot		};
318f126890aSEmmanuel Vadot
319*0e8011faSEmmanuel Vadot		gmac1: ethernet@44000000 {
320*0e8011faSEmmanuel Vadot			compatible = "renesas,r9a06g032-gmac", "renesas,rzn1-gmac", "snps,dwmac";
321*0e8011faSEmmanuel Vadot			reg = <0x44000000 0x2000>;
322*0e8011faSEmmanuel Vadot			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
323*0e8011faSEmmanuel Vadot				     <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
324*0e8011faSEmmanuel Vadot				     <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
325*0e8011faSEmmanuel Vadot			interrupt-names = "macirq", "eth_wake_irq", "eth_lpi";
326*0e8011faSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_GMAC0>;
327*0e8011faSEmmanuel Vadot			clock-names = "stmmaceth";
328*0e8011faSEmmanuel Vadot			power-domains = <&sysctrl>;
329*0e8011faSEmmanuel Vadot			snps,multicast-filter-bins = <256>;
330*0e8011faSEmmanuel Vadot			snps,perfect-filter-entries = <128>;
331*0e8011faSEmmanuel Vadot			tx-fifo-depth = <2048>;
332*0e8011faSEmmanuel Vadot			rx-fifo-depth = <4096>;
333*0e8011faSEmmanuel Vadot			pcs-handle = <&mii_conv1>;
334*0e8011faSEmmanuel Vadot			status = "disabled";
335*0e8011faSEmmanuel Vadot		};
336*0e8011faSEmmanuel Vadot
337f126890aSEmmanuel Vadot		gmac2: ethernet@44002000 {
338f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-gmac", "renesas,rzn1-gmac", "snps,dwmac";
339f126890aSEmmanuel Vadot			reg = <0x44002000 0x2000>;
340f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
341f126890aSEmmanuel Vadot				     <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
342f126890aSEmmanuel Vadot				     <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
343f126890aSEmmanuel Vadot			interrupt-names = "macirq", "eth_wake_irq", "eth_lpi";
344f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_GMAC1>;
345f126890aSEmmanuel Vadot			clock-names = "stmmaceth";
346f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
347f126890aSEmmanuel Vadot			snps,multicast-filter-bins = <256>;
348f126890aSEmmanuel Vadot			snps,perfect-filter-entries = <128>;
349f126890aSEmmanuel Vadot			tx-fifo-depth = <2048>;
350f126890aSEmmanuel Vadot			rx-fifo-depth = <4096>;
351f126890aSEmmanuel Vadot			status = "disabled";
352f126890aSEmmanuel Vadot		};
353f126890aSEmmanuel Vadot
354f126890aSEmmanuel Vadot		eth_miic: eth-miic@44030000 {
355f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-miic", "renesas,rzn1-miic";
356f126890aSEmmanuel Vadot			#address-cells = <1>;
357f126890aSEmmanuel Vadot			#size-cells = <0>;
358f126890aSEmmanuel Vadot			reg = <0x44030000 0x10000>;
359f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_CLK_MII_REF>,
360f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_CLK_RGMII_REF>,
361f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_CLK_RMII_REF>,
362f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_HCLK_SWITCH_RG>;
363f126890aSEmmanuel Vadot			clock-names = "mii_ref", "rgmii_ref", "rmii_ref", "hclk";
364f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
365f126890aSEmmanuel Vadot			status = "disabled";
366f126890aSEmmanuel Vadot
367f126890aSEmmanuel Vadot			mii_conv1: mii-conv@1 {
368f126890aSEmmanuel Vadot				reg = <1>;
369f126890aSEmmanuel Vadot				status = "disabled";
370f126890aSEmmanuel Vadot			};
371f126890aSEmmanuel Vadot
372f126890aSEmmanuel Vadot			mii_conv2: mii-conv@2 {
373f126890aSEmmanuel Vadot				reg = <2>;
374f126890aSEmmanuel Vadot				status = "disabled";
375f126890aSEmmanuel Vadot			};
376f126890aSEmmanuel Vadot
377f126890aSEmmanuel Vadot			mii_conv3: mii-conv@3 {
378f126890aSEmmanuel Vadot				reg = <3>;
379f126890aSEmmanuel Vadot				status = "disabled";
380f126890aSEmmanuel Vadot			};
381f126890aSEmmanuel Vadot
382f126890aSEmmanuel Vadot			mii_conv4: mii-conv@4 {
383f126890aSEmmanuel Vadot				reg = <4>;
384f126890aSEmmanuel Vadot				status = "disabled";
385f126890aSEmmanuel Vadot			};
386f126890aSEmmanuel Vadot
387f126890aSEmmanuel Vadot			mii_conv5: mii-conv@5 {
388f126890aSEmmanuel Vadot				reg = <5>;
389f126890aSEmmanuel Vadot				status = "disabled";
390f126890aSEmmanuel Vadot			};
391f126890aSEmmanuel Vadot		};
392f126890aSEmmanuel Vadot
393f126890aSEmmanuel Vadot		switch: switch@44050000 {
394f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-a5psw", "renesas,rzn1-a5psw";
395f126890aSEmmanuel Vadot			reg = <0x44050000 0x10000>;
396f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_SWITCH>,
397f126890aSEmmanuel Vadot				 <&sysctrl R9A06G032_CLK_SWITCH>;
398f126890aSEmmanuel Vadot			clock-names = "hclk", "clk";
399f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
400f126890aSEmmanuel Vadot			status = "disabled";
401f126890aSEmmanuel Vadot
402f126890aSEmmanuel Vadot			ethernet-ports {
403f126890aSEmmanuel Vadot				#address-cells = <1>;
404f126890aSEmmanuel Vadot				#size-cells = <0>;
405f126890aSEmmanuel Vadot
406f126890aSEmmanuel Vadot				switch_port0: port@0 {
407f126890aSEmmanuel Vadot					reg = <0>;
408f126890aSEmmanuel Vadot					pcs-handle = <&mii_conv5>;
409f126890aSEmmanuel Vadot					status = "disabled";
410f126890aSEmmanuel Vadot				};
411f126890aSEmmanuel Vadot
412f126890aSEmmanuel Vadot				switch_port1: port@1 {
413f126890aSEmmanuel Vadot					reg = <1>;
414f126890aSEmmanuel Vadot					pcs-handle = <&mii_conv4>;
415f126890aSEmmanuel Vadot					status = "disabled";
416f126890aSEmmanuel Vadot				};
417f126890aSEmmanuel Vadot
418f126890aSEmmanuel Vadot				switch_port2: port@2 {
419f126890aSEmmanuel Vadot					reg = <2>;
420f126890aSEmmanuel Vadot					pcs-handle = <&mii_conv3>;
421f126890aSEmmanuel Vadot					status = "disabled";
422f126890aSEmmanuel Vadot				};
423f126890aSEmmanuel Vadot
424f126890aSEmmanuel Vadot				switch_port3: port@3 {
425f126890aSEmmanuel Vadot					reg = <3>;
426f126890aSEmmanuel Vadot					pcs-handle = <&mii_conv2>;
427f126890aSEmmanuel Vadot					status = "disabled";
428f126890aSEmmanuel Vadot				};
429f126890aSEmmanuel Vadot
430f126890aSEmmanuel Vadot				switch_port4: port@4 {
431f126890aSEmmanuel Vadot					reg = <4>;
432f126890aSEmmanuel Vadot					ethernet = <&gmac2>;
433f126890aSEmmanuel Vadot					label = "cpu";
434f126890aSEmmanuel Vadot					phy-mode = "internal";
435f126890aSEmmanuel Vadot					status = "disabled";
436f126890aSEmmanuel Vadot					fixed-link {
437f126890aSEmmanuel Vadot						speed = <1000>;
438f126890aSEmmanuel Vadot						full-duplex;
439f126890aSEmmanuel Vadot					};
440f126890aSEmmanuel Vadot				};
441f126890aSEmmanuel Vadot			};
442f126890aSEmmanuel Vadot		};
443f126890aSEmmanuel Vadot
444f126890aSEmmanuel Vadot		gic: interrupt-controller@44101000 {
445f126890aSEmmanuel Vadot			compatible = "arm,gic-400", "arm,cortex-a7-gic";
446f126890aSEmmanuel Vadot			interrupt-controller;
447f126890aSEmmanuel Vadot			#interrupt-cells = <3>;
448f126890aSEmmanuel Vadot			reg = <0x44101000 0x1000>, /* Distributer */
449f126890aSEmmanuel Vadot			      <0x44102000 0x2000>, /* CPU interface */
450f126890aSEmmanuel Vadot			      <0x44104000 0x2000>, /* Virt interface control */
451f126890aSEmmanuel Vadot			      <0x44106000 0x2000>; /* Virt CPU interface */
452f126890aSEmmanuel Vadot			interrupts =
453f126890aSEmmanuel Vadot				<GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
454f126890aSEmmanuel Vadot		};
455f126890aSEmmanuel Vadot
456f126890aSEmmanuel Vadot		can0: can@52104000 {
457f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-sja1000", "renesas,rzn1-sja1000";
458f126890aSEmmanuel Vadot			reg = <0x52104000 0x800>;
459f126890aSEmmanuel Vadot			reg-io-width = <4>;
460f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
461f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_CAN0>;
462f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
463f126890aSEmmanuel Vadot			status = "disabled";
464f126890aSEmmanuel Vadot		};
465f126890aSEmmanuel Vadot
466f126890aSEmmanuel Vadot		can1: can@52105000 {
467f126890aSEmmanuel Vadot			compatible = "renesas,r9a06g032-sja1000", "renesas,rzn1-sja1000";
468f126890aSEmmanuel Vadot			reg = <0x52105000 0x800>;
469f126890aSEmmanuel Vadot			reg-io-width = <4>;
470f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
471f126890aSEmmanuel Vadot			clocks = <&sysctrl R9A06G032_HCLK_CAN1>;
472f126890aSEmmanuel Vadot			power-domains = <&sysctrl>;
473f126890aSEmmanuel Vadot			status = "disabled";
474f126890aSEmmanuel Vadot		};
475f126890aSEmmanuel Vadot	};
476f126890aSEmmanuel Vadot
477f126890aSEmmanuel Vadot	timer {
478f126890aSEmmanuel Vadot		compatible = "arm,armv7-timer";
479f126890aSEmmanuel Vadot		interrupt-parent = <&gic>;
480f126890aSEmmanuel Vadot		arm,cpu-registers-not-fw-configured;
481f126890aSEmmanuel Vadot		always-on;
482f126890aSEmmanuel Vadot		interrupts =
483f126890aSEmmanuel Vadot			<GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
484f126890aSEmmanuel Vadot			<GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
485f126890aSEmmanuel Vadot			<GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>,
486f126890aSEmmanuel Vadot			<GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_LOW)>;
487*0e8011faSEmmanuel Vadot		interrupt-names = "sec-phys", "phys", "virt", "hyp-phys";
488f126890aSEmmanuel Vadot	};
489f126890aSEmmanuel Vadot
490f126890aSEmmanuel Vadot	usbphy: usb-phy {
491f126890aSEmmanuel Vadot		#phy-cells = <0>;
492f126890aSEmmanuel Vadot		compatible = "usb-nop-xceiv";
493f126890aSEmmanuel Vadot		status = "disabled";
494f126890aSEmmanuel Vadot	};
495f126890aSEmmanuel Vadot};
496