xref: /linux/scripts/dtc/include-prefixes/arm/microchip/sama7g5.dtsi (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2724ba675SRob Herring/*
3724ba675SRob Herring *  sama7g5.dtsi - Device Tree Include file for SAMA7G5 family SoC
4724ba675SRob Herring *
5724ba675SRob Herring *  Copyright (C) 2020 Microchip Technology, Inc. and its subsidiaries
6724ba675SRob Herring *
7724ba675SRob Herring *  Author: Eugen Hristev <eugen.hristev@microchip.com>
8724ba675SRob Herring *  Author: Claudiu Beznea <claudiu.beznea@microchip.com>
9724ba675SRob Herring *
10724ba675SRob Herring */
11724ba675SRob Herring
12724ba675SRob Herring#include <dt-bindings/iio/adc/at91-sama5d2_adc.h>
13724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
14724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h>
15724ba675SRob Herring#include <dt-bindings/clock/at91.h>
16724ba675SRob Herring#include <dt-bindings/dma/at91.h>
17724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
18724ba675SRob Herring#include <dt-bindings/mfd/at91-usart.h>
19724ba675SRob Herring#include <dt-bindings/nvmem/microchip,sama7g5-otpc.h>
20724ba675SRob Herring#include <dt-bindings/thermal/thermal.h>
21724ba675SRob Herring
22724ba675SRob Herring/ {
23724ba675SRob Herring	model = "Microchip SAMA7G5 family SoC";
24724ba675SRob Herring	compatible = "microchip,sama7g5";
25724ba675SRob Herring	#address-cells = <1>;
26724ba675SRob Herring	#size-cells = <1>;
27724ba675SRob Herring	interrupt-parent = <&gic>;
28724ba675SRob Herring
29724ba675SRob Herring	cpus {
30724ba675SRob Herring		#address-cells = <1>;
31724ba675SRob Herring		#size-cells = <0>;
32724ba675SRob Herring
33724ba675SRob Herring		cpu0: cpu@0 {
34724ba675SRob Herring			device_type = "cpu";
35724ba675SRob Herring			compatible = "arm,cortex-a7";
36724ba675SRob Herring			reg = <0x0>;
37724ba675SRob Herring			clocks = <&pmc PMC_TYPE_CORE PMC_CPUPLL>;
38724ba675SRob Herring			clock-names = "cpu";
39724ba675SRob Herring			operating-points-v2 = <&cpu_opp_table>;
40724ba675SRob Herring			#cooling-cells = <2>; /* min followed by max */
41724ba675SRob Herring		};
42724ba675SRob Herring	};
43724ba675SRob Herring
44724ba675SRob Herring	cpu_opp_table: opp-table {
45724ba675SRob Herring		compatible = "operating-points-v2";
46724ba675SRob Herring
47724ba675SRob Herring		opp-90000000 {
48724ba675SRob Herring			opp-hz = /bits/ 64 <90000000>;
49724ba675SRob Herring			opp-microvolt = <1050000 1050000 1225000>;
50724ba675SRob Herring			clock-latency-ns = <320000>;
51724ba675SRob Herring		};
52724ba675SRob Herring
53724ba675SRob Herring		opp-250000000 {
54724ba675SRob Herring			opp-hz = /bits/ 64 <250000000>;
55724ba675SRob Herring			opp-microvolt = <1050000 1050000 1225000>;
56724ba675SRob Herring			clock-latency-ns = <320000>;
57724ba675SRob Herring		};
58724ba675SRob Herring
59724ba675SRob Herring		opp-600000000 {
60724ba675SRob Herring			opp-hz = /bits/ 64 <600000000>;
61724ba675SRob Herring			opp-microvolt = <1050000 1050000 1225000>;
62724ba675SRob Herring			clock-latency-ns = <320000>;
63724ba675SRob Herring			opp-suspend;
64724ba675SRob Herring		};
65724ba675SRob Herring
66724ba675SRob Herring		opp-800000000 {
67724ba675SRob Herring			opp-hz = /bits/ 64 <800000000>;
68724ba675SRob Herring			opp-microvolt = <1150000 1125000 1225000>;
69724ba675SRob Herring			clock-latency-ns = <320000>;
70724ba675SRob Herring		};
71724ba675SRob Herring
72724ba675SRob Herring		opp-1000000002 {
73724ba675SRob Herring			opp-hz = /bits/ 64 <1000000002>;
74724ba675SRob Herring			opp-microvolt = <1250000 1225000 1300000>;
75724ba675SRob Herring			clock-latency-ns = <320000>;
76724ba675SRob Herring		};
77724ba675SRob Herring	};
78724ba675SRob Herring
79724ba675SRob Herring	thermal-zones {
80724ba675SRob Herring		cpu_thermal: cpu-thermal {
81724ba675SRob Herring			polling-delay-passive = <1000>;
82724ba675SRob Herring			polling-delay = <5000>;
83724ba675SRob Herring			thermal-sensors = <&thermal_sensor>;
84724ba675SRob Herring
85724ba675SRob Herring			trips {
86724ba675SRob Herring				cpu_normal: cpu-alert0 {
87724ba675SRob Herring					temperature = <90000>;
88724ba675SRob Herring					hysteresis = <0>;
89724ba675SRob Herring					type = "passive";
90724ba675SRob Herring				};
91724ba675SRob Herring
92724ba675SRob Herring				cpu_hot: cpu-alert1 {
93724ba675SRob Herring					temperature = <95000>;
94724ba675SRob Herring					hysteresis = <0>;
95724ba675SRob Herring					type = "passive";
96724ba675SRob Herring				};
97724ba675SRob Herring
98724ba675SRob Herring				cpu_critical: cpu-critical {
99724ba675SRob Herring					temperature = <100000>;
100724ba675SRob Herring					hysteresis = <0>;
101724ba675SRob Herring					type = "critical";
102724ba675SRob Herring				};
103724ba675SRob Herring			};
104724ba675SRob Herring
105724ba675SRob Herring			cooling-maps {
106724ba675SRob Herring				map0 {
107724ba675SRob Herring					trip = <&cpu_normal>;
108724ba675SRob Herring					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
109724ba675SRob Herring				};
110724ba675SRob Herring
111724ba675SRob Herring				map1 {
112724ba675SRob Herring					trip = <&cpu_hot>;
113724ba675SRob Herring					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
114724ba675SRob Herring				};
115724ba675SRob Herring			};
116724ba675SRob Herring		};
117724ba675SRob Herring	};
118724ba675SRob Herring
119724ba675SRob Herring	clocks {
120724ba675SRob Herring		slow_xtal: slow_xtal {
121724ba675SRob Herring			compatible = "fixed-clock";
122724ba675SRob Herring			#clock-cells = <0>;
123724ba675SRob Herring		};
124724ba675SRob Herring
125724ba675SRob Herring		main_xtal: main_xtal {
126724ba675SRob Herring			compatible = "fixed-clock";
127724ba675SRob Herring			#clock-cells = <0>;
128724ba675SRob Herring		};
129724ba675SRob Herring
130724ba675SRob Herring		usb_clk: usb_clk {
131724ba675SRob Herring			compatible = "fixed-clock";
132724ba675SRob Herring			#clock-cells = <0>;
133724ba675SRob Herring			clock-frequency = <48000000>;
134724ba675SRob Herring		};
135724ba675SRob Herring	};
136724ba675SRob Herring
137724ba675SRob Herring	vddout25: fixed-regulator-vddout25 {
138724ba675SRob Herring		compatible = "regulator-fixed";
139724ba675SRob Herring
140724ba675SRob Herring		regulator-name = "VDDOUT25";
141724ba675SRob Herring		regulator-min-microvolt = <2500000>;
142724ba675SRob Herring		regulator-max-microvolt = <2500000>;
143724ba675SRob Herring		regulator-boot-on;
144724ba675SRob Herring		status = "disabled";
145724ba675SRob Herring	};
146724ba675SRob Herring
147724ba675SRob Herring	ns_sram: sram@100000 {
148724ba675SRob Herring		compatible = "mmio-sram";
149724ba675SRob Herring		#address-cells = <1>;
150724ba675SRob Herring		#size-cells = <1>;
151724ba675SRob Herring		reg = <0x100000 0x20000>;
152724ba675SRob Herring		ranges;
153724ba675SRob Herring	};
154724ba675SRob Herring
155724ba675SRob Herring	thermal_sensor: thermal-sensor {
156724ba675SRob Herring		compatible = "generic-adc-thermal";
157724ba675SRob Herring		#thermal-sensor-cells = <0>;
158724ba675SRob Herring		io-channels = <&adc AT91_SAMA7G5_ADC_TEMP_CHANNEL>;
159724ba675SRob Herring		io-channel-names = "sensor-channel";
160724ba675SRob Herring	};
161724ba675SRob Herring
162724ba675SRob Herring	soc {
163724ba675SRob Herring		compatible = "simple-bus";
164724ba675SRob Herring		#address-cells = <1>;
165724ba675SRob Herring		#size-cells = <1>;
166724ba675SRob Herring		ranges;
167724ba675SRob Herring
168724ba675SRob Herring		nfc_sram: sram@600000 {
169724ba675SRob Herring			compatible = "mmio-sram";
170724ba675SRob Herring			no-memory-wc;
171724ba675SRob Herring			reg = <0x00600000 0x2400>;
172724ba675SRob Herring			#address-cells = <1>;
173724ba675SRob Herring			#size-cells = <1>;
174724ba675SRob Herring			ranges = <0 0x00600000 0x2400>;
175724ba675SRob Herring		};
176724ba675SRob Herring
177724ba675SRob Herring		nfc_io: nfc-io@10000000 {
178724ba675SRob Herring			compatible = "atmel,sama5d3-nfc-io", "syscon";
179724ba675SRob Herring			reg = <0x10000000 0x8000000>;
180724ba675SRob Herring		};
181724ba675SRob Herring
182724ba675SRob Herring		ebi: ebi@40000000 {
183724ba675SRob Herring			compatible = "atmel,sama5d3-ebi";
184724ba675SRob Herring			#address-cells = <2>;
185724ba675SRob Herring			#size-cells = <1>;
186724ba675SRob Herring			atmel,smc = <&hsmc>;
187724ba675SRob Herring			reg = <0x40000000 0x20000000>;
188724ba675SRob Herring			ranges = <0x0 0x0 0x40000000 0x8000000
189724ba675SRob Herring				  0x1 0x0 0x48000000 0x8000000
190724ba675SRob Herring				  0x2 0x0 0x50000000 0x8000000
191724ba675SRob Herring				  0x3 0x0 0x58000000 0x8000000>;
192724ba675SRob Herring			clocks = <&pmc PMC_TYPE_CORE PMC_MCK1>;
193724ba675SRob Herring			status = "disabled";
194724ba675SRob Herring
195724ba675SRob Herring			nand_controller: nand-controller {
196724ba675SRob Herring				compatible = "atmel,sama5d3-nand-controller";
197724ba675SRob Herring				atmel,nfc-sram = <&nfc_sram>;
198724ba675SRob Herring				atmel,nfc-io = <&nfc_io>;
199724ba675SRob Herring				ecc-engine = <&pmecc>;
200724ba675SRob Herring				#address-cells = <2>;
201724ba675SRob Herring				#size-cells = <1>;
202724ba675SRob Herring				ranges;
203724ba675SRob Herring				status = "disabled";
204724ba675SRob Herring			};
205724ba675SRob Herring		};
206724ba675SRob Herring
207724ba675SRob Herring		securam: sram@e0000000 {
208724ba675SRob Herring			compatible = "microchip,sama7g5-securam", "atmel,sama5d2-securam", "mmio-sram";
209724ba675SRob Herring			reg = <0xe0000000 0x4000>;
210724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 18>;
211724ba675SRob Herring			#address-cells = <1>;
212724ba675SRob Herring			#size-cells = <1>;
213724ba675SRob Herring			ranges = <0 0xe0000000 0x4000>;
214724ba675SRob Herring			no-memory-wc;
215724ba675SRob Herring		};
216724ba675SRob Herring
217724ba675SRob Herring		secumod: secumod@e0004000 {
218724ba675SRob Herring			compatible = "microchip,sama7g5-secumod", "atmel,sama5d2-secumod", "syscon";
219724ba675SRob Herring			reg = <0xe0004000 0x4000>;
220724ba675SRob Herring			gpio-controller;
221724ba675SRob Herring			#gpio-cells = <2>;
222724ba675SRob Herring		};
223724ba675SRob Herring
224724ba675SRob Herring		sfrbu: sfr@e0008000 {
225724ba675SRob Herring			compatible = "microchip,sama7g5-sfrbu", "atmel,sama5d2-sfrbu", "syscon";
226724ba675SRob Herring			reg = <0xe0008000 0x20>;
227724ba675SRob Herring		};
228724ba675SRob Herring
229724ba675SRob Herring		pioA: pinctrl@e0014000 {
230724ba675SRob Herring			compatible = "microchip,sama7g5-pinctrl";
231724ba675SRob Herring			reg = <0xe0014000 0x800>;
232724ba675SRob Herring			interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
233724ba675SRob Herring				<GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>,
234724ba675SRob Herring				<GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>,
235724ba675SRob Herring				<GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>,
236724ba675SRob Herring				<GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
237724ba675SRob Herring			interrupt-controller;
238724ba675SRob Herring			#interrupt-cells = <2>;
239724ba675SRob Herring			gpio-controller;
240724ba675SRob Herring			#gpio-cells = <2>;
241724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
242724ba675SRob Herring		};
243724ba675SRob Herring
244724ba675SRob Herring		pmc: clock-controller@e0018000 {
245724ba675SRob Herring			compatible = "microchip,sama7g5-pmc", "syscon";
246724ba675SRob Herring			reg = <0xe0018000 0x200>;
247724ba675SRob Herring			interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
248724ba675SRob Herring			#clock-cells = <2>;
249724ba675SRob Herring			clocks = <&clk32k 1>, <&clk32k 0>, <&main_xtal>;
250724ba675SRob Herring			clock-names = "td_slck", "md_slck", "main_xtal";
251724ba675SRob Herring		};
252724ba675SRob Herring
253724ba675SRob Herring		reset_controller: reset-controller@e001d000 {
254724ba675SRob Herring			compatible = "microchip,sama7g5-rstc";
255724ba675SRob Herring			reg = <0xe001d000 0xc>, <0xe001d0e4 0x4>;
256724ba675SRob Herring			#reset-cells = <1>;
257724ba675SRob Herring			clocks = <&clk32k 0>;
258724ba675SRob Herring		};
259724ba675SRob Herring
260a4bd03e7SArnd Bergmann		shdwc: poweroff@e001d010 {
261724ba675SRob Herring			compatible = "microchip,sama7g5-shdwc", "syscon";
262724ba675SRob Herring			reg = <0xe001d010 0x10>;
263724ba675SRob Herring			clocks = <&clk32k 0>;
264724ba675SRob Herring			#address-cells = <1>;
265724ba675SRob Herring			#size-cells = <0>;
266724ba675SRob Herring			atmel,wakeup-rtc-timer;
267724ba675SRob Herring			atmel,wakeup-rtt-timer;
268724ba675SRob Herring			status = "disabled";
269724ba675SRob Herring		};
270724ba675SRob Herring
271724ba675SRob Herring		rtt: rtc@e001d020 {
272724ba675SRob Herring			compatible = "microchip,sama7g5-rtt", "microchip,sam9x60-rtt", "atmel,at91sam9260-rtt";
273724ba675SRob Herring			reg = <0xe001d020 0x30>;
274724ba675SRob Herring			interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
275*867bf192SClaudiu Beznea			clocks = <&clk32k 1>;
276724ba675SRob Herring		};
277724ba675SRob Herring
278724ba675SRob Herring		clk32k: clock-controller@e001d050 {
279724ba675SRob Herring			compatible = "microchip,sama7g5-sckc", "microchip,sam9x60-sckc";
280724ba675SRob Herring			reg = <0xe001d050 0x4>;
281724ba675SRob Herring			clocks = <&slow_xtal>;
282724ba675SRob Herring			#clock-cells = <1>;
283724ba675SRob Herring		};
284724ba675SRob Herring
285724ba675SRob Herring		gpbr: gpbr@e001d060 {
286724ba675SRob Herring			compatible = "microchip,sama7g5-gpbr", "syscon";
287724ba675SRob Herring			reg = <0xe001d060 0x48>;
288724ba675SRob Herring		};
289724ba675SRob Herring
290724ba675SRob Herring		rtc: rtc@e001d0a8 {
291724ba675SRob Herring			compatible = "microchip,sama7g5-rtc", "microchip,sam9x60-rtc";
292724ba675SRob Herring			reg = <0xe001d0a8 0x30>;
293724ba675SRob Herring			interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
294724ba675SRob Herring			clocks = <&clk32k 1>;
295724ba675SRob Herring		};
296724ba675SRob Herring
297724ba675SRob Herring		ps_wdt: watchdog@e001d180 {
298724ba675SRob Herring			compatible = "microchip,sama7g5-wdt";
299724ba675SRob Herring			reg = <0xe001d180 0x24>;
300724ba675SRob Herring			interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
301724ba675SRob Herring			clocks = <&clk32k 0>;
302724ba675SRob Herring		};
303724ba675SRob Herring
304724ba675SRob Herring		chipid@e0020000 {
305724ba675SRob Herring			compatible = "microchip,sama7g5-chipid";
306724ba675SRob Herring			reg = <0xe0020000 0x8>;
307724ba675SRob Herring		};
308724ba675SRob Herring
309724ba675SRob Herring		tcb1: timer@e0800000 {
310724ba675SRob Herring			compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon";
311724ba675SRob Herring			#address-cells = <1>;
312724ba675SRob Herring			#size-cells = <0>;
313724ba675SRob Herring			reg = <0xe0800000 0x100>;
314724ba675SRob Herring			interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
315724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 91>, <&pmc PMC_TYPE_PERIPHERAL 92>, <&pmc PMC_TYPE_PERIPHERAL 93>, <&clk32k 1>;
316724ba675SRob Herring			clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
317724ba675SRob Herring		};
318724ba675SRob Herring
319724ba675SRob Herring		hsmc: hsmc@e0808000 {
320724ba675SRob Herring			compatible = "atmel,sama5d2-smc", "syscon", "simple-mfd";
321724ba675SRob Herring			reg = <0xe0808000 0x1000>;
322724ba675SRob Herring			interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
323724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
324724ba675SRob Herring			#address-cells = <1>;
325724ba675SRob Herring			#size-cells = <1>;
326724ba675SRob Herring			ranges;
327724ba675SRob Herring
328724ba675SRob Herring			pmecc: ecc-engine@e0808070 {
329724ba675SRob Herring				compatible = "atmel,sama5d2-pmecc";
330724ba675SRob Herring				reg = <0xe0808070 0x490>,
331724ba675SRob Herring				      <0xe0808500 0x200>;
332724ba675SRob Herring			};
333724ba675SRob Herring		};
334724ba675SRob Herring
335724ba675SRob Herring		qspi0: spi@e080c000 {
336724ba675SRob Herring			compatible = "microchip,sama7g5-ospi";
337724ba675SRob Herring			reg = <0xe080c000 0x400>, <0x20000000 0x10000000>;
338724ba675SRob Herring			reg-names = "qspi_base", "qspi_mmap";
339724ba675SRob Herring			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
340724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(41)>,
341724ba675SRob Herring			       <&dma0 AT91_XDMAC_DT_PERID(40)>;
342724ba675SRob Herring			dma-names = "tx", "rx";
343724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 78>, <&pmc PMC_TYPE_GCK 78>;
344724ba675SRob Herring			clock-names = "pclk", "gclk";
345724ba675SRob Herring			#address-cells = <1>;
346724ba675SRob Herring			#size-cells = <0>;
347724ba675SRob Herring			status = "disabled";
348724ba675SRob Herring		};
349724ba675SRob Herring
350724ba675SRob Herring		qspi1: spi@e0810000 {
351724ba675SRob Herring			compatible = "microchip,sama7g5-qspi";
352724ba675SRob Herring			reg = <0xe0810000 0x400>, <0x30000000 0x10000000>;
353724ba675SRob Herring			reg-names = "qspi_base", "qspi_mmap";
354724ba675SRob Herring			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
355724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(43)>,
356724ba675SRob Herring			       <&dma0 AT91_XDMAC_DT_PERID(42)>;
357724ba675SRob Herring			dma-names = "tx", "rx";
358724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 79>, <&pmc PMC_TYPE_GCK 79>;
359724ba675SRob Herring			clock-names = "pclk", "gclk";
360724ba675SRob Herring			#address-cells = <1>;
361724ba675SRob Herring			#size-cells = <0>;
362724ba675SRob Herring			status = "disabled";
363724ba675SRob Herring		};
364724ba675SRob Herring
365724ba675SRob Herring		can0: can@e0828000 {
366724ba675SRob Herring			compatible = "bosch,m_can";
367724ba675SRob Herring			reg = <0xe0828000 0x100>, <0x100000 0x7800>;
368724ba675SRob Herring			reg-names = "m_can", "message_ram";
369dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>,
370dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
371724ba675SRob Herring			interrupt-names = "int0", "int1";
372724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 61>, <&pmc PMC_TYPE_GCK 61>;
373724ba675SRob Herring			clock-names = "hclk", "cclk";
374724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 61>;
375724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
376724ba675SRob Herring			assigned-clock-rates = <40000000>;
377724ba675SRob Herring			bosch,mram-cfg = <0x3400 0 0 64 0 0 32 32>;
378724ba675SRob Herring			status = "disabled";
379724ba675SRob Herring		};
380724ba675SRob Herring
381724ba675SRob Herring		can1: can@e082c000 {
382724ba675SRob Herring			compatible = "bosch,m_can";
383724ba675SRob Herring			reg = <0xe082c000 0x100>, <0x100000 0xbc00>;
384724ba675SRob Herring			reg-names = "m_can", "message_ram";
385dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>,
386dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
387724ba675SRob Herring			interrupt-names = "int0", "int1";
388724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 62>, <&pmc PMC_TYPE_GCK 62>;
389724ba675SRob Herring			clock-names = "hclk", "cclk";
390724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 62>;
391724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
392724ba675SRob Herring			assigned-clock-rates = <40000000>;
393724ba675SRob Herring			bosch,mram-cfg = <0x7800 0 0 64 0 0 32 32>;
394724ba675SRob Herring			status = "disabled";
395724ba675SRob Herring		};
396724ba675SRob Herring
397724ba675SRob Herring		can2: can@e0830000 {
398724ba675SRob Herring			compatible = "bosch,m_can";
399724ba675SRob Herring			reg = <0xe0830000 0x100>, <0x100000 0x10000>;
400724ba675SRob Herring			reg-names = "m_can", "message_ram";
401dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>,
402dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
403724ba675SRob Herring			interrupt-names = "int0", "int1";
404724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 63>, <&pmc PMC_TYPE_GCK 63>;
405724ba675SRob Herring			clock-names = "hclk", "cclk";
406724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 63>;
407724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
408724ba675SRob Herring			assigned-clock-rates = <40000000>;
409724ba675SRob Herring			bosch,mram-cfg = <0xbc00 0 0 64 0 0 32 32>;
410724ba675SRob Herring			status = "disabled";
411724ba675SRob Herring		};
412724ba675SRob Herring
413724ba675SRob Herring		can3: can@e0834000 {
414724ba675SRob Herring			compatible = "bosch,m_can";
415724ba675SRob Herring			reg = <0xe0834000 0x100>, <0x110000 0x4400>;
416724ba675SRob Herring			reg-names = "m_can", "message_ram";
417dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
418dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
419724ba675SRob Herring			interrupt-names = "int0", "int1";
420724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 64>, <&pmc PMC_TYPE_GCK 64>;
421724ba675SRob Herring			clock-names = "hclk", "cclk";
422724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 64>;
423724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
424724ba675SRob Herring			assigned-clock-rates = <40000000>;
425724ba675SRob Herring			bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>;
426724ba675SRob Herring			status = "disabled";
427724ba675SRob Herring		};
428724ba675SRob Herring
429724ba675SRob Herring		can4: can@e0838000 {
430724ba675SRob Herring			compatible = "bosch,m_can";
431724ba675SRob Herring			reg = <0xe0838000 0x100>, <0x110000 0x8800>;
432724ba675SRob Herring			reg-names = "m_can", "message_ram";
433dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
434dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
435724ba675SRob Herring			interrupt-names = "int0", "int1";
436724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 65>, <&pmc PMC_TYPE_GCK 65>;
437724ba675SRob Herring			clock-names = "hclk", "cclk";
438724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 65>;
439724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
440724ba675SRob Herring			assigned-clock-rates = <40000000>;
441724ba675SRob Herring			bosch,mram-cfg = <0x4400 0 0 64 0 0 32 32>;
442724ba675SRob Herring			status = "disabled";
443724ba675SRob Herring		};
444724ba675SRob Herring
445724ba675SRob Herring		can5: can@e083c000 {
446724ba675SRob Herring			compatible = "bosch,m_can";
447724ba675SRob Herring			reg = <0xe083c000 0x100>, <0x110000 0xcc00>;
448724ba675SRob Herring			reg-names = "m_can", "message_ram";
449dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>,
450dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
451724ba675SRob Herring			interrupt-names = "int0", "int1";
452724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 66>, <&pmc PMC_TYPE_GCK 66>;
453724ba675SRob Herring			clock-names = "hclk", "cclk";
454724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 66>;
455724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
456724ba675SRob Herring			assigned-clock-rates = <40000000>;
457724ba675SRob Herring			bosch,mram-cfg = <0x8800 0 0 64 0 0 32 32>;
458724ba675SRob Herring			status = "disabled";
459724ba675SRob Herring		};
460724ba675SRob Herring
461724ba675SRob Herring		adc: adc@e1000000 {
462724ba675SRob Herring			compatible = "microchip,sama7g5-adc";
463724ba675SRob Herring			reg = <0xe1000000 0x200>;
464724ba675SRob Herring			interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
465724ba675SRob Herring			clocks = <&pmc PMC_TYPE_GCK 26>;
466724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 26>;
467724ba675SRob Herring			assigned-clock-rates = <100000000>;
468724ba675SRob Herring			clock-names = "adc_clk";
469724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(0)>;
470724ba675SRob Herring			dma-names = "rx";
471724ba675SRob Herring			atmel,min-sample-rate-hz = <200000>;
472724ba675SRob Herring			atmel,max-sample-rate-hz = <20000000>;
473724ba675SRob Herring			atmel,startup-time-ms = <4>;
474724ba675SRob Herring			#io-channel-cells = <1>;
475724ba675SRob Herring			nvmem-cells = <&temperature_calib>;
476724ba675SRob Herring			nvmem-cell-names = "temperature_calib";
477724ba675SRob Herring			status = "disabled";
478724ba675SRob Herring		};
479724ba675SRob Herring
480724ba675SRob Herring		sdmmc0: mmc@e1204000 {
481724ba675SRob Herring			compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci";
482724ba675SRob Herring			reg = <0xe1204000 0x4000>;
483724ba675SRob Herring			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
484724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 80>, <&pmc PMC_TYPE_GCK 80>;
485724ba675SRob Herring			clock-names = "hclock", "multclk";
486724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
487724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 80>;
488724ba675SRob Herring			assigned-clock-rates = <200000000>;
489724ba675SRob Herring			microchip,sdcal-inverted;
490724ba675SRob Herring			status = "disabled";
491724ba675SRob Herring		};
492724ba675SRob Herring
493724ba675SRob Herring		sdmmc1: mmc@e1208000 {
494724ba675SRob Herring			compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci";
495724ba675SRob Herring			reg = <0xe1208000 0x4000>;
496724ba675SRob Herring			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
497724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 81>, <&pmc PMC_TYPE_GCK 81>;
498724ba675SRob Herring			clock-names = "hclock", "multclk";
499724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
500724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 81>;
501724ba675SRob Herring			assigned-clock-rates = <200000000>;
502724ba675SRob Herring			microchip,sdcal-inverted;
503724ba675SRob Herring			status = "disabled";
504724ba675SRob Herring		};
505724ba675SRob Herring
506724ba675SRob Herring		sdmmc2: mmc@e120c000 {
507724ba675SRob Herring			compatible = "microchip,sama7g5-sdhci", "microchip,sam9x60-sdhci";
508724ba675SRob Herring			reg = <0xe120c000 0x4000>;
509724ba675SRob Herring			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
510724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 82>, <&pmc PMC_TYPE_GCK 82>;
511724ba675SRob Herring			clock-names = "hclock", "multclk";
512724ba675SRob Herring			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_SYSPLL>;
513724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 82>;
514724ba675SRob Herring			assigned-clock-rates = <200000000>;
515724ba675SRob Herring			microchip,sdcal-inverted;
516724ba675SRob Herring			status = "disabled";
517724ba675SRob Herring		};
518724ba675SRob Herring
519724ba675SRob Herring		csi2dc: csi2dc@e1404000 {
520724ba675SRob Herring			compatible = "microchip,sama7g5-csi2dc";
521724ba675SRob Herring			reg = <0xe1404000 0x500>;
522724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 34>, <&xisc>;
523724ba675SRob Herring			clock-names = "pclk", "scck";
524724ba675SRob Herring			assigned-clocks = <&xisc>;
525724ba675SRob Herring			assigned-clock-rates = <266000000>;
526724ba675SRob Herring			status = "disabled";
527724ba675SRob Herring
528724ba675SRob Herring			ports {
529724ba675SRob Herring				#address-cells = <1>;
530724ba675SRob Herring				#size-cells = <0>;
531724ba675SRob Herring				port@0 {
532724ba675SRob Herring					reg = <0>;
533724ba675SRob Herring					csi2dc_in: endpoint {
534724ba675SRob Herring					};
535724ba675SRob Herring				};
536724ba675SRob Herring
537724ba675SRob Herring				port@1 {
538724ba675SRob Herring					reg = <1>;
539724ba675SRob Herring					csi2dc_out: endpoint {
540724ba675SRob Herring						bus-width = <14>;
541724ba675SRob Herring						hsync-active = <1>;
542724ba675SRob Herring						vsync-active = <1>;
543724ba675SRob Herring						remote-endpoint = <&xisc_in>;
544724ba675SRob Herring					};
545724ba675SRob Herring				};
546724ba675SRob Herring			};
547724ba675SRob Herring		};
548724ba675SRob Herring
549724ba675SRob Herring		xisc: xisc@e1408000 {
550724ba675SRob Herring			compatible = "microchip,sama7g5-isc";
551724ba675SRob Herring			reg = <0xe1408000 0x2000>;
552724ba675SRob Herring			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
553724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 56>;
554724ba675SRob Herring			clock-names = "hclock";
555724ba675SRob Herring			#clock-cells = <0>;
556724ba675SRob Herring			clock-output-names = "isc-mck";
557724ba675SRob Herring			status = "disabled";
558724ba675SRob Herring
559724ba675SRob Herring			port {
560724ba675SRob Herring				xisc_in: endpoint {
561724ba675SRob Herring					bus-type = <5>; /* Parallel */
562724ba675SRob Herring					bus-width = <14>;
563724ba675SRob Herring					hsync-active = <1>;
564724ba675SRob Herring					vsync-active = <1>;
565724ba675SRob Herring					remote-endpoint = <&csi2dc_out>;
566724ba675SRob Herring				};
567724ba675SRob Herring			};
568724ba675SRob Herring		};
569724ba675SRob Herring
570724ba675SRob Herring		pwm: pwm@e1604000 {
571724ba675SRob Herring			compatible = "microchip,sama7g5-pwm", "atmel,sama5d2-pwm";
572724ba675SRob Herring			reg = <0xe1604000 0x4000>;
573724ba675SRob Herring			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
574724ba675SRob Herring			#pwm-cells = <3>;
575724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 77>;
576724ba675SRob Herring			status = "disabled";
577724ba675SRob Herring		};
578724ba675SRob Herring
579724ba675SRob Herring		pdmc0: sound@e1608000 {
580724ba675SRob Herring			compatible = "microchip,sama7g5-pdmc";
581724ba675SRob Herring			reg = <0xe1608000 0x1000>;
582724ba675SRob Herring			interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
583724ba675SRob Herring			#sound-dai-cells = <0>;
584724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(37)>;
585724ba675SRob Herring			dma-names = "rx";
586724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 68>, <&pmc PMC_TYPE_GCK 68>;
587724ba675SRob Herring			clock-names = "pclk", "gclk";
588724ba675SRob Herring			status = "disabled";
589724ba675SRob Herring		};
590724ba675SRob Herring
591724ba675SRob Herring		pdmc1: sound@e160c000 {
592724ba675SRob Herring			compatible = "microchip,sama7g5-pdmc";
593724ba675SRob Herring			reg = <0xe160c000 0x1000>;
594724ba675SRob Herring			interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
595724ba675SRob Herring			#sound-dai-cells = <0>;
596724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(38)>;
597724ba675SRob Herring			dma-names = "rx";
598724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 69>, <&pmc PMC_TYPE_GCK 69>;
599724ba675SRob Herring			clock-names = "pclk", "gclk";
600724ba675SRob Herring			status = "disabled";
601724ba675SRob Herring		};
602724ba675SRob Herring
603724ba675SRob Herring		spdifrx: spdifrx@e1614000 {
604724ba675SRob Herring			#sound-dai-cells = <0>;
605724ba675SRob Herring			compatible = "microchip,sama7g5-spdifrx";
606724ba675SRob Herring			reg = <0xe1614000 0x4000>;
607724ba675SRob Herring			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
608724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(49)>;
609724ba675SRob Herring			dma-names = "rx";
610724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 84>, <&pmc PMC_TYPE_GCK 84>;
611724ba675SRob Herring			clock-names = "pclk", "gclk";
612724ba675SRob Herring			status = "disabled";
613724ba675SRob Herring		};
614724ba675SRob Herring
615724ba675SRob Herring		spdiftx: spdiftx@e1618000 {
616724ba675SRob Herring			#sound-dai-cells = <0>;
617724ba675SRob Herring			compatible = "microchip,sama7g5-spdiftx";
618724ba675SRob Herring			reg = <0xe1618000 0x4000>;
619724ba675SRob Herring			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
620724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(50)>;
621724ba675SRob Herring			dma-names = "tx";
622724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 85>, <&pmc PMC_TYPE_GCK 85>;
623724ba675SRob Herring			clock-names = "pclk", "gclk";
624724ba675SRob Herring		};
625724ba675SRob Herring
626724ba675SRob Herring		i2s0: i2s@e161c000 {
627724ba675SRob Herring			compatible = "microchip,sama7g5-i2smcc";
628724ba675SRob Herring			#sound-dai-cells = <0>;
629724ba675SRob Herring			reg = <0xe161c000 0x4000>;
630724ba675SRob Herring			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
631724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(34)>, <&dma0 AT91_XDMAC_DT_PERID(33)>;
632724ba675SRob Herring			dma-names = "tx", "rx";
633724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 57>, <&pmc PMC_TYPE_GCK 57>;
634724ba675SRob Herring			clock-names = "pclk", "gclk";
635724ba675SRob Herring			status = "disabled";
636724ba675SRob Herring		};
637724ba675SRob Herring
638724ba675SRob Herring		i2s1: i2s@e1620000 {
639724ba675SRob Herring			compatible = "microchip,sama7g5-i2smcc";
640724ba675SRob Herring			#sound-dai-cells = <0>;
641724ba675SRob Herring			reg = <0xe1620000 0x4000>;
642724ba675SRob Herring			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
643724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(36)>, <&dma0 AT91_XDMAC_DT_PERID(35)>;
644724ba675SRob Herring			dma-names = "tx", "rx";
645724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 58>, <&pmc PMC_TYPE_GCK 58>;
646724ba675SRob Herring			clock-names = "pclk", "gclk";
647724ba675SRob Herring			status = "disabled";
648724ba675SRob Herring		};
649724ba675SRob Herring
650724ba675SRob Herring		eic: interrupt-controller@e1628000 {
651724ba675SRob Herring			compatible = "microchip,sama7g5-eic";
652724ba675SRob Herring			reg = <0xe1628000 0xec>;
653724ba675SRob Herring			interrupt-parent = <&gic>;
654724ba675SRob Herring			interrupt-controller;
655724ba675SRob Herring			#interrupt-cells = <2>;
656724ba675SRob Herring			interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
657724ba675SRob Herring				     <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
658724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 37>;
659724ba675SRob Herring			clock-names = "pclk";
660724ba675SRob Herring			status = "disabled";
661724ba675SRob Herring		};
662724ba675SRob Herring
663724ba675SRob Herring		pit64b0: timer@e1800000 {
664724ba675SRob Herring			compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b";
665724ba675SRob Herring			reg = <0xe1800000 0x4000>;
666724ba675SRob Herring			interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
667724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 70>, <&pmc PMC_TYPE_GCK 70>;
668724ba675SRob Herring			clock-names = "pclk", "gclk";
669724ba675SRob Herring		};
670724ba675SRob Herring
671724ba675SRob Herring		pit64b1: timer@e1804000 {
672724ba675SRob Herring			compatible = "microchip,sama7g5-pit64b", "microchip,sam9x60-pit64b";
673724ba675SRob Herring			reg = <0xe1804000 0x4000>;
674724ba675SRob Herring			interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
675724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 71>, <&pmc PMC_TYPE_GCK 71>;
676724ba675SRob Herring			clock-names = "pclk", "gclk";
677724ba675SRob Herring		};
678724ba675SRob Herring
679724ba675SRob Herring		aes: crypto@e1810000 {
680724ba675SRob Herring			compatible = "atmel,at91sam9g46-aes";
681724ba675SRob Herring			reg = <0xe1810000 0x100>;
682724ba675SRob Herring			interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
683724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 27>;
684724ba675SRob Herring			clock-names = "aes_clk";
685724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(1)>,
686724ba675SRob Herring			       <&dma0 AT91_XDMAC_DT_PERID(2)>;
687724ba675SRob Herring			dma-names = "tx", "rx";
688724ba675SRob Herring		};
689724ba675SRob Herring
690724ba675SRob Herring		sha: crypto@e1814000 {
691724ba675SRob Herring			compatible = "atmel,at91sam9g46-sha";
692724ba675SRob Herring			reg = <0xe1814000 0x100>;
693724ba675SRob Herring			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
694724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 83>;
695724ba675SRob Herring			clock-names = "sha_clk";
696724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(48)>;
697724ba675SRob Herring			dma-names = "tx";
698724ba675SRob Herring		};
699724ba675SRob Herring
700724ba675SRob Herring		flx0: flexcom@e1818000 {
70162afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
702724ba675SRob Herring			reg = <0xe1818000 0x200>;
703724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 38>;
704724ba675SRob Herring			#address-cells = <1>;
705724ba675SRob Herring			#size-cells = <1>;
706724ba675SRob Herring			ranges = <0x0 0xe1818000 0x800>;
707724ba675SRob Herring			status = "disabled";
708724ba675SRob Herring
709724ba675SRob Herring			uart0: serial@200 {
710724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
711724ba675SRob Herring				reg = <0x200 0x200>;
712724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
713724ba675SRob Herring				interrupts = <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
714724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 38>;
715724ba675SRob Herring				clock-names = "usart";
716724ba675SRob Herring				dmas = <&dma1 AT91_XDMAC_DT_PERID(6)>,
717724ba675SRob Herring				       <&dma1 AT91_XDMAC_DT_PERID(5)>;
718724ba675SRob Herring				dma-names = "tx", "rx";
719724ba675SRob Herring				atmel,use-dma-rx;
720724ba675SRob Herring				atmel,use-dma-tx;
721724ba675SRob Herring				status = "disabled";
722724ba675SRob Herring			};
723724ba675SRob Herring		};
724724ba675SRob Herring
725724ba675SRob Herring		flx1: flexcom@e181c000 {
72662afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
727724ba675SRob Herring			reg = <0xe181c000 0x200>;
728724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 39>;
729724ba675SRob Herring			#address-cells = <1>;
730724ba675SRob Herring			#size-cells = <1>;
731724ba675SRob Herring			ranges = <0x0 0xe181c000 0x800>;
732724ba675SRob Herring			status = "disabled";
733724ba675SRob Herring
734724ba675SRob Herring			i2c1: i2c@600 {
735724ba675SRob Herring				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
736724ba675SRob Herring				reg = <0x600 0x200>;
737724ba675SRob Herring				interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>;
738724ba675SRob Herring				#address-cells = <1>;
739724ba675SRob Herring				#size-cells = <0>;
740724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 39>;
741724ba675SRob Herring				atmel,fifo-size = <32>;
742724ba675SRob Herring				dmas = <&dma0 AT91_XDMAC_DT_PERID(8)>,
743724ba675SRob Herring				       <&dma0 AT91_XDMAC_DT_PERID(7)>;
744724ba675SRob Herring				dma-names = "tx", "rx";
745724ba675SRob Herring				status = "disabled";
746724ba675SRob Herring			};
747724ba675SRob Herring		};
748724ba675SRob Herring
749724ba675SRob Herring		flx3: flexcom@e1824000 {
75062afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
751724ba675SRob Herring			reg = <0xe1824000 0x200>;
752724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 41>;
753724ba675SRob Herring			#address-cells = <1>;
754724ba675SRob Herring			#size-cells = <1>;
755724ba675SRob Herring			ranges = <0x0 0xe1824000 0x800>;
756724ba675SRob Herring			status = "disabled";
757724ba675SRob Herring
758724ba675SRob Herring			uart3: serial@200 {
759724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
760724ba675SRob Herring				reg = <0x200 0x200>;
761724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
762724ba675SRob Herring				interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
763724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 41>;
764724ba675SRob Herring				clock-names = "usart";
765724ba675SRob Herring				dmas = <&dma1 AT91_XDMAC_DT_PERID(12)>,
766724ba675SRob Herring				       <&dma1 AT91_XDMAC_DT_PERID(11)>;
767724ba675SRob Herring				dma-names = "tx", "rx";
768724ba675SRob Herring				atmel,use-dma-rx;
769724ba675SRob Herring				atmel,use-dma-tx;
770724ba675SRob Herring				status = "disabled";
771724ba675SRob Herring			};
772724ba675SRob Herring		};
773724ba675SRob Herring
774724ba675SRob Herring		trng: rng@e2010000 {
775724ba675SRob Herring			compatible = "microchip,sama7g5-trng", "atmel,at91sam9g45-trng";
776724ba675SRob Herring			reg = <0xe2010000 0x100>;
777724ba675SRob Herring			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
778724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 97>;
779724ba675SRob Herring			status = "disabled";
780724ba675SRob Herring		};
781724ba675SRob Herring
782724ba675SRob Herring		tdes: crypto@e2014000 {
783724ba675SRob Herring			compatible = "atmel,at91sam9g46-tdes";
784724ba675SRob Herring			reg = <0xe2014000 0x100>;
785724ba675SRob Herring			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
786724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 96>;
787724ba675SRob Herring			clock-names = "tdes_clk";
788724ba675SRob Herring			dmas = <&dma0 AT91_XDMAC_DT_PERID(54)>,
789724ba675SRob Herring			       <&dma0 AT91_XDMAC_DT_PERID(53)>;
790724ba675SRob Herring			dma-names = "tx", "rx";
791724ba675SRob Herring		};
792724ba675SRob Herring
793724ba675SRob Herring		flx4: flexcom@e2018000 {
79462afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
795724ba675SRob Herring			reg = <0xe2018000 0x200>;
796724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 42>;
797724ba675SRob Herring			#address-cells = <1>;
798724ba675SRob Herring			#size-cells = <1>;
799724ba675SRob Herring			ranges = <0x0 0xe2018000 0x800>;
800724ba675SRob Herring			status = "disabled";
801724ba675SRob Herring
802724ba675SRob Herring			uart4: serial@200 {
803724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
804724ba675SRob Herring				reg = <0x200 0x200>;
805724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
806724ba675SRob Herring				interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
807724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 42>;
808724ba675SRob Herring				clock-names = "usart";
809724ba675SRob Herring				dmas = <&dma1 AT91_XDMAC_DT_PERID(14)>,
810724ba675SRob Herring				       <&dma1 AT91_XDMAC_DT_PERID(13)>;
811724ba675SRob Herring				dma-names = "tx", "rx";
812724ba675SRob Herring				atmel,use-dma-rx;
813724ba675SRob Herring				atmel,use-dma-tx;
814724ba675SRob Herring				atmel,fifo-size = <16>;
815724ba675SRob Herring				status = "disabled";
816724ba675SRob Herring			};
817724ba675SRob Herring		};
818724ba675SRob Herring
819724ba675SRob Herring		flx7: flexcom@e2024000 {
82062afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
821724ba675SRob Herring			reg = <0xe2024000 0x200>;
822724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 45>;
823724ba675SRob Herring			#address-cells = <1>;
824724ba675SRob Herring			#size-cells = <1>;
825724ba675SRob Herring			ranges = <0x0 0xe2024000 0x800>;
826724ba675SRob Herring			status = "disabled";
827724ba675SRob Herring
828724ba675SRob Herring			uart7: serial@200 {
829724ba675SRob Herring				compatible = "atmel,at91sam9260-usart";
830724ba675SRob Herring				reg = <0x200 0x200>;
831724ba675SRob Herring				atmel,usart-mode = <AT91_USART_MODE_SERIAL>;
832724ba675SRob Herring				interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
833724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 45>;
834724ba675SRob Herring				clock-names = "usart";
835724ba675SRob Herring				dmas = <&dma1 AT91_XDMAC_DT_PERID(20)>,
836724ba675SRob Herring				       <&dma1 AT91_XDMAC_DT_PERID(19)>;
837724ba675SRob Herring				dma-names = "tx", "rx";
838724ba675SRob Herring				atmel,use-dma-rx;
839724ba675SRob Herring				atmel,use-dma-tx;
840724ba675SRob Herring				atmel,fifo-size = <16>;
841724ba675SRob Herring				status = "disabled";
842724ba675SRob Herring			};
843724ba675SRob Herring		};
844724ba675SRob Herring
845724ba675SRob Herring		gmac0: ethernet@e2800000 {
846724ba675SRob Herring			compatible = "microchip,sama7g5-gem";
847724ba675SRob Herring			reg = <0xe2800000 0x1000>;
848dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>,
849dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
850dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
851dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
852dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
853dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
854724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_PERIPHERAL 51>, <&pmc PMC_TYPE_GCK 51>, <&pmc PMC_TYPE_GCK 53>;
855724ba675SRob Herring			clock-names = "pclk", "hclk", "tx_clk", "tsu_clk";
856724ba675SRob Herring			assigned-clocks = <&pmc PMC_TYPE_GCK 51>;
857724ba675SRob Herring			assigned-clock-rates = <125000000>;
858724ba675SRob Herring			status = "disabled";
859724ba675SRob Herring		};
860724ba675SRob Herring
861724ba675SRob Herring		gmac1: ethernet@e2804000 {
862724ba675SRob Herring			compatible = "microchip,sama7g5-emac";
863724ba675SRob Herring			reg = <0xe2804000 0x1000>;
864dc1890b9SKrzysztof Kozlowski			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>,
865dc1890b9SKrzysztof Kozlowski				     <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
866724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 52>, <&pmc PMC_TYPE_PERIPHERAL 52>;
867724ba675SRob Herring			clock-names = "pclk", "hclk";
868724ba675SRob Herring			status = "disabled";
869724ba675SRob Herring		};
870724ba675SRob Herring
871724ba675SRob Herring		dma0: dma-controller@e2808000 {
872724ba675SRob Herring			compatible = "microchip,sama7g5-dma";
873724ba675SRob Herring			reg = <0xe2808000 0x1000>;
874724ba675SRob Herring			interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
875724ba675SRob Herring			#dma-cells = <1>;
876724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
877724ba675SRob Herring			clock-names = "dma_clk";
878724ba675SRob Herring			status = "disabled";
879724ba675SRob Herring		};
880724ba675SRob Herring
881724ba675SRob Herring		dma1: dma-controller@e280c000 {
882724ba675SRob Herring			compatible = "microchip,sama7g5-dma";
883724ba675SRob Herring			reg = <0xe280c000 0x1000>;
884724ba675SRob Herring			interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
885724ba675SRob Herring			#dma-cells = <1>;
886724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
887724ba675SRob Herring			clock-names = "dma_clk";
888724ba675SRob Herring			status = "disabled";
889724ba675SRob Herring		};
890724ba675SRob Herring
891724ba675SRob Herring		/* Place dma2 here despite it's address */
892724ba675SRob Herring		dma2: dma-controller@e1200000 {
893724ba675SRob Herring			compatible = "microchip,sama7g5-dma";
894724ba675SRob Herring			reg = <0xe1200000 0x1000>;
895724ba675SRob Herring			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
896724ba675SRob Herring			#dma-cells = <1>;
897724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 24>;
898724ba675SRob Herring			clock-names = "dma_clk";
899724ba675SRob Herring			dma-requests = <0>;
900724ba675SRob Herring			status = "disabled";
901724ba675SRob Herring		};
902724ba675SRob Herring
903724ba675SRob Herring		tcb0: timer@e2814000 {
904724ba675SRob Herring			compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon";
905724ba675SRob Herring			#address-cells = <1>;
906724ba675SRob Herring			#size-cells = <0>;
907724ba675SRob Herring			reg = <0xe2814000 0x100>;
908724ba675SRob Herring			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
909724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 88>, <&pmc PMC_TYPE_PERIPHERAL 89>, <&pmc PMC_TYPE_PERIPHERAL 90>, <&clk32k 1>;
910724ba675SRob Herring			clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
911724ba675SRob Herring		};
912724ba675SRob Herring
913724ba675SRob Herring		flx8: flexcom@e2818000 {
91462afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
915724ba675SRob Herring			reg = <0xe2818000 0x200>;
916724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 46>;
917724ba675SRob Herring			#address-cells = <1>;
918724ba675SRob Herring			#size-cells = <1>;
919724ba675SRob Herring			ranges = <0x0 0xe2818000 0x800>;
920724ba675SRob Herring			status = "disabled";
921724ba675SRob Herring
922724ba675SRob Herring			i2c8: i2c@600 {
923724ba675SRob Herring				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
924724ba675SRob Herring				reg = <0x600 0x200>;
925724ba675SRob Herring				interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
926724ba675SRob Herring				#address-cells = <1>;
927724ba675SRob Herring				#size-cells = <0>;
928724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 46>;
929724ba675SRob Herring				atmel,fifo-size = <32>;
930724ba675SRob Herring				dmas = <&dma0 AT91_XDMAC_DT_PERID(22)>,
931724ba675SRob Herring				       <&dma0 AT91_XDMAC_DT_PERID(21)>;
932724ba675SRob Herring				dma-names = "tx", "rx";
933724ba675SRob Herring				status = "disabled";
934724ba675SRob Herring			};
935724ba675SRob Herring		};
936724ba675SRob Herring
937724ba675SRob Herring		flx9: flexcom@e281c000 {
93862afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
939724ba675SRob Herring			reg = <0xe281c000 0x200>;
940724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
941724ba675SRob Herring			#address-cells = <1>;
942724ba675SRob Herring			#size-cells = <1>;
943724ba675SRob Herring			ranges = <0x0 0xe281c000 0x800>;
944724ba675SRob Herring			status = "disabled";
945724ba675SRob Herring
946724ba675SRob Herring			i2c9: i2c@600 {
947724ba675SRob Herring				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
948724ba675SRob Herring				reg = <0x600 0x200>;
949724ba675SRob Herring				interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
950724ba675SRob Herring				#address-cells = <1>;
951724ba675SRob Herring				#size-cells = <0>;
952724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
953724ba675SRob Herring				atmel,fifo-size = <32>;
954724ba675SRob Herring				dmas = <&dma0 AT91_XDMAC_DT_PERID(24)>,
955724ba675SRob Herring				       <&dma0 AT91_XDMAC_DT_PERID(23)>;
956724ba675SRob Herring				dma-names = "tx", "rx";
957724ba675SRob Herring				status = "disabled";
958724ba675SRob Herring			};
959724ba675SRob Herring		};
960724ba675SRob Herring
96181bf72aeSMihai Sain		flx10: flexcom@e2820000 {
96262afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
96381bf72aeSMihai Sain			reg = <0xe2820000 0x200>;
96481bf72aeSMihai Sain			clocks = <&pmc PMC_TYPE_PERIPHERAL 48>;
96581bf72aeSMihai Sain			#address-cells = <1>;
96681bf72aeSMihai Sain			#size-cells = <1>;
96781bf72aeSMihai Sain			ranges = <0x0 0xe2820000 0x800>;
96881bf72aeSMihai Sain			status = "disabled";
96981bf72aeSMihai Sain
97081bf72aeSMihai Sain			i2c10: i2c@600 {
97181bf72aeSMihai Sain				compatible = "microchip,sama7g5-i2c", "microchip,sam9x60-i2c";
97281bf72aeSMihai Sain				reg = <0x600 0x200>;
97381bf72aeSMihai Sain				interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
97481bf72aeSMihai Sain				#address-cells = <1>;
97581bf72aeSMihai Sain				#size-cells = <0>;
97681bf72aeSMihai Sain				clocks = <&pmc PMC_TYPE_PERIPHERAL 48>;
97781bf72aeSMihai Sain				atmel,fifo-size = <32>;
97881bf72aeSMihai Sain				dmas = <&dma0 AT91_XDMAC_DT_PERID(26)>,
97981bf72aeSMihai Sain				       <&dma0 AT91_XDMAC_DT_PERID(25)>;
98081bf72aeSMihai Sain				dma-names = "tx", "rx";
98181bf72aeSMihai Sain				status = "disabled";
98281bf72aeSMihai Sain			};
98381bf72aeSMihai Sain		};
98481bf72aeSMihai Sain
985724ba675SRob Herring		flx11: flexcom@e2824000 {
98662afd624SBalakrishnan Sambath			compatible = "microchip,sama7g5-flexcom", "atmel,sama5d2-flexcom";
987724ba675SRob Herring			reg = <0xe2824000 0x200>;
988724ba675SRob Herring			clocks = <&pmc PMC_TYPE_PERIPHERAL 49>;
989724ba675SRob Herring			#address-cells = <1>;
990724ba675SRob Herring			#size-cells = <1>;
991724ba675SRob Herring			ranges = <0x0 0xe2824000 0x800>;
992724ba675SRob Herring			status = "disabled";
993724ba675SRob Herring
994724ba675SRob Herring			spi11: spi@400 {
995724ba675SRob Herring				compatible = "atmel,at91rm9200-spi";
996724ba675SRob Herring				reg = <0x400 0x200>;
997724ba675SRob Herring				interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
998724ba675SRob Herring				clocks = <&pmc PMC_TYPE_PERIPHERAL 49>;
999724ba675SRob Herring				clock-names = "spi_clk";
1000724ba675SRob Herring				#address-cells = <1>;
1001724ba675SRob Herring				#size-cells = <0>;
1002724ba675SRob Herring				atmel,fifo-size = <32>;
1003724ba675SRob Herring				dmas = <&dma0 AT91_XDMAC_DT_PERID(28)>,
1004724ba675SRob Herring				       <&dma0 AT91_XDMAC_DT_PERID(27)>;
1005724ba675SRob Herring				dma-names = "tx", "rx";
1006724ba675SRob Herring				status = "disabled";
1007724ba675SRob Herring			};
1008724ba675SRob Herring		};
1009724ba675SRob Herring
1010724ba675SRob Herring		uddrc: uddrc@e3800000 {
1011724ba675SRob Herring			compatible = "microchip,sama7g5-uddrc";
1012724ba675SRob Herring			reg = <0xe3800000 0x4000>;
1013724ba675SRob Herring		};
1014724ba675SRob Herring
1015724ba675SRob Herring		ddr3phy: ddr3phy@e3804000 {
1016724ba675SRob Herring			compatible = "microchip,sama7g5-ddr3phy";
1017724ba675SRob Herring			reg = <0xe3804000 0x1000>;
1018724ba675SRob Herring		};
1019724ba675SRob Herring
1020724ba675SRob Herring		otpc: efuse@e8c00000 {
1021724ba675SRob Herring			compatible = "microchip,sama7g5-otpc", "syscon";
1022724ba675SRob Herring			reg = <0xe8c00000 0x100>;
1023724ba675SRob Herring			#address-cells = <1>;
1024724ba675SRob Herring			#size-cells = <1>;
1025724ba675SRob Herring
1026724ba675SRob Herring			temperature_calib: calib@1 {
1027724ba675SRob Herring				reg = <OTP_PKT(1) 76>;
1028724ba675SRob Herring			};
1029724ba675SRob Herring		};
1030724ba675SRob Herring
1031724ba675SRob Herring		gic: interrupt-controller@e8c11000 {
1032724ba675SRob Herring			compatible = "arm,cortex-a7-gic";
1033724ba675SRob Herring			#interrupt-cells = <3>;
1034724ba675SRob Herring			#address-cells = <0>;
1035724ba675SRob Herring			interrupt-controller;
1036724ba675SRob Herring			reg = <0xe8c11000 0x1000>,
1037724ba675SRob Herring				<0xe8c12000 0x2000>;
1038724ba675SRob Herring		};
1039724ba675SRob Herring	};
1040724ba675SRob Herring};
1041