xref: /optee_os/core/arch/arm/dts/sama7g5.dtsi (revision 932a3e117731dbbba24e4998a3c8724bcfc5cc37)
1d6a0fc9bSTony Han// SPDX-License-Identifier: BSD-2-Clause
2d6a0fc9bSTony Han/*
3d6a0fc9bSTony Han *  sama7g5.dtsi - Device Tree Include file for SAMA7G5 family SoC
4d6a0fc9bSTony Han *
5d6a0fc9bSTony Han *  Copyright (C) 2020 Microchip Technology, Inc. and its subsidiaries
6d6a0fc9bSTony Han *
7d6a0fc9bSTony Han *  Author: Eugen Hristev <eugen.hristev@microchip.com>
8d6a0fc9bSTony Han *  Author: Claudiu Beznea <claudiu.beznea@microchip.com>
9d6a0fc9bSTony Han */
10d6a0fc9bSTony Han
11d6a0fc9bSTony Han#include <dt-bindings/clock/at91.h>
12d6a0fc9bSTony Han#include <dt-bindings/dma/at91.h>
13d6a0fc9bSTony Han#include <dt-bindings/gpio/gpio.h>
14d6a0fc9bSTony Han#include <dt-bindings/iio/adc/at91-sama5d2_adc.h>
15d6a0fc9bSTony Han#include <dt-bindings/interrupt-controller/arm-gic.h>
16d6a0fc9bSTony Han#include <dt-bindings/interrupt-controller/irq.h>
17d6a0fc9bSTony Han
18d6a0fc9bSTony Han/ {
19d6a0fc9bSTony Han	model = "Microchip SAMA7G5 family SoC";
20d6a0fc9bSTony Han	compatible = "microchip,sama7g5";
21d6a0fc9bSTony Han	#address-cells = <1>;
22d6a0fc9bSTony Han	#size-cells = <1>;
23d6a0fc9bSTony Han	interrupt-parent = <&gic>;
24d6a0fc9bSTony Han
25d6a0fc9bSTony Han	cpus {
26d6a0fc9bSTony Han		#address-cells = <1>;
27d6a0fc9bSTony Han		#size-cells = <0>;
28d6a0fc9bSTony Han
29d6a0fc9bSTony Han		cpu0: cpu@0 {
30d6a0fc9bSTony Han			device_type = "cpu";
31d6a0fc9bSTony Han			compatible = "arm,cortex-a7";
32d6a0fc9bSTony Han			reg = <0x0>;
33d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_CORE PMC_CPUPLL>;
34d6a0fc9bSTony Han			clock-names = "cpu";
35d6a0fc9bSTony Han			operating-points-v2 = <&cpu_opp_table>;
36d6a0fc9bSTony Han			#cooling-cells = <2>; /* min followed by max */
37d6a0fc9bSTony Han		};
38d6a0fc9bSTony Han	};
39d6a0fc9bSTony Han
40d6a0fc9bSTony Han	cpu_opp_table: opp-table {
41d6a0fc9bSTony Han		compatible = "operating-points-v2";
42d6a0fc9bSTony Han
43d6a0fc9bSTony Han		opp-90000000 {
44d6a0fc9bSTony Han			opp-hz = /bits/ 64 <90000000>;
45d6a0fc9bSTony Han			opp-microvolt = <1050000 1050000 1225000>;
46d6a0fc9bSTony Han			clock-latency-ns = <320000>;
47d6a0fc9bSTony Han		};
48d6a0fc9bSTony Han
49d6a0fc9bSTony Han		opp-250000000 {
50d6a0fc9bSTony Han			opp-hz = /bits/ 64 <250000000>;
51d6a0fc9bSTony Han			opp-microvolt = <1050000 1050000 1225000>;
52d6a0fc9bSTony Han			clock-latency-ns = <320000>;
53d6a0fc9bSTony Han		};
54d6a0fc9bSTony Han
55d6a0fc9bSTony Han		opp-600000000 {
56d6a0fc9bSTony Han			opp-hz = /bits/ 64 <600000000>;
57d6a0fc9bSTony Han			opp-microvolt = <1050000 1050000 1225000>;
58d6a0fc9bSTony Han			clock-latency-ns = <320000>;
59d6a0fc9bSTony Han			opp-suspend;
60d6a0fc9bSTony Han		};
61d6a0fc9bSTony Han
62d6a0fc9bSTony Han		opp-800000000 {
63d6a0fc9bSTony Han			opp-hz = /bits/ 64 <800000000>;
64d6a0fc9bSTony Han			opp-microvolt = <1150000 1125000 1225000>;
65d6a0fc9bSTony Han			clock-latency-ns = <320000>;
66d6a0fc9bSTony Han		};
67d6a0fc9bSTony Han
68d6a0fc9bSTony Han		opp-1000000002 {
69d6a0fc9bSTony Han			opp-hz = /bits/ 64 <1000000002>;
70d6a0fc9bSTony Han			opp-microvolt = <1250000 1225000 1300000>;
71d6a0fc9bSTony Han			clock-latency-ns = <320000>;
72d6a0fc9bSTony Han		};
73d6a0fc9bSTony Han	};
74d6a0fc9bSTony Han
75d6a0fc9bSTony Han	thermal-zones {
76d6a0fc9bSTony Han		cpu_thermal: cpu-thermal {
77d6a0fc9bSTony Han			polling-delay-passive = <1000>;
78d6a0fc9bSTony Han			polling-delay = <5000>;
79d6a0fc9bSTony Han			thermal-sensors = <&thermal_sensor>;
80d6a0fc9bSTony Han
81d6a0fc9bSTony Han			trips {
82d6a0fc9bSTony Han				cpu_normal: cpu-alert0 {
83d6a0fc9bSTony Han					temperature = <90000>;
84d6a0fc9bSTony Han					hysteresis = <0>;
85d6a0fc9bSTony Han					type = "passive";
86d6a0fc9bSTony Han				};
87d6a0fc9bSTony Han
88d6a0fc9bSTony Han				cpu_hot: cpu-alert1 {
89d6a0fc9bSTony Han					temperature = <95000>;
90d6a0fc9bSTony Han					hysteresis = <0>;
91d6a0fc9bSTony Han					type = "passive";
92d6a0fc9bSTony Han				};
93d6a0fc9bSTony Han
94d6a0fc9bSTony Han				cpu_critical: cpu-critical {
95d6a0fc9bSTony Han					temperature = <100000>;
96d6a0fc9bSTony Han					hysteresis = <0>;
97d6a0fc9bSTony Han					type = "critical";
98d6a0fc9bSTony Han				};
99d6a0fc9bSTony Han			};
100d6a0fc9bSTony Han
101d6a0fc9bSTony Han			cooling-maps {
102d6a0fc9bSTony Han				map0 {
103d6a0fc9bSTony Han					trip = <&cpu_normal>;
104d6a0fc9bSTony Han				};
105d6a0fc9bSTony Han
106d6a0fc9bSTony Han				map1 {
107d6a0fc9bSTony Han					trip = <&cpu_hot>;
108d6a0fc9bSTony Han				};
109d6a0fc9bSTony Han			};
110d6a0fc9bSTony Han		};
111d6a0fc9bSTony Han	};
112d6a0fc9bSTony Han
113d6a0fc9bSTony Han	clocks {
114d6a0fc9bSTony Han		slow_xtal: slow_xtal {
115d6a0fc9bSTony Han			compatible = "fixed-clock";
116d6a0fc9bSTony Han			#clock-cells = <0>;
117d6a0fc9bSTony Han		};
118d6a0fc9bSTony Han
119d6a0fc9bSTony Han		main_xtal: main_xtal {
120d6a0fc9bSTony Han			compatible = "fixed-clock";
121d6a0fc9bSTony Han			#clock-cells = <0>;
122d6a0fc9bSTony Han		};
123d6a0fc9bSTony Han
124d6a0fc9bSTony Han		usb_clk: usb_clk {
125d6a0fc9bSTony Han			compatible = "fixed-clock";
126d6a0fc9bSTony Han			#clock-cells = <0>;
127d6a0fc9bSTony Han			clock-frequency = <48000000>;
128d6a0fc9bSTony Han		};
129d6a0fc9bSTony Han	};
130d6a0fc9bSTony Han
131d6a0fc9bSTony Han	utmi_clk: utmi-clk {
132d6a0fc9bSTony Han		compatible = "microchip,sama7g5-utmi-clk";
133d6a0fc9bSTony Han		sfr-phandle = <&sfr>;
134d6a0fc9bSTony Han		#clock-cells = <1>;
135d6a0fc9bSTony Han		clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>;
136d6a0fc9bSTony Han		clock-names = "utmi_clk";
137d6a0fc9bSTony Han		reset-names = "usb0_reset", "usb1_reset", "usb2_reset";
138d6a0fc9bSTony Han		status = "disabled";
139d6a0fc9bSTony Han	};
140d6a0fc9bSTony Han
141d6a0fc9bSTony Han	utmi {
142d6a0fc9bSTony Han		compatible = "simple-bus";
143d6a0fc9bSTony Han		#address-cells = <1>;
144d6a0fc9bSTony Han		#size-cells = <0>;
145d6a0fc9bSTony Han
146d6a0fc9bSTony Han		usb_phy0: phy@0 {
147d6a0fc9bSTony Han			compatible = "microchip,sama7g5-usb-phy";
148d6a0fc9bSTony Han			sfr-phandle = <&sfr>;
149d6a0fc9bSTony Han			reg = <0>;
150d6a0fc9bSTony Han			clock-names = "utmi_clk";
151d6a0fc9bSTony Han			status = "disabled";
152d6a0fc9bSTony Han			#phy-cells = <0>;
153d6a0fc9bSTony Han		};
154d6a0fc9bSTony Han
155d6a0fc9bSTony Han		usb_phy1: phy@1 {
156d6a0fc9bSTony Han			compatible = "microchip,sama7g5-usb-phy";
157d6a0fc9bSTony Han			sfr-phandle = <&sfr>;
158d6a0fc9bSTony Han			reg = <1>;
159d6a0fc9bSTony Han			clock-names = "utmi_clk";
160d6a0fc9bSTony Han			status = "disabled";
161d6a0fc9bSTony Han			#phy-cells = <0>;
162d6a0fc9bSTony Han		};
163d6a0fc9bSTony Han
164d6a0fc9bSTony Han		usb_phy2: phy@2 {
165d6a0fc9bSTony Han			compatible = "microchip,sama7g5-usb-phy";
166d6a0fc9bSTony Han			sfr-phandle = <&sfr>;
167d6a0fc9bSTony Han			reg = <2>;
168d6a0fc9bSTony Han			clock-names = "utmi_clk";
169d6a0fc9bSTony Han			status = "disabled";
170d6a0fc9bSTony Han			#phy-cells = <0>;
171d6a0fc9bSTony Han		};
172d6a0fc9bSTony Han	};
173d6a0fc9bSTony Han
174d6a0fc9bSTony Han	vddout25: fixed-regulator-vddout25 {
175d6a0fc9bSTony Han		compatible = "regulator-fixed";
176d6a0fc9bSTony Han
177d6a0fc9bSTony Han		regulator-name = "VDDOUT25";
178d6a0fc9bSTony Han		regulator-min-microvolt = <2500000>;
179d6a0fc9bSTony Han		regulator-max-microvolt = <2500000>;
180d6a0fc9bSTony Han		regulator-boot-on;
181d6a0fc9bSTony Han		status = "disabled";
182d6a0fc9bSTony Han	};
183d6a0fc9bSTony Han
184d6a0fc9bSTony Han	ns_sram: sram@100000 {
185d6a0fc9bSTony Han		compatible = "atmel,sama5d2-sram", "mmio-sram";
186d6a0fc9bSTony Han		#address-cells = <1>;
187d6a0fc9bSTony Han		#size-cells = <1>;
188d6a0fc9bSTony Han		reg = <0x100000 0x3400>;
189d6a0fc9bSTony Han		ranges;
190d6a0fc9bSTony Han		status = "disabled";
191d6a0fc9bSTony Han		secure-status = "okay";
192d6a0fc9bSTony Han	};
193d6a0fc9bSTony Han
194d6a0fc9bSTony Han	thermal_sensor: thermal-sensor {
195d6a0fc9bSTony Han		compatible = "generic-adc-thermal";
196d6a0fc9bSTony Han		#thermal-sensor-cells = <0>;
197d6a0fc9bSTony Han		io-channel-names = "sensor-channel";
198d6a0fc9bSTony Han		status = "disabled";
199d6a0fc9bSTony Han	};
200d6a0fc9bSTony Han
201d6a0fc9bSTony Han	soc {
202d6a0fc9bSTony Han		compatible = "simple-bus";
203d6a0fc9bSTony Han		#address-cells = <1>;
204d6a0fc9bSTony Han		#size-cells = <1>;
205d6a0fc9bSTony Han		ranges;
206d6a0fc9bSTony Han
207d6a0fc9bSTony Han		usb0: gadget@200000 {
208d6a0fc9bSTony Han			#address-cells = <1>;
209d6a0fc9bSTony Han			#size-cells = <0>;
210d6a0fc9bSTony Han			compatible = "microchip,sama7g5-udc";
211d6a0fc9bSTony Han			reg = <0x00200000 0x100000
212d6a0fc9bSTony Han			       0xe0814000 0x400>;
213d6a0fc9bSTony Han			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
214d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 104>, <&usb_clk>;
215d6a0fc9bSTony Han			clock-names = "pclk", "hclk";
216d6a0fc9bSTony Han			status = "disabled";
217d6a0fc9bSTony Han		};
218d6a0fc9bSTony Han
219d6a0fc9bSTony Han		usb1: gadget@300000 {
220d6a0fc9bSTony Han			#address-cells = <1>;
221d6a0fc9bSTony Han			#size-cells = <0>;
222d6a0fc9bSTony Han			compatible = "microchip,sama7g5-udc";
223d6a0fc9bSTony Han			reg = <0x00300000 0x100000
224d6a0fc9bSTony Han			       0xe0818000 0x400>;
225d6a0fc9bSTony Han			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
226d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 105>, <&usb_clk>;
227d6a0fc9bSTony Han			clock-names = "pclk", "hclk";
228d6a0fc9bSTony Han			status = "disabled";
229d6a0fc9bSTony Han		};
230d6a0fc9bSTony Han
231d6a0fc9bSTony Han		usb2: ohci@400000 {
232d6a0fc9bSTony Han			compatible = "microchip,sama7g5-ohci", "usb-ohci";
233d6a0fc9bSTony Han			reg = <0x00400000 0x100000>;
234d6a0fc9bSTony Han			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
235d6a0fc9bSTony Han			clock-names = "ohci_clk", "hclk", "uhpck";
236d6a0fc9bSTony Han			status = "disabled";
237d6a0fc9bSTony Han		};
238d6a0fc9bSTony Han
239d6a0fc9bSTony Han		usb3: ehci@500000 {
240d6a0fc9bSTony Han			compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
241d6a0fc9bSTony Han			reg = <0x00500000 0x100000>;
242d6a0fc9bSTony Han			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
243d6a0fc9bSTony Han			clocks = <&usb_clk>, <&pmc PMC_TYPE_PERIPHERAL 106>;
244d6a0fc9bSTony Han			clock-names = "usb_clk", "ehci_clk";
245d6a0fc9bSTony Han			status = "disabled";
246d6a0fc9bSTony Han		};
247d6a0fc9bSTony Han
248d6a0fc9bSTony Han		nfc_sram: sram@600000 {
249d6a0fc9bSTony Han			compatible = "mmio-sram";
250d6a0fc9bSTony Han			no-memory-wc;
251d6a0fc9bSTony Han			reg = <0x00600000 0x2400>;
252d6a0fc9bSTony Han			#address-cells = <1>;
253d6a0fc9bSTony Han			#size-cells = <1>;
254d6a0fc9bSTony Han			ranges = <0 0x00600000 0x2400>;
255d6a0fc9bSTony Han		};
256d6a0fc9bSTony Han
257d6a0fc9bSTony Han		nfc_io: nfc-io@10000000 {
258d6a0fc9bSTony Han			compatible = "atmel,sama5d3-nfc-io", "syscon";
259d6a0fc9bSTony Han			reg = <0x10000000 0x8000000>;
260d6a0fc9bSTony Han		};
261d6a0fc9bSTony Han
262d6a0fc9bSTony Han		ebi: ebi@40000000 {
263d6a0fc9bSTony Han			compatible = "atmel,sama5d3-ebi";
264d6a0fc9bSTony Han			#address-cells = <2>;
265d6a0fc9bSTony Han			#size-cells = <1>;
266d6a0fc9bSTony Han			atmel,smc = <&hsmc>;
267d6a0fc9bSTony Han			reg = <0x40000000 0x20000000>;
268d6a0fc9bSTony Han			ranges = <0x0 0x0 0x40000000 0x8000000
269d6a0fc9bSTony Han				  0x1 0x0 0x48000000 0x8000000
270d6a0fc9bSTony Han				  0x2 0x0 0x50000000 0x8000000
271d6a0fc9bSTony Han				  0x3 0x0 0x58000000 0x8000000>;
272d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_CORE PMC_MCK1>;
273d6a0fc9bSTony Han			status = "disabled";
274d6a0fc9bSTony Han
275d6a0fc9bSTony Han			nand_controller: nand-controller {
276d6a0fc9bSTony Han				compatible = "atmel,sama5d3-nand-controller";
277d6a0fc9bSTony Han				atmel,nfc-sram = <&nfc_sram>;
278d6a0fc9bSTony Han				atmel,nfc-io = <&nfc_io>;
279d6a0fc9bSTony Han				ecc-engine = <&pmecc>;
280d6a0fc9bSTony Han				#address-cells = <2>;
281d6a0fc9bSTony Han				#size-cells = <1>;
282d6a0fc9bSTony Han				ranges;
283d6a0fc9bSTony Han				status = "disabled";
284d6a0fc9bSTony Han			};
285d6a0fc9bSTony Han		};
286d6a0fc9bSTony Han
287d6a0fc9bSTony Han		securam: sram@e0000000 {
288d6a0fc9bSTony Han			compatible = "microchip,sama7g5-securam", "atmel,sama5d2-securam", "mmio-sram";
289d6a0fc9bSTony Han			reg = <0xe0000000 0x4000>;
290d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 18>;
291d6a0fc9bSTony Han			#address-cells = <1>;
292d6a0fc9bSTony Han			#size-cells = <1>;
293d6a0fc9bSTony Han			ranges = <0 0xe0000000 0x4000>;
294d6a0fc9bSTony Han			no-memory-wc;
295d6a0fc9bSTony Han			status = "disabled";
296d6a0fc9bSTony Han			secure-status = "okay";
297d6a0fc9bSTony Han		};
298d6a0fc9bSTony Han
299d6a0fc9bSTony Han		secumod: secumod@e0004000 {
300d6a0fc9bSTony Han			compatible = "microchip,sama7g5-secumod", "atmel,sama5d2-secumod", "syscon";
301d6a0fc9bSTony Han			reg = <0xe0004000 0x4000>;
302d6a0fc9bSTony Han			gpio-controller;
303d6a0fc9bSTony Han			#gpio-cells = <2>;
304d6a0fc9bSTony Han			status = "disabled";
305d6a0fc9bSTony Han			secure-status = "okay";
306d6a0fc9bSTony Han		};
307d6a0fc9bSTony Han
308d6a0fc9bSTony Han		sfrbu: sfr@e0008000 {
309d6a0fc9bSTony Han			compatible = "microchip,sama7g5-sfrbu", "atmel,sama5d2-sfrbu", "syscon";
310d6a0fc9bSTony Han			reg = <0xe0008000 0x20>;
311d6a0fc9bSTony Han		};
312d6a0fc9bSTony Han
313d6a0fc9bSTony Han		pioA: pinctrl@e0014000 {
314d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pinctrl";
315d6a0fc9bSTony Han			reg = <0xe0014000 0x800>;
316d6a0fc9bSTony Han			interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
317d6a0fc9bSTony Han				<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
318d6a0fc9bSTony Han				<GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
319d6a0fc9bSTony Han				<GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
320d6a0fc9bSTony Han				<GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
321d6a0fc9bSTony Han			interrupt-controller;
322d6a0fc9bSTony Han			#interrupt-cells = <2>;
323d6a0fc9bSTony Han			gpio-controller;
324d6a0fc9bSTony Han			#gpio-cells = <2>;
325d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
326d6a0fc9bSTony Han			status = "disabled";
327d6a0fc9bSTony Han			secure-status = "okay";
328d6a0fc9bSTony Han		};
329d6a0fc9bSTony Han
330d6a0fc9bSTony Han		pmc: pmc@e0018000 {
331d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pmc", "syscon";
332d6a0fc9bSTony Han			reg = <0xe0018000 0x200>;
333d6a0fc9bSTony Han			interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
334d6a0fc9bSTony Han			#clock-cells = <2>;
335d6a0fc9bSTony Han			clocks = <&clk32k 1>, <&clk32k 0>, <&main_xtal>;
336d6a0fc9bSTony Han			clock-names = "td_slck", "md_slck", "main_xtal";
337d6a0fc9bSTony Han			status = "disabled";
338d6a0fc9bSTony Han			secure-status = "okay";
339d6a0fc9bSTony Han		};
340d6a0fc9bSTony Han
341d6a0fc9bSTony Han		reset_controller: reset-controller@e001d000 {
342d6a0fc9bSTony Han			compatible = "microchip,sama7g5-rstc";
343d6a0fc9bSTony Han			reg = <0xe001d000 0xc>, <0xe001d0e4 0x4>;
344d6a0fc9bSTony Han			#reset-cells = <1>;
345d6a0fc9bSTony Han			clocks = <&clk32k 0>;
346d6a0fc9bSTony Han			status = "disabled";
347d6a0fc9bSTony Han			secure-status = "okay";
348d6a0fc9bSTony Han		};
349d6a0fc9bSTony Han
350d6a0fc9bSTony Han		shdwc: shdwc@e001d010 {
351d6a0fc9bSTony Han			compatible = "microchip,sama7g5-shdwc", "syscon";
352d6a0fc9bSTony Han			reg = <0xe001d010 0x10>;
353d6a0fc9bSTony Han			clocks = <&clk32k 0>;
354d6a0fc9bSTony Han			#address-cells = <1>;
355d6a0fc9bSTony Han			#size-cells = <0>;
356d6a0fc9bSTony Han			atmel,wakeup-rtc-timer;
357d6a0fc9bSTony Han			atmel,wakeup-rtt-timer;
358d6a0fc9bSTony Han			status = "disabled";
359d6a0fc9bSTony Han			secure-status = "okay";
360d6a0fc9bSTony Han		};
361d6a0fc9bSTony Han
362d6a0fc9bSTony Han		rtt: rtc@e001d020 {
363d6a0fc9bSTony Han			compatible = "microchip,sama7g5-rtt", "microchip,sam9x60-rtt", "atmel,at91sam9260-rtt";
364d6a0fc9bSTony Han			reg = <0xe001d020 0x30>;
365d6a0fc9bSTony Han			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
366d6a0fc9bSTony Han			clocks = <&clk32k 0>;
367d6a0fc9bSTony Han		};
368d6a0fc9bSTony Han
369d6a0fc9bSTony Han		clk32k: clock-controller@e001d050 {
370d6a0fc9bSTony Han			compatible = "microchip,sama7g5-sckc", "microchip,sam9x60-sckc";
371d6a0fc9bSTony Han			reg = <0xe001d050 0x4>;
372d6a0fc9bSTony Han			clocks = <&slow_xtal>;
373d6a0fc9bSTony Han			#clock-cells = <1>;
374d6a0fc9bSTony Han			status = "disabled";
375d6a0fc9bSTony Han			secure-status = "okay";
376d6a0fc9bSTony Han		};
377d6a0fc9bSTony Han
378d6a0fc9bSTony Han		gpbr: gpbr@e001d060 {
379d6a0fc9bSTony Han			compatible = "microchip,sama7g5-gpbr", "syscon";
380d6a0fc9bSTony Han			reg = <0xe001d060 0x48>;
381d6a0fc9bSTony Han		};
382d6a0fc9bSTony Han
383d6a0fc9bSTony Han		rtc: rtc@e001d0a8 {
384d6a0fc9bSTony Han			compatible = "microchip,sama7g5-rtc", "microchip,sam9x60-rtc";
385d6a0fc9bSTony Han			reg = <0xe001d0a8 0x30>;
386d6a0fc9bSTony Han			interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
387d6a0fc9bSTony Han			clocks = <&clk32k 1>;
388d6a0fc9bSTony Han			status = "disabled";
389d6a0fc9bSTony Han			secure-status = "okay";
390d6a0fc9bSTony Han		};
391d6a0fc9bSTony Han
392d6a0fc9bSTony Han		ps_wdt: watchdog@e001d180 {
393d6a0fc9bSTony Han			compatible = "microchip,sama7g5-wdt";
394d6a0fc9bSTony Han			reg = <0xe001d180 0x24>;
395d6a0fc9bSTony Han			interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
396d6a0fc9bSTony Han			clocks = <&clk32k 0>;
397d6a0fc9bSTony Han			status = "disabled";
398d6a0fc9bSTony Han			secure-status = "okay";
399d6a0fc9bSTony Han		};
400d6a0fc9bSTony Han
401d6a0fc9bSTony Han		chipid@e0020000 {
402d6a0fc9bSTony Han			compatible = "microchip,sama7g5-chipid";
403d6a0fc9bSTony Han			reg = <0xe0020000 0x8>;
404d6a0fc9bSTony Han		};
405d6a0fc9bSTony Han
406d6a0fc9bSTony Han		tcb1: timer@e0800000 {
407d6a0fc9bSTony Han			compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon";
408d6a0fc9bSTony Han			#address-cells = <1>;
409d6a0fc9bSTony Han			#size-cells = <0>;
410d6a0fc9bSTony Han			reg = <0xe0800000 0x100>;
411d6a0fc9bSTony Han			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
412d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 91>, <&pmc PMC_TYPE_PERIPHERAL 92>, <&pmc PMC_TYPE_PERIPHERAL 93>, <&clk32k 1>;
413d6a0fc9bSTony Han			clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
414d6a0fc9bSTony Han			status = "disabled";
415d6a0fc9bSTony Han			secure-status = "okay";
416d6a0fc9bSTony Han		};
417d6a0fc9bSTony Han
418d6a0fc9bSTony Han		hsmc: hsmc@e0808000 {
419d6a0fc9bSTony Han			compatible = "atmel,sama5d2-smc", "syscon", "simple-mfd";
420d6a0fc9bSTony Han			reg = <0xe0808000 0x1000>;
421d6a0fc9bSTony Han			interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
422d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
423d6a0fc9bSTony Han			#address-cells = <1>;
424d6a0fc9bSTony Han			#size-cells = <1>;
425d6a0fc9bSTony Han			ranges;
426d6a0fc9bSTony Han
427d6a0fc9bSTony Han			pmecc: ecc-engine@e0808070 {
428d6a0fc9bSTony Han				compatible = "atmel,sama5d2-pmecc";
429d6a0fc9bSTony Han				reg = <0xe0808070 0x490>,
430d6a0fc9bSTony Han				      <0xe0808500 0x200>;
431d6a0fc9bSTony Han			};
432d6a0fc9bSTony Han		};
433d6a0fc9bSTony Han
434d6a0fc9bSTony Han		qspi0: spi@e080c000 {
435d6a0fc9bSTony Han			compatible = "microchip,sama7g5-ospi";
436d6a0fc9bSTony Han			reg = <0xe080c000 0x400>, <0x20000000 0x10000000>;
437d6a0fc9bSTony Han			reg-names = "qspi_base", "qspi_mmap";
438d6a0fc9bSTony Han			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
439d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(41)>,
440d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(40)>;
441d6a0fc9bSTony Han			dma-names = "tx", "rx";
442d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 78>, <&pmc PMC_TYPE_GCK 78>;
443d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
444*932a3e11STony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 78>;
445*932a3e11STony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
446*932a3e11STony Han			assigned-clock-rates = <133000000>;
447d6a0fc9bSTony Han			#address-cells = <1>;
448d6a0fc9bSTony Han			#size-cells = <0>;
449d6a0fc9bSTony Han			status = "disabled";
450d6a0fc9bSTony Han		};
451d6a0fc9bSTony Han
452d6a0fc9bSTony Han		qspi1: spi@e0810000 {
453d6a0fc9bSTony Han			compatible = "microchip,sama7g5-qspi";
454d6a0fc9bSTony Han			reg = <0xe0810000 0x400>, <0x30000000 0x10000000>;
455d6a0fc9bSTony Han			reg-names = "qspi_base", "qspi_mmap";
456d6a0fc9bSTony Han			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
457d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(43)>,
458d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(42)>;
459d6a0fc9bSTony Han			dma-names = "tx", "rx";
460d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 79>, <&pmc PMC_TYPE_GCK 79>;
461d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
462d6a0fc9bSTony Han			#address-cells = <1>;
463d6a0fc9bSTony Han			#size-cells = <0>;
464d6a0fc9bSTony Han			status = "disabled";
465d6a0fc9bSTony Han		};
466d6a0fc9bSTony Han
467d6a0fc9bSTony Han		can0: can@e0828000 {
468d6a0fc9bSTony Han			compatible = "bosch,m_can";
469d6a0fc9bSTony Han			reg = <0xe0828000 0x100>, <0x100000 0x7800>;
470d6a0fc9bSTony Han			reg-names = "m_can", "message_ram";
471d6a0fc9bSTony Han			interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH
472d6a0fc9bSTony Han				      GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
473d6a0fc9bSTony Han			interrupt-names = "int0", "int1";
474d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 61>, <&pmc PMC_TYPE_GCK 61>;
475d6a0fc9bSTony Han			clock-names = "hclk", "cclk";
476d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 61>;
477d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
478d6a0fc9bSTony Han			assigned-clock-rates = <40000000>;
479d6a0fc9bSTony Han			bosch,mram-cfg = <0x3400 0 0 64 0 0 32 32>;
480d6a0fc9bSTony Han			status = "disabled";
481d6a0fc9bSTony Han		};
482d6a0fc9bSTony Han
483d6a0fc9bSTony Han		can1: can@e082c000 {
484d6a0fc9bSTony Han			compatible = "bosch,m_can";
485d6a0fc9bSTony Han			reg = <0xe082c000 0x100>, <0x100000 0xbc00>;
486d6a0fc9bSTony Han			reg-names = "m_can", "message_ram";
487d6a0fc9bSTony Han			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH
488d6a0fc9bSTony Han				      GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
489d6a0fc9bSTony Han			interrupt-names = "int0", "int1";
490d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 62>, <&pmc PMC_TYPE_GCK 62>;
491d6a0fc9bSTony Han			clock-names = "hclk", "cclk";
492d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 62>;
493d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
494d6a0fc9bSTony Han			assigned-clock-rates = <40000000>;
495d6a0fc9bSTony Han			bosch,mram-cfg = <0x7800 0 0 64 0 0 32 32>;
496d6a0fc9bSTony Han			status = "disabled";
497d6a0fc9bSTony Han		};
498d6a0fc9bSTony Han
499d6a0fc9bSTony Han		can2: can@e0830000 {
500d6a0fc9bSTony Han			compatible = "bosch,m_can";
501d6a0fc9bSTony Han			reg = <0xe0830000 0x100>, <0x100000 0x10000>;
502d6a0fc9bSTony Han			reg-names = "m_can", "message_ram";
503d6a0fc9bSTony Han			interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH
504d6a0fc9bSTony Han				      GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
505d6a0fc9bSTony Han			interrupt-names = "int0", "int1";
506d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 63>, <&pmc PMC_TYPE_GCK 63>;
507d6a0fc9bSTony Han			clock-names = "hclk", "cclk";
508d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 63>;
509d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
510d6a0fc9bSTony Han			assigned-clock-rates = <40000000>;
511d6a0fc9bSTony Han			bosch,mram-cfg = <0xbc00 0 0 64 0 0 32 32>;
512d6a0fc9bSTony Han			status = "disabled";
513d6a0fc9bSTony Han		};
514d6a0fc9bSTony Han
515d6a0fc9bSTony Han		can3: can@e0834000 {
516d6a0fc9bSTony Han			compatible = "bosch,m_can";
517d6a0fc9bSTony Han			reg = <0xe0834000 0x100>, <0x110000 0x4400>;
518d6a0fc9bSTony Han			reg-names = "m_can", "message_ram";
519d6a0fc9bSTony Han			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH
520d6a0fc9bSTony Han				      GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
521d6a0fc9bSTony Han			interrupt-names = "int0", "int1";
522d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 64>, <&pmc PMC_TYPE_GCK 64>;
523d6a0fc9bSTony Han			clock-names = "hclk", "cclk";
524d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 64>;
525d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
526d6a0fc9bSTony Han			assigned-clock-rates = <40000000>;
527d6a0fc9bSTony Han			bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>;
528d6a0fc9bSTony Han			status = "disabled";
529d6a0fc9bSTony Han		};
530d6a0fc9bSTony Han
531d6a0fc9bSTony Han		can4: can@e0838000 {
532d6a0fc9bSTony Han			compatible = "bosch,m_can";
533d6a0fc9bSTony Han			reg = <0xe0838000 0x100>, <0x110000 0x8800>;
534d6a0fc9bSTony Han			reg-names = "m_can", "message_ram";
535d6a0fc9bSTony Han			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH
536d6a0fc9bSTony Han				      GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
537d6a0fc9bSTony Han			interrupt-names = "int0", "int1";
538d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 65>, <&pmc PMC_TYPE_GCK 65>;
539d6a0fc9bSTony Han			clock-names = "hclk", "cclk";
540d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 65>;
541d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
542d6a0fc9bSTony Han			assigned-clock-rates = <40000000>;
543d6a0fc9bSTony Han			bosch,mram-cfg = <0x4400 0 0 64 0 0 32 32>;
544d6a0fc9bSTony Han			status = "disabled";
545d6a0fc9bSTony Han		};
546d6a0fc9bSTony Han
547d6a0fc9bSTony Han		can5: can@e083c000 {
548d6a0fc9bSTony Han			compatible = "bosch,m_can";
549d6a0fc9bSTony Han			reg = <0xe083c000 0x100>, <0x110000 0xcc00>;
550d6a0fc9bSTony Han			reg-names = "m_can", "message_ram";
551d6a0fc9bSTony Han			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH
552d6a0fc9bSTony Han				      GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
553d6a0fc9bSTony Han			interrupt-names = "int0", "int1";
554d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 66>, <&pmc PMC_TYPE_GCK 66>;
555d6a0fc9bSTony Han			clock-names = "hclk", "cclk";
556d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 66>;
557d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
558d6a0fc9bSTony Han			assigned-clock-rates = <40000000>;
559d6a0fc9bSTony Han			bosch,mram-cfg = <0x8800 0 0 64 0 0 32 32>;
560d6a0fc9bSTony Han			status = "disabled";
561d6a0fc9bSTony Han		};
562d6a0fc9bSTony Han
563d6a0fc9bSTony Han		adc: adc@e1000000 {
564d6a0fc9bSTony Han			compatible = "microchip,sama7g5-adc";
565d6a0fc9bSTony Han			reg = <0xe1000000 0x200>;
566d6a0fc9bSTony Han			interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
567d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_GCK 26>;
568d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 26>;
569d6a0fc9bSTony Han			assigned-clock-rates = <100000000>;
570d6a0fc9bSTony Han			clock-names = "adc_clk";
571d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(0)>;
572d6a0fc9bSTony Han			dma-names = "rx";
573d6a0fc9bSTony Han			atmel,min-sample-rate-hz = <200000>;
574d6a0fc9bSTony Han			atmel,max-sample-rate-hz = <20000000>;
575d6a0fc9bSTony Han			atmel,startup-time-ms = <4>;
576d6a0fc9bSTony Han			#io-channel-cells = <1>;
577d6a0fc9bSTony Han			nvmem-cells = <&temperature_calib>;
578d6a0fc9bSTony Han			nvmem-cell-names = "temperature_calib";
579d6a0fc9bSTony Han			status = "disabled";
580d6a0fc9bSTony Han		};
581d6a0fc9bSTony Han
582d6a0fc9bSTony Han		sdmmc0: mmc@e1204000 {
583d6a0fc9bSTony Han			compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci";
584d6a0fc9bSTony Han			reg = <0xe1204000 0x4000>;
585d6a0fc9bSTony Han			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
586d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 80>, <&pmc PMC_TYPE_GCK 80>;
587d6a0fc9bSTony Han			clock-names = "hclock", "multclk";
588d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
589d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 80>;
590d6a0fc9bSTony Han			assigned-clock-rates = <200000000>;
591d6a0fc9bSTony Han			microchip,sdcal-inverted;
592d6a0fc9bSTony Han			status = "disabled";
593d6a0fc9bSTony Han		};
594d6a0fc9bSTony Han
595d6a0fc9bSTony Han		sdmmc1: mmc@e1208000 {
596d6a0fc9bSTony Han			compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci";
597d6a0fc9bSTony Han			reg = <0xe1208000 0x4000>;
598d6a0fc9bSTony Han			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
599d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 81>, <&pmc PMC_TYPE_GCK 81>;
600d6a0fc9bSTony Han			clock-names = "hclock", "multclk";
601d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
602d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 81>;
603d6a0fc9bSTony Han			assigned-clock-rates = <200000000>;
604d6a0fc9bSTony Han			microchip,sdcal-inverted;
605d6a0fc9bSTony Han			status = "disabled";
606d6a0fc9bSTony Han		};
607d6a0fc9bSTony Han
608d6a0fc9bSTony Han		sdmmc2: mmc@e120c000 {
609d6a0fc9bSTony Han			compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci";
610d6a0fc9bSTony Han			reg = <0xe120c000 0x4000>;
611d6a0fc9bSTony Han			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
612d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 82>, <&pmc PMC_TYPE_GCK 82>;
613d6a0fc9bSTony Han			clock-names = "hclock", "multclk";
614d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
615d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 82>;
616d6a0fc9bSTony Han			assigned-clock-rates = <200000000>;
617d6a0fc9bSTony Han			microchip,sdcal-inverted;
618d6a0fc9bSTony Han			status = "disabled";
619d6a0fc9bSTony Han		};
620d6a0fc9bSTony Han
621d6a0fc9bSTony Han		csi2host: csi2host@e1400000 {
622d6a0fc9bSTony Han			compatible = "snps,dw-csi";
623d6a0fc9bSTony Han			#address-cells = <1>;
624d6a0fc9bSTony Han			#size-cells = <0>;
625d6a0fc9bSTony Han			reg = <0xe1400000 0x7FF>;
626d6a0fc9bSTony Han			interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
627d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 33>, <&pmc PMC_TYPE_GCK 33>;
628d6a0fc9bSTony Han			clock-names = "perclk", "phyclk";
629d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 33>;
630d6a0fc9bSTony Han			assigned-clock-rates = <26600000>;
631d6a0fc9bSTony Han			snps,output-type = <1>;
632d6a0fc9bSTony Han			phys = <&csi_dphy>;
633d6a0fc9bSTony Han			status = "disabled";
634d6a0fc9bSTony Han
635d6a0fc9bSTony Han			port@1 {
636d6a0fc9bSTony Han				reg = <1>;
637d6a0fc9bSTony Han				csi2host_in: endpoint {
638d6a0fc9bSTony Han				};
639d6a0fc9bSTony Han			};
640d6a0fc9bSTony Han
641d6a0fc9bSTony Han			port@2 {
642d6a0fc9bSTony Han				reg = <2>;
643d6a0fc9bSTony Han				csi2host_out: endpoint {
644d6a0fc9bSTony Han				};
645d6a0fc9bSTony Han			};
646d6a0fc9bSTony Han		};
647d6a0fc9bSTony Han
648d6a0fc9bSTony Han		csi_dphy: dphy@e1400040 {
649d6a0fc9bSTony Han			compatible = "snps,dw-dphy-rx";
650d6a0fc9bSTony Han			#phy-cells = <0>;
651d6a0fc9bSTony Han			bus-width = <8>;
652d6a0fc9bSTony Han			snps,dphy-frequency = <900000>;
653d6a0fc9bSTony Han			snps,phy_type = <0>;
654d6a0fc9bSTony Han			reg = <0xe1400040 0x20>;
655d6a0fc9bSTony Han			status = "disabled";
656d6a0fc9bSTony Han		};
657d6a0fc9bSTony Han
658d6a0fc9bSTony Han		csi2dc: csi2dc@e1404000 {
659d6a0fc9bSTony Han			compatible = "microchip,sama7g5-csi2dc";
660d6a0fc9bSTony Han			reg = <0xe1404000 0x500>;
661d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 34>, <&xisc>;
662d6a0fc9bSTony Han			clock-names = "pclk", "scck";
663d6a0fc9bSTony Han			assigned-clocks = <&xisc>;
664d6a0fc9bSTony Han			assigned-clock-rates = <266000000>;
665d6a0fc9bSTony Han			status = "disabled";
666d6a0fc9bSTony Han
667d6a0fc9bSTony Han			ports {
668d6a0fc9bSTony Han				#address-cells = <1>;
669d6a0fc9bSTony Han				#size-cells = <0>;
670d6a0fc9bSTony Han				port@0 {
671d6a0fc9bSTony Han					reg = <0>;
672d6a0fc9bSTony Han					csi2dc_in: endpoint {
673d6a0fc9bSTony Han					};
674d6a0fc9bSTony Han				};
675d6a0fc9bSTony Han
676d6a0fc9bSTony Han				port@1 {
677d6a0fc9bSTony Han					reg = <1>;
678d6a0fc9bSTony Han					csi2dc_out: endpoint {
679d6a0fc9bSTony Han						bus-width = <14>;
680d6a0fc9bSTony Han						hsync-active = <1>;
681d6a0fc9bSTony Han						vsync-active = <1>;
682d6a0fc9bSTony Han						remote-endpoint = <&xisc_in>;
683d6a0fc9bSTony Han					};
684d6a0fc9bSTony Han				};
685d6a0fc9bSTony Han			};
686d6a0fc9bSTony Han		};
687d6a0fc9bSTony Han
688d6a0fc9bSTony Han		xisc: xisc@e1408000 {
689d6a0fc9bSTony Han			compatible = "microchip,sama7g5-isc";
690d6a0fc9bSTony Han			reg = <0xe1408000 0x2000>;
691d6a0fc9bSTony Han			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
692d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 56>;
693d6a0fc9bSTony Han			clock-names = "hclock";
694d6a0fc9bSTony Han			#clock-cells = <0>;
695d6a0fc9bSTony Han			clock-output-names = "isc-mck";
696d6a0fc9bSTony Han			status = "disabled";
697d6a0fc9bSTony Han
698d6a0fc9bSTony Han			port {
699d6a0fc9bSTony Han				xisc_in: endpoint {
700d6a0fc9bSTony Han					bus-type = <5>; /* Parallel */
701d6a0fc9bSTony Han					bus-width = <14>;
702d6a0fc9bSTony Han					hsync-active = <1>;
703d6a0fc9bSTony Han					vsync-active = <1>;
704d6a0fc9bSTony Han					remote-endpoint = <&csi2dc_out>;
705d6a0fc9bSTony Han				};
706d6a0fc9bSTony Han			};
707d6a0fc9bSTony Han		};
708d6a0fc9bSTony Han
709d6a0fc9bSTony Han		pwm: pwm@e1604000 {
710d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pwm", "atmel,sama5d2-pwm";
711d6a0fc9bSTony Han			reg = <0xe1604000 0x4000>;
712d6a0fc9bSTony Han			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
713d6a0fc9bSTony Han			#pwm-cells = <3>;
714d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 77>;
715d6a0fc9bSTony Han			status = "disabled";
716d6a0fc9bSTony Han		};
717d6a0fc9bSTony Han
718d6a0fc9bSTony Han		pdmc0: sound@e1608000 {
719d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pdmc";
720d6a0fc9bSTony Han			reg = <0xe1608000 0x1000>;
721d6a0fc9bSTony Han			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
722d6a0fc9bSTony Han			#sound-dai-cells = <0>;
723d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(37)>;
724d6a0fc9bSTony Han			dma-names = "rx";
725d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 68>, <&pmc PMC_TYPE_GCK 68>;
726d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
727d6a0fc9bSTony Han			sound-name-prefix = "PDMC0";
728d6a0fc9bSTony Han			status = "disabled";
729d6a0fc9bSTony Han		};
730d6a0fc9bSTony Han
731d6a0fc9bSTony Han		pdmc1: sound@e160c000 {
732d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pdmc";
733d6a0fc9bSTony Han			reg = <0xe160c000 0x1000>;
734d6a0fc9bSTony Han			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
735d6a0fc9bSTony Han			#sound-dai-cells = <0>;
736d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(38)>;
737d6a0fc9bSTony Han			dma-names = "rx";
738d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 69>, <&pmc PMC_TYPE_GCK 69>;
739d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
740d6a0fc9bSTony Han			sound-name-prefix = "PDMC1";
741d6a0fc9bSTony Han			status = "disabled";
742d6a0fc9bSTony Han		};
743d6a0fc9bSTony Han
744d6a0fc9bSTony Han		asrc: sound@e1610000 {
745d6a0fc9bSTony Han			compatible = "microchip,sama7g5-asrc";
746d6a0fc9bSTony Han			reg = <0xe1610000 0x1000>;
747d6a0fc9bSTony Han			interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
748d6a0fc9bSTony Han			#sound-dai-cells = <1>;
749d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(55)>,
750d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(56)>,
751d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(57)>,
752d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(58)>,
753d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(59)>,
754d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(60)>,
755d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(61)>,
756d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(62)>;
757d6a0fc9bSTony Han			dma-names = "rx0", "tx0", "rx1", "tx1",
758d6a0fc9bSTony Han				    "rx2", "tx2", "rx3", "tx3";
759d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 30>, <&pmc PMC_TYPE_GCK 30>;
760d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
761d6a0fc9bSTony Han			microchip,triggers = <&i2s0>, <&i2s1>, <&pdmc0>, <&pdmc1>,
762d6a0fc9bSTony Han					     <&ssc0>, <&ssc1>, <&spdiftx>, <&spdifrx>;
763d6a0fc9bSTony Han			microchip,trigger-indexes = <1>, <2>, <3>, <4>, <5>, <8>, <9>, <10>;
764d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 30>;
765d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_AUDIOPMCPLL>;
766d6a0fc9bSTony Han			status = "disabled";
767d6a0fc9bSTony Han		};
768d6a0fc9bSTony Han
769d6a0fc9bSTony Han		spdifrx: spdifrx@e1614000 {
770d6a0fc9bSTony Han			#sound-dai-cells = <0>;
771d6a0fc9bSTony Han			compatible = "microchip,sama7g5-spdifrx";
772d6a0fc9bSTony Han			reg = <0xe1614000 0x4000>;
773d6a0fc9bSTony Han			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
774d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(49)>;
775d6a0fc9bSTony Han			dma-names = "rx";
776d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 84>, <&pmc PMC_TYPE_GCK 84>;
777d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
778d6a0fc9bSTony Han			status = "disabled";
779d6a0fc9bSTony Han			sound-name-prefix = "SPDIFRX0";
780d6a0fc9bSTony Han		};
781d6a0fc9bSTony Han
782d6a0fc9bSTony Han		spdiftx: spdiftx@e1618000 {
783d6a0fc9bSTony Han			#sound-dai-cells = <0>;
784d6a0fc9bSTony Han			compatible = "microchip,sama7g5-spdiftx";
785d6a0fc9bSTony Han			reg = <0xe1618000 0x4000>;
786d6a0fc9bSTony Han			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
787d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(50)>;
788d6a0fc9bSTony Han			dma-names = "tx";
789d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 85>, <&pmc PMC_TYPE_GCK 85>;
790d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
791d6a0fc9bSTony Han			sound-name-prefix = "SPDIFTX0";
792d6a0fc9bSTony Han		};
793d6a0fc9bSTony Han
794d6a0fc9bSTony Han		i2s0: i2s@e161c000 {
795d6a0fc9bSTony Han			compatible = "microchip,sama7g5-i2smcc";
796d6a0fc9bSTony Han			#sound-dai-cells = <0>;
797d6a0fc9bSTony Han			reg = <0xe161c000 0x4000>;
798d6a0fc9bSTony Han			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
799d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(34)>, <&dma0 AT91_XDMAC_DT_PERID(33)>;
800d6a0fc9bSTony Han			dma-names = "tx", "rx";
801d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 57>, <&pmc PMC_TYPE_GCK 57>;
802d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
803d6a0fc9bSTony Han			sound-name-prefix = "I2SMCC0";
804d6a0fc9bSTony Han			status = "disabled";
805d6a0fc9bSTony Han		};
806d6a0fc9bSTony Han
807d6a0fc9bSTony Han		i2s1: i2s@e1620000 {
808d6a0fc9bSTony Han			compatible = "microchip,sama7g5-i2smcc";
809d6a0fc9bSTony Han			#sound-dai-cells = <0>;
810d6a0fc9bSTony Han			reg = <0xe1620000 0x4000>;
811d6a0fc9bSTony Han			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
812d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(36)>, <&dma0 AT91_XDMAC_DT_PERID(35)>;
813d6a0fc9bSTony Han			dma-names = "tx", "rx";
814d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 58>, <&pmc PMC_TYPE_GCK 58>;
815d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
816d6a0fc9bSTony Han			sound-name-prefix = "I2SMCC1";
817d6a0fc9bSTony Han			status = "disabled";
818d6a0fc9bSTony Han		};
819d6a0fc9bSTony Han
820d6a0fc9bSTony Han		sfr: sfr@e1624000 {
821d6a0fc9bSTony Han			compatible = "microchip,sama7g5-sfr", "syscon";
822d6a0fc9bSTony Han			reg = <0xe1624000 0x4000>;
823d6a0fc9bSTony Han		};
824d6a0fc9bSTony Han
825d6a0fc9bSTony Han		eic: interrupt-controller@e1628000 {
826d6a0fc9bSTony Han			compatible = "microchip,sama7g5-eic";
827d6a0fc9bSTony Han			reg = <0xe1628000 0xec>;
828d6a0fc9bSTony Han			interrupt-parent = <&gic>;
829d6a0fc9bSTony Han			interrupt-controller;
830d6a0fc9bSTony Han			#interrupt-cells = <2>;
831d6a0fc9bSTony Han			interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
832d6a0fc9bSTony Han				     <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
833d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 37>;
834d6a0fc9bSTony Han			clock-names = "pclk";
835d6a0fc9bSTony Han			status = "disabled";
836d6a0fc9bSTony Han		};
837d6a0fc9bSTony Han
838d6a0fc9bSTony Han		pit64b0: timer@e1800000 {
839d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b";
840d6a0fc9bSTony Han			reg = <0xe1800000 0x4000>;
841d6a0fc9bSTony Han			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
842d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 70>, <&pmc PMC_TYPE_GCK 70>;
843d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
844d6a0fc9bSTony Han		};
845d6a0fc9bSTony Han
846d6a0fc9bSTony Han		pit64b1: timer@e1804000 {
847d6a0fc9bSTony Han			compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b";
848d6a0fc9bSTony Han			reg = <0xe1804000 0x4000>;
849d6a0fc9bSTony Han			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
850d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 71>, <&pmc PMC_TYPE_GCK 71>;
851d6a0fc9bSTony Han			clock-names = "pclk", "gclk";
852d6a0fc9bSTony Han		};
853d6a0fc9bSTony Han
854d6a0fc9bSTony Han		ssc0: sound@e180c000 {
855d6a0fc9bSTony Han			compatible = "atmel,at91sam9g45-ssc";
856d6a0fc9bSTony Han			reg = <0xe180c000 0x1000>;
857d6a0fc9bSTony Han			#sound-dai-cells = <0>;
858d6a0fc9bSTony Han			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
859d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(44)>,
860d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(45)>;
861d6a0fc9bSTony Han			dma-names = "rx", "tx";
862d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 86>;
863d6a0fc9bSTony Han			clock-names = "pclk";
864d6a0fc9bSTony Han			sound-name-prefix = "SSC0";
865d6a0fc9bSTony Han			status = "disabled";
866d6a0fc9bSTony Han		};
867d6a0fc9bSTony Han
868d6a0fc9bSTony Han		aes: crypto@e1810000 {
869d6a0fc9bSTony Han			compatible = "atmel,at91sam9g46-aes";
870d6a0fc9bSTony Han			reg = <0xe1810000 0x100>;
871d6a0fc9bSTony Han			interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
872d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 27>;
873d6a0fc9bSTony Han			clock-names = "aes_clk";
874d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(1)>,
875d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(2)>;
876d6a0fc9bSTony Han			dma-names = "tx", "rx";
877d6a0fc9bSTony Han			status = "okay";
878d6a0fc9bSTony Han		};
879d6a0fc9bSTony Han
880d6a0fc9bSTony Han		sha: crypto@e1814000 {
881d6a0fc9bSTony Han			compatible = "atmel,at91sam9g46-sha";
882d6a0fc9bSTony Han			reg = <0xe1814000 0x100>;
883d6a0fc9bSTony Han			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
884d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 83>;
885d6a0fc9bSTony Han			clock-names = "sha_clk";
886d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(48)>;
887d6a0fc9bSTony Han			dma-names = "tx";
888d6a0fc9bSTony Han			status = "okay";
889d6a0fc9bSTony Han		};
890d6a0fc9bSTony Han
891d6a0fc9bSTony Han		flx0: flexcom@e1818000 {
892d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
893d6a0fc9bSTony Han			reg = <0xe1818000 0x200>;
894d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 38>;
895d6a0fc9bSTony Han			#address-cells = <1>;
896d6a0fc9bSTony Han			#size-cells = <1>;
897d6a0fc9bSTony Han			ranges = <0x0 0xe1818000 0x800>;
898d6a0fc9bSTony Han			status = "disabled";
899d6a0fc9bSTony Han
900d6a0fc9bSTony Han			uart0: serial@200 {
901d6a0fc9bSTony Han				compatible = "atmel,at91sam9260-usart";
902d6a0fc9bSTony Han				reg = <0x200 0x200>;
903d6a0fc9bSTony Han				interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
904d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 38>;
905d6a0fc9bSTony Han				clock-names = "usart";
906d6a0fc9bSTony Han				dmas = <&dma1 AT91_XDMAC_DT_PERID(6)>,
907d6a0fc9bSTony Han					<&dma1 AT91_XDMAC_DT_PERID(5)>;
908d6a0fc9bSTony Han				dma-names = "tx", "rx";
909d6a0fc9bSTony Han				atmel,use-dma-rx;
910d6a0fc9bSTony Han				atmel,use-dma-tx;
911d6a0fc9bSTony Han				status = "disabled";
912d6a0fc9bSTony Han			};
913d6a0fc9bSTony Han		};
914d6a0fc9bSTony Han
915d6a0fc9bSTony Han		flx1: flexcom@e181c000 {
916d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
917d6a0fc9bSTony Han			reg = <0xe181c000 0x200>;
918d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 39>;
919d6a0fc9bSTony Han			#address-cells = <1>;
920d6a0fc9bSTony Han			#size-cells = <1>;
921d6a0fc9bSTony Han			ranges = <0x0 0xe181c000 0x800>;
922d6a0fc9bSTony Han			status = "disabled";
923d6a0fc9bSTony Han
924d6a0fc9bSTony Han			i2c1: i2c@600 {
925d6a0fc9bSTony Han				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
926d6a0fc9bSTony Han				reg = <0x600 0x200>;
927d6a0fc9bSTony Han				interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
928d6a0fc9bSTony Han				#address-cells = <1>;
929d6a0fc9bSTony Han				#size-cells = <0>;
930d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 39>;
931d6a0fc9bSTony Han				atmel,fifo-size = <32>;
932d6a0fc9bSTony Han				dmas = <&dma0 AT91_XDMAC_DT_PERID(8)>,
933d6a0fc9bSTony Han					<&dma0 AT91_XDMAC_DT_PERID(7)>;
934d6a0fc9bSTony Han				dma-names = "tx", "rx";
935d6a0fc9bSTony Han				status = "disabled";
936d6a0fc9bSTony Han			};
937d6a0fc9bSTony Han		};
938d6a0fc9bSTony Han
939d6a0fc9bSTony Han		flx3: flexcom@e1824000 {
940d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
941d6a0fc9bSTony Han			reg = <0xe1824000 0x200>;
942d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 41>;
943d6a0fc9bSTony Han			#address-cells = <1>;
944d6a0fc9bSTony Han			#size-cells = <1>;
945d6a0fc9bSTony Han			ranges = <0x0 0xe1824000 0x800>;
946d6a0fc9bSTony Han			status = "disabled";
947d6a0fc9bSTony Han
948d6a0fc9bSTony Han			uart3: serial@200 {
949d6a0fc9bSTony Han				compatible = "atmel,at91sam9260-usart";
950d6a0fc9bSTony Han				reg = <0x200 0x200>;
951d6a0fc9bSTony Han				interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
952d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 41>;
953d6a0fc9bSTony Han				clock-names = "usart";
954d6a0fc9bSTony Han				dmas = <&dma1 AT91_XDMAC_DT_PERID(12)>,
955d6a0fc9bSTony Han					<&dma1 AT91_XDMAC_DT_PERID(11)>;
956d6a0fc9bSTony Han				dma-names = "tx", "rx";
957d6a0fc9bSTony Han				atmel,use-dma-rx;
958d6a0fc9bSTony Han				atmel,use-dma-tx;
959d6a0fc9bSTony Han				status = "disabled";
960d6a0fc9bSTony Han			};
961d6a0fc9bSTony Han		};
962d6a0fc9bSTony Han
963d6a0fc9bSTony Han		ssc1: sound@e200c000 {
964d6a0fc9bSTony Han			compatible = "atmel,at91sam9g45-ssc";
965d6a0fc9bSTony Han			reg = <0xe200c000 0x1000>;
966d6a0fc9bSTony Han			#sound-dai-cells = <0>;
967d6a0fc9bSTony Han			interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
968d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(46)>,
969d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(47)>;
970d6a0fc9bSTony Han			dma-names = "rx", "tx";
971d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 87>;
972d6a0fc9bSTony Han			clock-names = "pclk";
973d6a0fc9bSTony Han			sound-name-prefix = "SSC1";
974d6a0fc9bSTony Han			status = "disabled";
975d6a0fc9bSTony Han		};
976d6a0fc9bSTony Han
977d6a0fc9bSTony Han		trng: rng@e2010000 {
978d6a0fc9bSTony Han			compatible = "microchip,sama7g5-trng", "atmel,at91sam9g45-trng";
979d6a0fc9bSTony Han			reg = <0xe2010000 0x100>;
980d6a0fc9bSTony Han			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
981d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 97>;
982d6a0fc9bSTony Han			status = "disabled";
983d6a0fc9bSTony Han			secure-status = "okay";
984d6a0fc9bSTony Han		};
985d6a0fc9bSTony Han
986d6a0fc9bSTony Han		tdes: crypto@e2014000 {
987d6a0fc9bSTony Han			compatible = "atmel,at91sam9g46-tdes";
988d6a0fc9bSTony Han			reg = <0xe2014000 0x100>;
989d6a0fc9bSTony Han			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
990d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 96>;
991d6a0fc9bSTony Han			clock-names = "tdes_clk";
992d6a0fc9bSTony Han			dmas = <&dma0 AT91_XDMAC_DT_PERID(54)>,
993d6a0fc9bSTony Han			       <&dma0 AT91_XDMAC_DT_PERID(53)>;
994d6a0fc9bSTony Han			dma-names = "tx", "rx";
995d6a0fc9bSTony Han			status = "okay";
996d6a0fc9bSTony Han		};
997d6a0fc9bSTony Han
998d6a0fc9bSTony Han		flx4: flexcom@e2018000 {
999d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
1000d6a0fc9bSTony Han			reg = <0xe2018000 0x200>;
1001d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 42>;
1002d6a0fc9bSTony Han			#address-cells = <1>;
1003d6a0fc9bSTony Han			#size-cells = <1>;
1004d6a0fc9bSTony Han			ranges = <0x0 0xe2018000 0x800>;
1005d6a0fc9bSTony Han			status = "disabled";
1006d6a0fc9bSTony Han
1007d6a0fc9bSTony Han			uart4: serial@200 {
1008d6a0fc9bSTony Han				compatible = "atmel,at91sam9260-usart";
1009d6a0fc9bSTony Han				reg = <0x200 0x200>;
1010d6a0fc9bSTony Han				interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
1011d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 42>;
1012d6a0fc9bSTony Han				clock-names = "usart";
1013d6a0fc9bSTony Han				dmas = <&dma1 AT91_XDMAC_DT_PERID(14)>,
1014d6a0fc9bSTony Han					<&dma1 AT91_XDMAC_DT_PERID(13)>;
1015d6a0fc9bSTony Han				dma-names = "tx", "rx";
1016d6a0fc9bSTony Han				atmel,use-dma-rx;
1017d6a0fc9bSTony Han				atmel,use-dma-tx;
1018d6a0fc9bSTony Han				atmel,fifo-size = <16>;
1019d6a0fc9bSTony Han				status = "disabled";
1020d6a0fc9bSTony Han			};
1021d6a0fc9bSTony Han		};
1022d6a0fc9bSTony Han
1023d6a0fc9bSTony Han		flx7: flexcom@e2024000 {
1024d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
1025d6a0fc9bSTony Han			reg = <0xe2024000 0x200>;
1026d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 45>;
1027d6a0fc9bSTony Han			#address-cells = <1>;
1028d6a0fc9bSTony Han			#size-cells = <1>;
1029d6a0fc9bSTony Han			ranges = <0x0 0xe2024000 0x800>;
1030d6a0fc9bSTony Han			status = "disabled";
1031d6a0fc9bSTony Han
1032d6a0fc9bSTony Han			uart7: serial@200 {
1033d6a0fc9bSTony Han				compatible = "atmel,at91sam9260-usart";
1034d6a0fc9bSTony Han				reg = <0x200 0x200>;
1035d6a0fc9bSTony Han				interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
1036d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 45>;
1037d6a0fc9bSTony Han				clock-names = "usart";
1038d6a0fc9bSTony Han				dmas = <&dma1 AT91_XDMAC_DT_PERID(20)>,
1039d6a0fc9bSTony Han					<&dma1 AT91_XDMAC_DT_PERID(19)>;
1040d6a0fc9bSTony Han				dma-names = "tx", "rx";
1041d6a0fc9bSTony Han				atmel,use-dma-rx;
1042d6a0fc9bSTony Han				atmel,use-dma-tx;
1043d6a0fc9bSTony Han				atmel,fifo-size = <16>;
1044d6a0fc9bSTony Han				status = "disabled";
1045d6a0fc9bSTony Han			};
1046d6a0fc9bSTony Han		};
1047d6a0fc9bSTony Han
1048d6a0fc9bSTony Han		gmac0: ethernet@e2800000 {
1049d6a0fc9bSTony Han			compatible = "microchip,sama7g5-gem";
1050d6a0fc9bSTony Han			reg = <0xe2800000 0x1000>;
1051d6a0fc9bSTony Han			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH
1052d6a0fc9bSTony Han				      GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH
1053d6a0fc9bSTony Han				      GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH
1054d6a0fc9bSTony Han				      GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH
1055d6a0fc9bSTony Han				      GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH
1056d6a0fc9bSTony Han				      GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
1057d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_GCK 51>, <&pmc PMC_TYPE_GCK 53>;
1058d6a0fc9bSTony Han			clock-names = "pclk", "hclk", "tx_clk", "tsu_clk";
1059d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 51>;
1060d6a0fc9bSTony Han			assigned-clock-rates = <125000000>;
1061d6a0fc9bSTony Han			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_ETHPLL>;
1062d6a0fc9bSTony Han			status = "disabled";
1063d6a0fc9bSTony Han		};
1064d6a0fc9bSTony Han
1065d6a0fc9bSTony Han		gmac1: ethernet@e2804000 {
1066d6a0fc9bSTony Han			compatible = "microchip,sama7g5-emac";
1067d6a0fc9bSTony Han			reg = <0xe2804000 0x1000>;
1068d6a0fc9bSTony Han			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH
1069d6a0fc9bSTony Han				      GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
1070d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 52>, <&pmc PMC_TYPE_PERIPHERAL 52>, <&pmc PMC_TYPE_GCK 54>;
1071d6a0fc9bSTony Han			clock-names = "pclk", "hclk", "tsu_clk";
1072d6a0fc9bSTony Han			assigned-clocks = <&pmc PMC_TYPE_GCK 54>;
1073d6a0fc9bSTony Han			assigned-clock-rates = <200000000>;
1074d6a0fc9bSTony Han			status = "disabled";
1075d6a0fc9bSTony Han		};
1076d6a0fc9bSTony Han
1077d6a0fc9bSTony Han		dma0: dma-controller@e2808000 {
1078d6a0fc9bSTony Han			compatible = "microchip,sama7g5-dma";
1079d6a0fc9bSTony Han			reg = <0xe2808000 0x1000>;
1080d6a0fc9bSTony Han			interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
1081d6a0fc9bSTony Han			#dma-cells = <1>;
1082d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
1083d6a0fc9bSTony Han			clock-names = "dma_clk";
1084d6a0fc9bSTony Han			status = "disabled";
1085d6a0fc9bSTony Han		};
1086d6a0fc9bSTony Han
1087d6a0fc9bSTony Han		dma1: dma-controller@e280c000 {
1088d6a0fc9bSTony Han			compatible = "microchip,sama7g5-dma";
1089d6a0fc9bSTony Han			reg = <0xe280c000 0x1000>;
1090d6a0fc9bSTony Han			interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
1091d6a0fc9bSTony Han			#dma-cells = <1>;
1092d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
1093d6a0fc9bSTony Han			clock-names = "dma_clk";
1094d6a0fc9bSTony Han			status = "disabled";
1095d6a0fc9bSTony Han		};
1096d6a0fc9bSTony Han
1097d6a0fc9bSTony Han		/* Place dma2 here despite it's address */
1098d6a0fc9bSTony Han		dma2: dma-controller@e1200000 {
1099d6a0fc9bSTony Han			compatible = "microchip,sama7g5-dma";
1100d6a0fc9bSTony Han			reg = <0xe1200000 0x1000>;
1101d6a0fc9bSTony Han			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
1102d6a0fc9bSTony Han			#dma-cells = <1>;
1103d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 24>;
1104d6a0fc9bSTony Han			clock-names = "dma_clk";
1105d6a0fc9bSTony Han			dma-requests = <0>;
1106d6a0fc9bSTony Han			status = "disabled";
1107d6a0fc9bSTony Han		};
1108d6a0fc9bSTony Han
1109d6a0fc9bSTony Han		tcb0: timer@e2814000 {
1110d6a0fc9bSTony Han			compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon";
1111d6a0fc9bSTony Han			#address-cells = <1>;
1112d6a0fc9bSTony Han			#size-cells = <0>;
1113d6a0fc9bSTony Han			reg = <0xe2814000 0x100>;
1114d6a0fc9bSTony Han			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
1115d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 88>, <&pmc PMC_TYPE_PERIPHERAL 89>, <&pmc PMC_TYPE_PERIPHERAL 90>, <&clk32k 1>;
1116d6a0fc9bSTony Han			clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
1117d6a0fc9bSTony Han		};
1118d6a0fc9bSTony Han
1119d6a0fc9bSTony Han		flx8: flexcom@e2818000 {
1120d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
1121d6a0fc9bSTony Han			reg = <0xe2818000 0x200>;
1122d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 46>;
1123d6a0fc9bSTony Han			#address-cells = <1>;
1124d6a0fc9bSTony Han			#size-cells = <1>;
1125d6a0fc9bSTony Han			ranges = <0x0 0xe2818000 0x800>;
1126d6a0fc9bSTony Han			status = "disabled";
1127d6a0fc9bSTony Han
1128d6a0fc9bSTony Han			i2c8: i2c@600 {
1129d6a0fc9bSTony Han				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
1130d6a0fc9bSTony Han				reg = <0x600 0x200>;
1131d6a0fc9bSTony Han				interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
1132d6a0fc9bSTony Han				#address-cells = <1>;
1133d6a0fc9bSTony Han				#size-cells = <0>;
1134d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 46>;
1135d6a0fc9bSTony Han				atmel,fifo-size = <32>;
1136d6a0fc9bSTony Han				dmas = <&dma0 AT91_XDMAC_DT_PERID(22)>,
1137d6a0fc9bSTony Han					<&dma0 AT91_XDMAC_DT_PERID(21)>;
1138d6a0fc9bSTony Han				dma-names = "tx", "rx";
1139d6a0fc9bSTony Han				status = "disabled";
1140d6a0fc9bSTony Han			};
1141d6a0fc9bSTony Han		};
1142d6a0fc9bSTony Han
1143d6a0fc9bSTony Han		flx9: flexcom@e281c000 {
1144d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
1145d6a0fc9bSTony Han			reg = <0xe281c000 0x200>;
1146d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
1147d6a0fc9bSTony Han			#address-cells = <1>;
1148d6a0fc9bSTony Han			#size-cells = <1>;
1149d6a0fc9bSTony Han			ranges = <0x0 0xe281c000 0x800>;
1150d6a0fc9bSTony Han			status = "disabled";
1151d6a0fc9bSTony Han
1152d6a0fc9bSTony Han			i2c9: i2c@600 {
1153d6a0fc9bSTony Han				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
1154d6a0fc9bSTony Han				reg = <0x600 0x200>;
1155d6a0fc9bSTony Han				interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1156d6a0fc9bSTony Han				#address-cells = <1>;
1157d6a0fc9bSTony Han				#size-cells = <0>;
1158d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
1159d6a0fc9bSTony Han				atmel,fifo-size = <32>;
1160d6a0fc9bSTony Han				dmas = <&dma0 AT91_XDMAC_DT_PERID(24)>,
1161d6a0fc9bSTony Han					<&dma0 AT91_XDMAC_DT_PERID(23)>;
1162d6a0fc9bSTony Han				dma-names = "tx", "rx";
1163d6a0fc9bSTony Han				status = "disabled";
1164d6a0fc9bSTony Han			};
1165d6a0fc9bSTony Han		};
1166d6a0fc9bSTony Han
1167d6a0fc9bSTony Han		flx11: flexcom@e2824000 {
1168d6a0fc9bSTony Han			compatible = "atmel,sama5d2-flexcom";
1169d6a0fc9bSTony Han			reg = <0xe2824000 0x200>;
1170d6a0fc9bSTony Han			clocks = <&pmc PMC_TYPE_PERIPHERAL 49>;
1171d6a0fc9bSTony Han			#address-cells = <1>;
1172d6a0fc9bSTony Han			#size-cells = <1>;
1173d6a0fc9bSTony Han			ranges = <0x0 0xe2824000 0x800>;
1174d6a0fc9bSTony Han			status = "disabled";
1175d6a0fc9bSTony Han
1176d6a0fc9bSTony Han			spi11: spi@400 {
1177d6a0fc9bSTony Han				compatible = "atmel,at91rm9200-spi";
1178d6a0fc9bSTony Han				reg = <0x400 0x200>;
1179d6a0fc9bSTony Han				interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
1180d6a0fc9bSTony Han				clocks = <&pmc PMC_TYPE_PERIPHERAL 49>;
1181d6a0fc9bSTony Han				clock-names = "spi_clk";
1182d6a0fc9bSTony Han				#address-cells = <1>;
1183d6a0fc9bSTony Han				#size-cells = <0>;
1184d6a0fc9bSTony Han				atmel,fifo-size = <32>;
1185d6a0fc9bSTony Han				dmas = <&dma0 AT91_XDMAC_DT_PERID(28)>,
1186d6a0fc9bSTony Han					    <&dma0 AT91_XDMAC_DT_PERID(27)>;
1187d6a0fc9bSTony Han				dma-names = "tx", "rx";
1188d6a0fc9bSTony Han				status = "disabled";
1189d6a0fc9bSTony Han			};
1190d6a0fc9bSTony Han		};
1191d6a0fc9bSTony Han
1192d6a0fc9bSTony Han		uddrc: uddrc@e3800000 {
1193d6a0fc9bSTony Han			compatible = "microchip,sama7g5-uddrc";
1194d6a0fc9bSTony Han			reg = <0xe3800000 0x4000>;
1195d6a0fc9bSTony Han		};
1196d6a0fc9bSTony Han
1197d6a0fc9bSTony Han		ddr3phy: ddr3phy@e3804000 {
1198d6a0fc9bSTony Han			compatible = "microchip,sama7g5-ddr3phy";
1199d6a0fc9bSTony Han			reg = <0xe3804000 0x1000>;
1200d6a0fc9bSTony Han		};
1201d6a0fc9bSTony Han
1202d6a0fc9bSTony Han		otpc: efuse@e8c00000 {
1203d6a0fc9bSTony Han			compatible = "microchip,sama7g5-otpc", "syscon";
1204d6a0fc9bSTony Han			reg = <0xe8c00000 0x100>;
1205d6a0fc9bSTony Han			#address-cells = <1>;
1206d6a0fc9bSTony Han			#size-cells = <1>;
1207d6a0fc9bSTony Han
1208d6a0fc9bSTony Han			temperature_calib: calib@1 {
1209d6a0fc9bSTony Han				status = "disabled";
1210d6a0fc9bSTony Han			};
1211d6a0fc9bSTony Han		};
1212d6a0fc9bSTony Han
1213d6a0fc9bSTony Han		gic: interrupt-controller@e8c11000 {
1214d6a0fc9bSTony Han			compatible = "arm,cortex-a7-gic";
1215d6a0fc9bSTony Han			#interrupt-cells = <3>;
1216d6a0fc9bSTony Han			#address-cells = <0>;
1217d6a0fc9bSTony Han			interrupt-controller;
1218d6a0fc9bSTony Han			reg = <0xe8c11000 0x1000>,
1219d6a0fc9bSTony Han				<0xe8c12000 0x2000>;
1220d6a0fc9bSTony Han		};
1221d6a0fc9bSTony Han	};
1222d6a0fc9bSTony Han};
1223