xref: /optee_os/core/arch/arm/dts/sama5d2.dtsi (revision 19a31ec40245ae01a9adcd206eec2a4bb4479fc9)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * sama5d2.dtsi - Device Tree Include file for SAMA5D2 family SoC
4 *
5 *  Copyright (C) 2015 Atmel,
6 *                2015 Ludovic Desroches <ludovic.desroches@atmel.com>
7 */
8
9#include <dt-bindings/dma/at91.h>
10#include <dt-bindings/interrupt-controller/irq.h>
11#include <dt-bindings/clock/at91.h>
12#include <dt-bindings/iio/adc/at91-sama5d2_adc.h>
13
14/ {
15	#address-cells = <1>;
16	#size-cells = <1>;
17	model = "Atmel SAMA5D2 family SoC";
18	compatible = "atmel,sama5d2";
19	interrupt-parent = <&aic>;
20
21	aliases {
22		serial0 = &uart1;
23		serial1 = &uart3;
24	};
25
26	cpus {
27		#address-cells = <1>;
28		#size-cells = <0>;
29
30		cpu@0 {
31			device_type = "cpu";
32			compatible = "arm,cortex-a5";
33			reg = <0>;
34			next-level-cache = <&L2>;
35			clocks = <&pmc PMC_TYPE_CORE PMC_MCK_PRES>;
36			clock-names = "cpu";
37		};
38	};
39
40	pmu {
41		compatible = "arm,cortex-a5-pmu";
42		interrupts = <2 IRQ_TYPE_LEVEL_HIGH 0>;
43	};
44
45	etb@740000 {
46		compatible = "arm,coresight-etb10", "arm,primecell";
47		reg = <0x740000 0x1000>;
48
49		clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
50		clock-names = "apb_pclk";
51
52		in-ports {
53			port {
54				etb_in: endpoint {
55					remote-endpoint = <&etm_out>;
56				};
57			};
58		};
59	};
60
61	etm@73c000 {
62		compatible = "arm,coresight-etm3x", "arm,primecell";
63		reg = <0x73c000 0x1000>;
64
65		clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
66		clock-names = "apb_pclk";
67
68		out-ports {
69			port {
70				etm_out: endpoint {
71					remote-endpoint = <&etb_in>;
72				};
73			};
74		};
75	};
76
77	memory@20000000 {
78		device_type = "memory";
79		reg = <0x20000000 0x20000000>;
80	};
81
82	clocks {
83		slow_xtal: slow_xtal {
84			compatible = "fixed-clock";
85			#clock-cells = <0>;
86			clock-frequency = <0>;
87		};
88
89		main_xtal: main_xtal {
90			compatible = "fixed-clock";
91			#clock-cells = <0>;
92			clock-frequency = <0>;
93		};
94	};
95
96	ns_sram: sram@200000 {
97		compatible = "atmel,sama5d2-sram", "mmio-sram";
98		reg = <0x00200000 0x20000>;
99		#address-cells = <1>;
100		#size-cells = <1>;
101		ranges = <0 0x00200000 0x20000>;
102		status = "disabled";
103		secure-status = "okay";
104	};
105
106	ahb {
107		compatible = "simple-bus";
108		#address-cells = <1>;
109		#size-cells = <1>;
110		ranges;
111
112		nfc_sram: sram@100000 {
113			compatible = "mmio-sram";
114			no-memory-wc;
115			reg = <0x00100000 0x2400>;
116			#address-cells = <1>;
117			#size-cells = <1>;
118			ranges = <0 0x00100000 0x2400>;
119
120		};
121
122		usb0: gadget@300000 {
123			compatible = "atmel,sama5d3-udc";
124			reg = <0x00300000 0x100000
125			       0xfc02c000 0x400>;
126			interrupts = <42 IRQ_TYPE_LEVEL_HIGH 2>;
127			clocks = <&pmc PMC_TYPE_PERIPHERAL 42>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
128			clock-names = "pclk", "hclk";
129			assigned-clocks = <&pmc PMC_TYPE_CORE PMC_USBCK>;
130			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
131			assigned-clock-rates = <48000000>;
132			status = "disabled";
133		};
134
135		usb1: ohci@400000 {
136			compatible = "atmel,at91rm9200-ohci", "usb-ohci";
137			reg = <0x00400000 0x100000>;
138			interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;
139			clocks = <&pmc PMC_TYPE_PERIPHERAL 41>, <&pmc PMC_TYPE_PERIPHERAL 41>, <&pmc PMC_TYPE_SYSTEM 6>;
140			clock-names = "ohci_clk", "hclk", "uhpck";
141			assigned-clocks = <&pmc PMC_TYPE_CORE PMC_USBCK>;
142			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
143			assigned-clock-rates = <48000000>;
144			status = "disabled";
145		};
146
147		usb2: ehci@500000 {
148			compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
149			reg = <0x00500000 0x100000>;
150			interrupts = <41 IRQ_TYPE_LEVEL_HIGH 2>;
151			clocks = <&pmc PMC_TYPE_CORE PMC_UTMI>, <&pmc PMC_TYPE_PERIPHERAL 41>;
152			clock-names = "usb_clk", "ehci_clk";
153			assigned-clocks = <&pmc PMC_TYPE_CORE PMC_USBCK>;
154			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
155			assigned-clock-rates = <48000000>;
156			status = "disabled";
157		};
158
159		L2: cache-controller@a00000 {
160			compatible = "arm,pl310-cache";
161			reg = <0x00a00000 0x1000>;
162			interrupts = <63 IRQ_TYPE_LEVEL_HIGH 4>;
163			cache-unified;
164			cache-level = <2>;
165		};
166
167		ebi: ebi@10000000 {
168			compatible = "atmel,sama5d3-ebi";
169			#address-cells = <2>;
170			#size-cells = <1>;
171			atmel,smc = <&hsmc>;
172			reg = <0x10000000 0x10000000
173			       0x60000000 0x30000000>;
174			ranges = <0x0 0x0 0x10000000 0x10000000
175				  0x1 0x0 0x60000000 0x10000000
176				  0x2 0x0 0x70000000 0x10000000
177				  0x3 0x0 0x80000000 0x10000000>;
178			clocks = <&pmc PMC_TYPE_CORE PMC_MCK2>;
179			status = "disabled";
180
181			nand_controller: nand-controller {
182				compatible = "atmel,sama5d3-nand-controller";
183				atmel,nfc-sram = <&nfc_sram>;
184				atmel,nfc-io = <&nfc_io>;
185				ecc-engine = <&pmecc>;
186				#address-cells = <2>;
187				#size-cells = <1>;
188				ranges;
189				status = "disabled";
190			};
191		};
192
193		sdmmc0: sdio-host@a0000000 {
194			compatible = "atmel,sama5d2-sdhci";
195			reg = <0xa0000000 0x300>;
196			interrupts = <31 IRQ_TYPE_LEVEL_HIGH 0>;
197			clocks = <&pmc PMC_TYPE_PERIPHERAL 31>, <&pmc PMC_TYPE_GCK 31>, <&pmc PMC_TYPE_CORE PMC_MAIN>;
198			clock-names = "hclock", "multclk", "baseclk";
199			assigned-clocks = <&pmc PMC_TYPE_GCK 31>;
200			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
201			assigned-clock-rates = <480000000>;
202			status = "disabled";
203		};
204
205		sdmmc1: sdio-host@b0000000 {
206			compatible = "atmel,sama5d2-sdhci";
207			reg = <0xb0000000 0x300>;
208			interrupts = <32 IRQ_TYPE_LEVEL_HIGH 0>;
209			clocks = <&pmc PMC_TYPE_PERIPHERAL 32>, <&pmc PMC_TYPE_GCK 32>, <&pmc PMC_TYPE_CORE PMC_MAIN>;
210			clock-names = "hclock", "multclk", "baseclk";
211			assigned-clocks = <&pmc PMC_TYPE_GCK 32>;
212			assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
213			assigned-clock-rates = <480000000>;
214			status = "disabled";
215		};
216
217		nfc_io: nfc-io@c0000000 {
218			compatible = "atmel,sama5d3-nfc-io", "syscon";
219			reg = <0xc0000000 0x8000000>;
220		};
221
222		apb {
223			compatible = "simple-bus";
224			#address-cells = <1>;
225			#size-cells = <1>;
226			ranges;
227
228			hlcdc: hlcdc@f0000000 {
229				compatible = "atmel,sama5d2-hlcdc";
230				reg = <0xf0000000 0x2000>;
231				interrupts = <45 IRQ_TYPE_LEVEL_HIGH 0>;
232				clocks = <&pmc PMC_TYPE_PERIPHERAL 45>, <&pmc PMC_TYPE_SYSTEM 3>, <&clk32k>;
233				clock-names = "periph_clk","sys_clk", "slow_clk";
234				status = "disabled";
235
236				hlcdc-display-controller {
237					compatible = "atmel,hlcdc-display-controller";
238					#address-cells = <1>;
239					#size-cells = <0>;
240
241					port@0 {
242						#address-cells = <1>;
243						#size-cells = <0>;
244						reg = <0>;
245					};
246				};
247
248				hlcdc_pwm: hlcdc-pwm {
249					compatible = "atmel,hlcdc-pwm";
250					#pwm-cells = <3>;
251				};
252			};
253
254			isc: isc@f0008000 {
255				compatible = "atmel,sama5d2-isc";
256				reg = <0xf0008000 0x4000>;
257				interrupts = <46 IRQ_TYPE_LEVEL_HIGH 5>;
258				clocks = <&pmc PMC_TYPE_PERIPHERAL 46>, <&pmc PMC_TYPE_SYSTEM 18>, <&pmc PMC_TYPE_GCK 46>;
259				clock-names = "hclock", "iscck", "gck";
260				#clock-cells = <0>;
261				clock-output-names = "isc-mck";
262				status = "disabled";
263			};
264
265			ramc0: ramc@f000c000 {
266				compatible = "atmel,sama5d3-ddramc";
267				reg = <0xf000c000 0x200>;
268				clocks = <&pmc PMC_TYPE_SYSTEM 2>, <&pmc PMC_TYPE_PERIPHERAL 13>;
269				clock-names = "ddrck", "mpddr";
270			};
271
272			dma0: dma-controller@f0010000 {
273				compatible = "atmel,sama5d4-dma";
274				reg = <0xf0010000 0x1000>;
275				interrupts = <6 IRQ_TYPE_LEVEL_HIGH 0>;
276				#dma-cells = <1>;
277				clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
278				clock-names = "dma_clk";
279			};
280
281			/* Place dma1 here despite its address */
282			dma1: dma-controller@f0004000 {
283				compatible = "atmel,sama5d4-dma";
284				reg = <0xf0004000 0x1000>;
285				interrupts = <7 IRQ_TYPE_LEVEL_HIGH 0>;
286				#dma-cells = <1>;
287				clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
288				clock-names = "dma_clk";
289			};
290
291			pmc: pmc@f0014000 {
292				compatible = "atmel,sama5d2-pmc", "syscon";
293				reg = <0xf0014000 0x160>;
294				interrupts = <74 IRQ_TYPE_LEVEL_HIGH 7>;
295				#clock-cells = <2>;
296				clocks = <&clk32k>, <&main_xtal>;
297				clock-names = "slow_clk", "main_xtal";
298				status = "disabled";
299				secure-status = "okay";
300			};
301
302			qspi0: spi@f0020000 {
303				compatible = "atmel,sama5d2-qspi";
304				reg = <0xf0020000 0x100>, <0xd0000000 0x08000000>;
305				reg-names = "qspi_base", "qspi_mmap";
306				interrupts = <52 IRQ_TYPE_LEVEL_HIGH 7>;
307				clocks = <&pmc PMC_TYPE_PERIPHERAL 52>;
308				#address-cells = <1>;
309				#size-cells = <0>;
310				status = "disabled";
311			};
312
313			qspi1: spi@f0024000 {
314				compatible = "atmel,sama5d2-qspi";
315				reg = <0xf0024000 0x100>, <0xd8000000 0x08000000>;
316				reg-names = "qspi_base", "qspi_mmap";
317				interrupts = <53 IRQ_TYPE_LEVEL_HIGH 7>;
318				clocks = <&pmc PMC_TYPE_PERIPHERAL 53>;
319				#address-cells = <1>;
320				#size-cells = <0>;
321				status = "disabled";
322			};
323
324			sha@f0028000 {
325				compatible = "atmel,at91sam9g46-sha";
326				reg = <0xf0028000 0x100>;
327				interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>;
328				dmas = <&dma0
329					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
330					 AT91_XDMAC_DT_PERID(30))>;
331				dma-names = "tx";
332				clocks = <&pmc PMC_TYPE_PERIPHERAL 12>;
333				clock-names = "sha_clk";
334				status = "okay";
335			};
336
337			aes@f002c000 {
338				compatible = "atmel,at91sam9g46-aes";
339				reg = <0xf002c000 0x100>;
340				interrupts = <9 IRQ_TYPE_LEVEL_HIGH 0>;
341				dmas = <&dma0
342					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
343					 AT91_XDMAC_DT_PERID(26))>,
344				       <&dma0
345					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
346					 AT91_XDMAC_DT_PERID(27))>;
347				dma-names = "tx", "rx";
348				clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
349				clock-names = "aes_clk";
350				status = "okay";
351			};
352
353			spi0: spi@f8000000 {
354				compatible = "atmel,at91rm9200-spi";
355				reg = <0xf8000000 0x100>;
356				interrupts = <33 IRQ_TYPE_LEVEL_HIGH 7>;
357				dmas = <&dma0
358					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
359					 AT91_XDMAC_DT_PERID(6))>,
360				       <&dma0
361					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
362					 AT91_XDMAC_DT_PERID(7))>;
363				dma-names = "tx", "rx";
364				clocks = <&pmc PMC_TYPE_PERIPHERAL 33>;
365				clock-names = "spi_clk";
366				atmel,fifo-size = <16>;
367				#address-cells = <1>;
368				#size-cells = <0>;
369				status = "disabled";
370			};
371
372			ssc0: ssc@f8004000 {
373				compatible = "atmel,at91sam9g45-ssc";
374				reg = <0xf8004000 0x4000>;
375				interrupts = <43 IRQ_TYPE_LEVEL_HIGH 4>;
376				dmas = <&dma0
377					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
378					AT91_XDMAC_DT_PERID(21))>,
379				       <&dma0
380					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
381					AT91_XDMAC_DT_PERID(22))>;
382				dma-names = "tx", "rx";
383				clocks = <&pmc PMC_TYPE_PERIPHERAL 43>;
384				clock-names = "pclk";
385				status = "disabled";
386			};
387
388			macb0: ethernet@f8008000 {
389				compatible = "atmel,sama5d2-gem";
390				reg = <0xf8008000 0x1000>;
391				interrupts = <5  IRQ_TYPE_LEVEL_HIGH 3		/* Queue 0 */
392					      66 IRQ_TYPE_LEVEL_HIGH 3          /* Queue 1 */
393					      67 IRQ_TYPE_LEVEL_HIGH 3>;        /* Queue 2 */
394				#address-cells = <1>;
395				#size-cells = <0>;
396				clocks = <&pmc PMC_TYPE_PERIPHERAL 5>, <&pmc PMC_TYPE_PERIPHERAL 5>;
397				clock-names = "hclk", "pclk";
398				status = "disabled";
399			};
400
401			tcb0: timer@f800c000 {
402				compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon";
403				#address-cells = <1>;
404				#size-cells = <0>;
405				reg = <0xf800c000 0x100>;
406				interrupts = <35 IRQ_TYPE_LEVEL_HIGH 0>;
407				clocks = <&pmc PMC_TYPE_PERIPHERAL 35>, <&pmc PMC_TYPE_GCK 35>, <&clk32k>;
408				clock-names = "t0_clk", "gclk", "slow_clk";
409			};
410
411			tcb1: timer@f8010000 {
412				compatible = "atmel,sama5d2-tcb", "simple-mfd", "syscon";
413				#address-cells = <1>;
414				#size-cells = <0>;
415				reg = <0xf8010000 0x100>;
416				interrupts = <36 IRQ_TYPE_LEVEL_HIGH 0>;
417				clocks = <&pmc PMC_TYPE_PERIPHERAL 36>, <&pmc PMC_TYPE_GCK 36>, <&clk32k>;
418				clock-names = "t0_clk", "gclk", "slow_clk";
419				status = "disabled";
420				secure-status = "okay";
421			};
422
423			hsmc: hsmc@f8014000 {
424				compatible = "atmel,sama5d2-smc", "syscon", "simple-mfd";
425				reg = <0xf8014000 0x1000>;
426				interrupts = <17 IRQ_TYPE_LEVEL_HIGH 6>;
427				clocks = <&pmc PMC_TYPE_PERIPHERAL 17>;
428				#address-cells = <1>;
429				#size-cells = <1>;
430				ranges;
431
432				pmecc: ecc-engine@f8014070 {
433					compatible = "atmel,sama5d2-pmecc";
434					reg = <0xf8014070 0x490>,
435					      <0xf8014500 0x100>;
436				};
437			};
438
439			pdmic: pdmic@f8018000 {
440				compatible = "atmel,sama5d2-pdmic";
441				reg = <0xf8018000 0x124>;
442				interrupts = <48 IRQ_TYPE_LEVEL_HIGH 7>;
443				dmas = <&dma0
444					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
445					| AT91_XDMAC_DT_PERID(50))>;
446				dma-names = "rx";
447				clocks = <&pmc PMC_TYPE_PERIPHERAL 48>, <&pmc PMC_TYPE_GCK 48>;
448				clock-names = "pclk", "gclk";
449				status = "disabled";
450			};
451
452			uart0: serial@f801c000 {
453				compatible = "atmel,at91sam9260-usart";
454				reg = <0xf801c000 0x100>;
455				interrupts = <24 IRQ_TYPE_LEVEL_HIGH 7>;
456				dmas = <&dma0
457					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
458					 AT91_XDMAC_DT_PERID(35))>,
459				       <&dma0
460					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
461					 AT91_XDMAC_DT_PERID(36))>;
462				dma-names = "tx", "rx";
463				clocks = <&pmc PMC_TYPE_PERIPHERAL 24>;
464				clock-names = "usart";
465				status = "disabled";
466			};
467
468			uart1: serial@f8020000 {
469				compatible = "atmel,at91sam9260-usart";
470				reg = <0xf8020000 0x100>;
471				interrupts = <25 IRQ_TYPE_LEVEL_HIGH 7>;
472				dmas = <&dma0
473					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
474					 AT91_XDMAC_DT_PERID(37))>,
475				       <&dma0
476					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
477					 AT91_XDMAC_DT_PERID(38))>;
478				dma-names = "tx", "rx";
479				clocks = <&pmc PMC_TYPE_PERIPHERAL 25>;
480				clock-names = "usart";
481				status = "disabled";
482			};
483
484			uart2: serial@f8024000 {
485				compatible = "atmel,at91sam9260-usart";
486				reg = <0xf8024000 0x100>;
487				interrupts = <26 IRQ_TYPE_LEVEL_HIGH 7>;
488				dmas = <&dma0
489					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
490					 AT91_XDMAC_DT_PERID(39))>,
491				       <&dma0
492					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
493					 AT91_XDMAC_DT_PERID(40))>;
494				dma-names = "tx", "rx";
495				clocks = <&pmc PMC_TYPE_PERIPHERAL 26>;
496				clock-names = "usart";
497				status = "disabled";
498			};
499
500			i2c0: i2c@f8028000 {
501				compatible = "atmel,sama5d2-i2c";
502				reg = <0xf8028000 0x100>;
503				interrupts = <29 IRQ_TYPE_LEVEL_HIGH 7>;
504				dmas = <&dma0
505					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
506					 AT91_XDMAC_DT_PERID(0))>,
507				       <&dma0
508					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
509					 AT91_XDMAC_DT_PERID(1))>;
510				dma-names = "tx", "rx";
511				#address-cells = <1>;
512				#size-cells = <0>;
513				clocks = <&pmc PMC_TYPE_PERIPHERAL 29>;
514				atmel,fifo-size = <16>;
515				status = "disabled";
516			};
517
518			pwm0: pwm@f802c000 {
519				compatible = "atmel,sama5d2-pwm";
520				reg = <0xf802c000 0x4000>;
521				interrupts = <38 IRQ_TYPE_LEVEL_HIGH 7>;
522				#pwm-cells = <3>;
523				clocks = <&pmc PMC_TYPE_PERIPHERAL 38>;
524				status = "disabled";
525			};
526
527			sfr: sfr@f8030000 {
528				compatible = "atmel,sama5d2-sfr", "syscon";
529				reg = <0xf8030000 0x98>;
530				status = "disabled";
531				secure-status = "okay";
532			};
533
534			flx0: flexcom@f8034000 {
535				compatible = "atmel,sama5d2-flexcom";
536				reg = <0xf8034000 0x200>;
537				clocks = <&pmc PMC_TYPE_PERIPHERAL 19>;
538				#address-cells = <1>;
539				#size-cells = <1>;
540				ranges = <0x0 0xf8034000 0x800>;
541				status = "disabled";
542
543				uart5: serial@200 {
544					compatible = "atmel,at91sam9260-usart";
545					reg = <0x200 0x200>;
546					interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
547					clocks = <&pmc PMC_TYPE_PERIPHERAL 19>;
548					clock-names = "usart";
549					dmas = <&dma0
550						(AT91_XDMAC_DT_MEM_IF(0) |
551						 AT91_XDMAC_DT_PER_IF(1) |
552						 AT91_XDMAC_DT_PERID(11))>,
553					       <&dma0
554						(AT91_XDMAC_DT_MEM_IF(0) |
555						 AT91_XDMAC_DT_PER_IF(1) |
556						 AT91_XDMAC_DT_PERID(12))>;
557					dma-names = "tx", "rx";
558					atmel,fifo-size = <32>;
559					status = "disabled";
560				};
561
562				spi2: spi@400 {
563					compatible = "atmel,at91rm9200-spi";
564					reg = <0x400 0x200>;
565					interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
566					#address-cells = <1>;
567					#size-cells = <0>;
568					clocks = <&pmc PMC_TYPE_PERIPHERAL 19>;
569					clock-names = "spi_clk";
570					dmas = <&dma0
571						(AT91_XDMAC_DT_MEM_IF(0) |
572						 AT91_XDMAC_DT_PER_IF(1) |
573						 AT91_XDMAC_DT_PERID(11))>,
574					       <&dma0
575						(AT91_XDMAC_DT_MEM_IF(0) |
576						 AT91_XDMAC_DT_PER_IF(1) |
577						 AT91_XDMAC_DT_PERID(12))>;
578					dma-names = "tx", "rx";
579					atmel,fifo-size = <16>;
580					status = "disabled";
581				};
582
583				i2c2: i2c@600 {
584					compatible = "atmel,sama5d2-i2c";
585					reg = <0x600 0x200>;
586					interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
587					#address-cells = <1>;
588					#size-cells = <0>;
589					clocks = <&pmc PMC_TYPE_PERIPHERAL 19>;
590					dmas = <&dma0
591						(AT91_XDMAC_DT_MEM_IF(0) |
592						 AT91_XDMAC_DT_PER_IF(1) |
593						 AT91_XDMAC_DT_PERID(11))>,
594					       <&dma0
595						(AT91_XDMAC_DT_MEM_IF(0) |
596						 AT91_XDMAC_DT_PER_IF(1) |
597						 AT91_XDMAC_DT_PERID(12))>;
598					dma-names = "tx", "rx";
599					atmel,fifo-size = <16>;
600					status = "disabled";
601				};
602			};
603
604			flx1: flexcom@f8038000 {
605				compatible = "atmel,sama5d2-flexcom";
606				reg = <0xf8038000 0x200>;
607				clocks = <&pmc PMC_TYPE_PERIPHERAL 20>;
608				#address-cells = <1>;
609				#size-cells = <1>;
610				ranges = <0x0 0xf8038000 0x800>;
611				status = "disabled";
612
613				uart6: serial@200 {
614					compatible = "atmel,at91sam9260-usart";
615					reg = <0x200 0x200>;
616					interrupts = <20 IRQ_TYPE_LEVEL_HIGH 7>;
617					clocks = <&pmc PMC_TYPE_PERIPHERAL 20>;
618					clock-names = "usart";
619					dmas = <&dma0
620						(AT91_XDMAC_DT_MEM_IF(0) |
621						 AT91_XDMAC_DT_PER_IF(1) |
622						 AT91_XDMAC_DT_PERID(13))>,
623					       <&dma0
624						(AT91_XDMAC_DT_MEM_IF(0) |
625						 AT91_XDMAC_DT_PER_IF(1) |
626						 AT91_XDMAC_DT_PERID(14))>;
627					dma-names = "tx", "rx";
628					atmel,fifo-size = <32>;
629					status = "disabled";
630				};
631
632				spi3: spi@400 {
633					compatible = "atmel,at91rm9200-spi";
634					reg = <0x400 0x200>;
635					interrupts = <20 IRQ_TYPE_LEVEL_HIGH 7>;
636					#address-cells = <1>;
637					#size-cells = <0>;
638					clocks = <&pmc PMC_TYPE_PERIPHERAL 20>;
639					clock-names = "spi_clk";
640					dmas = <&dma0
641						(AT91_XDMAC_DT_MEM_IF(0) |
642						 AT91_XDMAC_DT_PER_IF(1) |
643						 AT91_XDMAC_DT_PERID(13))>,
644					       <&dma0
645						(AT91_XDMAC_DT_MEM_IF(0) |
646						 AT91_XDMAC_DT_PER_IF(1) |
647						 AT91_XDMAC_DT_PERID(14))>;
648					dma-names = "tx", "rx";
649					atmel,fifo-size = <16>;
650					status = "disabled";
651				};
652
653				i2c3: i2c@600 {
654					compatible = "atmel,sama5d2-i2c";
655					reg = <0x600 0x200>;
656					interrupts = <20 IRQ_TYPE_LEVEL_HIGH 7>;
657					#address-cells = <1>;
658					#size-cells = <0>;
659					clocks = <&pmc PMC_TYPE_PERIPHERAL 20>;
660					dmas = <&dma0
661						(AT91_XDMAC_DT_MEM_IF(0) |
662						 AT91_XDMAC_DT_PER_IF(1) |
663						 AT91_XDMAC_DT_PERID(13))>,
664					       <&dma0
665						(AT91_XDMAC_DT_MEM_IF(0) |
666						 AT91_XDMAC_DT_PER_IF(1) |
667						 AT91_XDMAC_DT_PERID(14))>;
668					dma-names = "tx", "rx";
669					atmel,fifo-size = <16>;
670					status = "disabled";
671				};
672			};
673
674			securam: sram@f8044000 {
675				compatible = "atmel,sama5d2-securam", "mmio-sram";
676				reg = <0xf8044000 0x1420>;
677				clocks = <&pmc PMC_TYPE_PERIPHERAL 51>;
678				#address-cells = <1>;
679				#size-cells = <1>;
680				no-memory-wc;
681				ranges = <0 0xf8044000 0x1420>;
682				status = "disabled";
683				secure-status = "okay";
684			};
685
686			reset_controller: rstc@f8048000 {
687				compatible = "atmel,sama5d3-rstc";
688				reg = <0xf8048000 0x10>;
689				clocks = <&clk32k>;
690				status = "disabled";
691				secure-status = "okay";
692			};
693
694			shutdown_controller: shdwc@f8048010 {
695				compatible = "atmel,sama5d2-shdwc";
696				reg = <0xf8048010 0x10>;
697				clocks = <&clk32k>;
698				#address-cells = <1>;
699				#size-cells = <0>;
700				atmel,wakeup-rtc-timer;
701				status = "disabled";
702				secure-status = "okay";
703			};
704
705			pit: timer@f8048030 {
706				compatible = "atmel,at91sam9260-pit";
707				reg = <0xf8048030 0x10>;
708				interrupts = <3 IRQ_TYPE_LEVEL_HIGH 5>;
709				clocks = <&pmc PMC_TYPE_CORE PMC_MCK2>;
710			};
711
712			watchdog: watchdog@f8048040 {
713				compatible = "atmel,sama5d4-wdt";
714				reg = <0xf8048040 0x10>;
715				interrupts = <4 IRQ_TYPE_LEVEL_HIGH 7>;
716				clocks = <&clk32k>;
717				status = "disabled";
718				secure-status = "okay";
719			};
720
721			clk32k: sckc@f8048050 {
722				compatible = "atmel,sama5d4-sckc";
723				reg = <0xf8048050 0x4>;
724
725				clocks = <&slow_xtal>;
726				#clock-cells = <0>;
727				status = "disabled";
728				secure-status = "okay";
729			};
730
731			rtc: rtc@f80480b0 {
732				compatible = "atmel,sama5d2-rtc";
733				reg = <0xf80480b0 0x30>;
734				interrupts = <74 IRQ_TYPE_LEVEL_HIGH 7>;
735				clocks = <&clk32k>;
736				status = "disabled";
737				secure-status = "okay";
738			};
739
740			sfc: sfc@f804c000 {
741				compatible = "atmel,sama5d2-sfc";
742				reg = <0xf804c000 0x64>;
743				read-only;
744				status = "disabled";
745				secure-status = "okay";
746				#address-cells = <1>;
747				#size-cells = <1>;
748
749				sfc_kr: cell@0 {
750					reg = <0x0 0x4>;
751					bits = <0 7>;
752				};
753
754				sfc_dr0: cell@20 {
755					reg = <0x20 0x4>;
756				};
757			};
758
759			die_id: die_id {
760				compatible = "optee,nvmem-die-id";
761				nvmem-cells = <&sfc_kr>;
762				nvmem-cell-names = "die_id";
763			};
764
765			huk: huk {
766				compatible = "optee,nvmem-huk";
767				nvmem-cells = <&sfc_dr0>;
768				nvmem-cell-names = "hw_unique_key";
769			};
770
771			i2s0: i2s@f8050000 {
772				compatible = "atmel,sama5d2-i2s";
773				reg = <0xf8050000 0x100>;
774				interrupts = <54 IRQ_TYPE_LEVEL_HIGH 7>;
775				dmas = <&dma0
776					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
777					 AT91_XDMAC_DT_PERID(31))>,
778				       <&dma0
779					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
780					 AT91_XDMAC_DT_PERID(32))>;
781				dma-names = "tx", "rx";
782				clocks = <&pmc PMC_TYPE_PERIPHERAL 54>, <&pmc PMC_TYPE_GCK 54>;
783				clock-names = "pclk", "gclk";
784				assigned-clocks = <&pmc PMC_TYPE_CORE PMC_I2S0_MUX>;
785				assigned-clock-parents = <&pmc PMC_TYPE_GCK 54>;
786				status = "disabled";
787			};
788
789			can0: can@f8054000 {
790				compatible = "bosch,m_can";
791				reg = <0xf8054000 0x4000>, <0x210000 0x1c00>;
792				reg-names = "m_can", "message_ram";
793				interrupts = <56 IRQ_TYPE_LEVEL_HIGH 7>,
794					     <64 IRQ_TYPE_LEVEL_HIGH 7>;
795				interrupt-names = "int0", "int1";
796				clocks = <&pmc PMC_TYPE_PERIPHERAL 56>, <&pmc PMC_TYPE_GCK 56>;
797				clock-names = "hclk", "cclk";
798				assigned-clocks = <&pmc PMC_TYPE_GCK 56>;
799				assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
800				assigned-clock-rates = <40000000>;
801				bosch,mram-cfg = <0x0 0 0 64 0 0 32 32>;
802				status = "disabled";
803			};
804
805			spi1: spi@fc000000 {
806				compatible = "atmel,at91rm9200-spi";
807				reg = <0xfc000000 0x100>;
808				interrupts = <34 IRQ_TYPE_LEVEL_HIGH 7>;
809				dmas = <&dma0
810					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
811					 AT91_XDMAC_DT_PERID(8))>,
812				       <&dma0
813					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
814					 AT91_XDMAC_DT_PERID(9))>;
815				dma-names = "tx", "rx";
816				clocks = <&pmc PMC_TYPE_PERIPHERAL 34>;
817				clock-names = "spi_clk";
818				atmel,fifo-size = <16>;
819				#address-cells = <1>;
820				#size-cells = <0>;
821				status = "disabled";
822			};
823
824			uart3: serial@fc008000 {
825				compatible = "atmel,at91sam9260-usart";
826				reg = <0xfc008000 0x100>;
827				interrupts = <27 IRQ_TYPE_LEVEL_HIGH 7>;
828				dmas = <&dma1
829					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
830					 AT91_XDMAC_DT_PERID(41))>,
831				       <&dma1
832					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
833					 AT91_XDMAC_DT_PERID(42))>;
834				dma-names = "tx", "rx";
835				clocks = <&pmc PMC_TYPE_PERIPHERAL 27>;
836				clock-names = "usart";
837				status = "disabled";
838			};
839
840			uart4: serial@fc00c000 {
841				compatible = "atmel,at91sam9260-usart";
842				reg = <0xfc00c000 0x100>;
843				dmas = <&dma0
844					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
845					 AT91_XDMAC_DT_PERID(43))>,
846				       <&dma0
847					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
848					 AT91_XDMAC_DT_PERID(44))>;
849				dma-names = "tx", "rx";
850				interrupts = <28 IRQ_TYPE_LEVEL_HIGH 7>;
851				clocks = <&pmc PMC_TYPE_PERIPHERAL 28>;
852				clock-names = "usart";
853				status = "disabled";
854			};
855
856			flx2: flexcom@fc010000 {
857				compatible = "atmel,sama5d2-flexcom";
858				reg = <0xfc010000 0x200>;
859				clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
860				#address-cells = <1>;
861				#size-cells = <1>;
862				ranges = <0x0 0xfc010000 0x800>;
863				status = "disabled";
864
865				uart7: serial@200 {
866					compatible = "atmel,at91sam9260-usart";
867					reg = <0x200 0x200>;
868					interrupts = <21 IRQ_TYPE_LEVEL_HIGH 7>;
869					clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
870					clock-names = "usart";
871					dmas = <&dma0
872						(AT91_XDMAC_DT_MEM_IF(0) |
873						 AT91_XDMAC_DT_PER_IF(1) |
874						 AT91_XDMAC_DT_PERID(15))>,
875						<&dma0
876						(AT91_XDMAC_DT_MEM_IF(0) |
877						 AT91_XDMAC_DT_PER_IF(1) |
878						 AT91_XDMAC_DT_PERID(16))>;
879					dma-names = "tx", "rx";
880					atmel,fifo-size = <32>;
881					status = "disabled";
882				};
883
884				spi4: spi@400 {
885					compatible = "atmel,at91rm9200-spi";
886					reg = <0x400 0x200>;
887					interrupts = <21 IRQ_TYPE_LEVEL_HIGH 7>;
888					#address-cells = <1>;
889					#size-cells = <0>;
890					clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
891					clock-names = "spi_clk";
892					dmas = <&dma0
893						(AT91_XDMAC_DT_MEM_IF(0) |
894						 AT91_XDMAC_DT_PER_IF(1) |
895						 AT91_XDMAC_DT_PERID(15))>,
896						<&dma0
897						(AT91_XDMAC_DT_MEM_IF(0) |
898						 AT91_XDMAC_DT_PER_IF(1) |
899						 AT91_XDMAC_DT_PERID(16))>;
900					dma-names = "tx", "rx";
901					atmel,fifo-size = <16>;
902					status = "disabled";
903				};
904
905				i2c4: i2c@600 {
906					compatible = "atmel,sama5d2-i2c";
907					reg = <0x600 0x200>;
908					interrupts = <21 IRQ_TYPE_LEVEL_HIGH 7>;
909					#address-cells = <1>;
910					#size-cells = <0>;
911					clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
912					dmas = <&dma0
913						(AT91_XDMAC_DT_MEM_IF(0) |
914						 AT91_XDMAC_DT_PER_IF(1) |
915						 AT91_XDMAC_DT_PERID(15))>,
916						<&dma0
917						(AT91_XDMAC_DT_MEM_IF(0) |
918						 AT91_XDMAC_DT_PER_IF(1) |
919						 AT91_XDMAC_DT_PERID(16))>;
920					dma-names = "tx", "rx";
921					atmel,fifo-size = <16>;
922					status = "disabled";
923				};
924			};
925
926			flx3: flexcom@fc014000 {
927				compatible = "atmel,sama5d2-flexcom";
928				reg = <0xfc014000 0x200>;
929				clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
930				#address-cells = <1>;
931				#size-cells = <1>;
932				ranges = <0x0 0xfc014000 0x800>;
933				status = "disabled";
934
935				uart8: serial@200 {
936					compatible = "atmel,at91sam9260-usart";
937					reg = <0x200 0x200>;
938					interrupts = <22 IRQ_TYPE_LEVEL_HIGH 7>;
939					clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
940					clock-names = "usart";
941					dmas = <&dma0
942						(AT91_XDMAC_DT_MEM_IF(0) |
943						 AT91_XDMAC_DT_PER_IF(1) |
944						 AT91_XDMAC_DT_PERID(17))>,
945					       <&dma0
946						(AT91_XDMAC_DT_MEM_IF(0) |
947						 AT91_XDMAC_DT_PER_IF(1) |
948						 AT91_XDMAC_DT_PERID(18))>;
949					dma-names = "tx", "rx";
950					atmel,fifo-size = <32>;
951					status = "disabled";
952				};
953
954				spi5: spi@400 {
955					compatible = "atmel,at91rm9200-spi";
956					reg = <0x400 0x200>;
957					interrupts = <22 IRQ_TYPE_LEVEL_HIGH 7>;
958					#address-cells = <1>;
959					#size-cells = <0>;
960					clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
961					clock-names = "spi_clk";
962					dmas = <&dma0
963						(AT91_XDMAC_DT_MEM_IF(0) |
964						 AT91_XDMAC_DT_PER_IF(1) |
965						 AT91_XDMAC_DT_PERID(17))>,
966					       <&dma0
967						(AT91_XDMAC_DT_MEM_IF(0) |
968						 AT91_XDMAC_DT_PER_IF(1) |
969						 AT91_XDMAC_DT_PERID(18))>;
970					dma-names = "tx", "rx";
971					atmel,fifo-size = <16>;
972					status = "disabled";
973				};
974
975				i2c5: i2c@600 {
976					compatible = "atmel,sama5d2-i2c";
977					reg = <0x600 0x200>;
978					interrupts = <22 IRQ_TYPE_LEVEL_HIGH 7>;
979					#address-cells = <1>;
980					#size-cells = <0>;
981					clocks = <&pmc PMC_TYPE_PERIPHERAL 22>;
982					dmas = <&dma0
983						(AT91_XDMAC_DT_MEM_IF(0) |
984						 AT91_XDMAC_DT_PER_IF(1) |
985						 AT91_XDMAC_DT_PERID(17))>,
986					       <&dma0
987						(AT91_XDMAC_DT_MEM_IF(0) |
988						 AT91_XDMAC_DT_PER_IF(1) |
989						 AT91_XDMAC_DT_PERID(18))>;
990					dma-names = "tx", "rx";
991					atmel,fifo-size = <16>;
992					status = "disabled";
993				};
994
995			};
996
997			flx4: flexcom@fc018000 {
998				compatible = "atmel,sama5d2-flexcom";
999				reg = <0xfc018000 0x200>;
1000				clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
1001				#address-cells = <1>;
1002				#size-cells = <1>;
1003				ranges = <0x0 0xfc018000 0x800>;
1004				status = "disabled";
1005
1006				uart9: serial@200 {
1007					compatible = "atmel,at91sam9260-usart";
1008					reg = <0x200 0x200>;
1009					interrupts = <23 IRQ_TYPE_LEVEL_HIGH 7>;
1010					clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
1011					clock-names = "usart";
1012					dmas = <&dma0
1013						(AT91_XDMAC_DT_MEM_IF(0) |
1014						 AT91_XDMAC_DT_PER_IF(1) |
1015						 AT91_XDMAC_DT_PERID(19))>,
1016					       <&dma0
1017						(AT91_XDMAC_DT_MEM_IF(0) |
1018						 AT91_XDMAC_DT_PER_IF(1) |
1019						 AT91_XDMAC_DT_PERID(20))>;
1020					dma-names = "tx", "rx";
1021					atmel,fifo-size = <32>;
1022					status = "disabled";
1023				};
1024
1025				spi6: spi@400 {
1026					compatible = "atmel,at91rm9200-spi";
1027					reg = <0x400 0x200>;
1028					interrupts = <23 IRQ_TYPE_LEVEL_HIGH 7>;
1029					#address-cells = <1>;
1030					#size-cells = <0>;
1031					clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
1032					clock-names = "spi_clk";
1033					dmas = <&dma0
1034						(AT91_XDMAC_DT_MEM_IF(0) |
1035						 AT91_XDMAC_DT_PER_IF(1) |
1036						 AT91_XDMAC_DT_PERID(19))>,
1037					       <&dma0
1038						(AT91_XDMAC_DT_MEM_IF(0) |
1039						 AT91_XDMAC_DT_PER_IF(1) |
1040						 AT91_XDMAC_DT_PERID(20))>;
1041					dma-names = "tx", "rx";
1042					atmel,fifo-size = <16>;
1043					status = "disabled";
1044				};
1045
1046				i2c6: i2c@600 {
1047					compatible = "atmel,sama5d2-i2c";
1048					reg = <0x600 0x200>;
1049					interrupts = <23 IRQ_TYPE_LEVEL_HIGH 7>;
1050					#address-cells = <1>;
1051					#size-cells = <0>;
1052					clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
1053					dmas = <&dma0
1054						(AT91_XDMAC_DT_MEM_IF(0) |
1055						 AT91_XDMAC_DT_PER_IF(1) |
1056						 AT91_XDMAC_DT_PERID(19))>,
1057					       <&dma0
1058						(AT91_XDMAC_DT_MEM_IF(0) |
1059						 AT91_XDMAC_DT_PER_IF(1) |
1060						 AT91_XDMAC_DT_PERID(20))>;
1061					dma-names = "tx", "rx";
1062					atmel,fifo-size = <16>;
1063					status = "disabled";
1064				};
1065			};
1066
1067			trng@fc01c000 {
1068				compatible = "atmel,at91sam9g45-trng";
1069				reg = <0xfc01c000 0x100>;
1070				interrupts = <47 IRQ_TYPE_LEVEL_HIGH 0>;
1071				clocks = <&pmc PMC_TYPE_PERIPHERAL 47>;
1072				status = "disabled";
1073				secure-status = "okay";
1074			};
1075
1076			aic: interrupt-controller@fc020000 {
1077				#interrupt-cells = <3>;
1078				compatible = "atmel,sama5d2-aic";
1079				interrupt-controller;
1080				reg = <0xfc020000 0x200>;
1081				atmel,external-irqs = <49>;
1082			};
1083
1084			saic: interrupt-controller@f803c000 {
1085				#interrupt-cells = <3>;
1086				compatible = "atmel,sama5d2-saic";
1087				interrupt-controller;
1088				reg = <0xf803c000 0x200>;
1089				atmel,external-irqs = <49>;
1090				status = "disabled";
1091				secure-status = "okay";
1092			};
1093
1094			i2c1: i2c@fc028000 {
1095				compatible = "atmel,sama5d2-i2c";
1096				reg = <0xfc028000 0x100>;
1097				interrupts = <30 IRQ_TYPE_LEVEL_HIGH 7>;
1098				dmas = <&dma0
1099					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1100					 AT91_XDMAC_DT_PERID(2))>,
1101				       <&dma0
1102					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1103					 AT91_XDMAC_DT_PERID(3))>;
1104				dma-names = "tx", "rx";
1105				#address-cells = <1>;
1106				#size-cells = <0>;
1107				clocks = <&pmc PMC_TYPE_PERIPHERAL 30>;
1108				atmel,fifo-size = <16>;
1109				status = "disabled";
1110			};
1111
1112			adc: adc@fc030000 {
1113				compatible = "atmel,sama5d2-adc";
1114				reg = <0xfc030000 0x100>;
1115				interrupts = <40 IRQ_TYPE_LEVEL_HIGH 7>;
1116				clocks = <&pmc PMC_TYPE_PERIPHERAL 40>;
1117				clock-names = "adc_clk";
1118				dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(25))>;
1119				dma-names = "rx";
1120				atmel,min-sample-rate-hz = <200000>;
1121				atmel,max-sample-rate-hz = <20000000>;
1122				atmel,startup-time-ms = <4>;
1123				atmel,trigger-edge-type = <IRQ_TYPE_EDGE_RISING>;
1124				#io-channel-cells = <1>;
1125				status = "disabled";
1126			};
1127
1128			resistive_touch: resistive-touch {
1129				compatible = "resistive-adc-touch";
1130				io-channels = <&adc AT91_SAMA5D2_ADC_X_CHANNEL>,
1131					      <&adc AT91_SAMA5D2_ADC_Y_CHANNEL>,
1132					      <&adc AT91_SAMA5D2_ADC_P_CHANNEL>;
1133				io-channel-names = "x", "y", "pressure";
1134				touchscreen-min-pressure = <50000>;
1135				status = "disabled";
1136			};
1137
1138			pioA: pinctrl@fc039000 {
1139				compatible = "atmel,sama5d2-pinctrl";
1140				reg = <0xfc039000 0x600>;
1141				interrupts = <18 IRQ_TYPE_LEVEL_HIGH 7>,
1142					     <68 IRQ_TYPE_LEVEL_HIGH 7>,
1143					     <69 IRQ_TYPE_LEVEL_HIGH 7>,
1144					     <70 IRQ_TYPE_LEVEL_HIGH 7>;
1145				interrupt-controller;
1146				#interrupt-cells = <2>;
1147				gpio-controller;
1148				#gpio-cells = <2>;
1149				clocks = <&pmc PMC_TYPE_PERIPHERAL 18>;
1150				status = "disabled";
1151				secure-status = "okay";
1152			};
1153
1154			pioBU: secumod@fc040000 {
1155				compatible = "atmel,sama5d2-secumod", "syscon";
1156				reg = <0xfc040000 0x100>;
1157
1158				gpio-controller;
1159				#gpio-cells = <2>;
1160				status = "disabled";
1161				secure-status = "okay";
1162			};
1163
1164			tdes@fc044000 {
1165				compatible = "atmel,at91sam9g46-tdes";
1166				reg = <0xfc044000 0x100>;
1167				interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>;
1168				dmas = <&dma0
1169					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1170					 AT91_XDMAC_DT_PERID(28))>,
1171				       <&dma0
1172					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1173					 AT91_XDMAC_DT_PERID(29))>;
1174				dma-names = "tx", "rx";
1175				clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
1176				clock-names = "tdes_clk";
1177				status = "okay";
1178			};
1179
1180			classd: classd@fc048000 {
1181				compatible = "atmel,sama5d2-classd";
1182				reg = <0xfc048000 0x100>;
1183				interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>;
1184				dmas = <&dma0
1185					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1186					 AT91_XDMAC_DT_PERID(47))>;
1187				dma-names = "tx";
1188				clocks = <&pmc PMC_TYPE_PERIPHERAL 59>, <&pmc PMC_TYPE_GCK 59>;
1189				clock-names = "pclk", "gclk";
1190				status = "disabled";
1191			};
1192
1193			i2s1: i2s@fc04c000 {
1194				compatible = "atmel,sama5d2-i2s";
1195				reg = <0xfc04c000 0x100>;
1196				interrupts = <55 IRQ_TYPE_LEVEL_HIGH 7>;
1197				dmas = <&dma0
1198					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1199					 AT91_XDMAC_DT_PERID(33))>,
1200				       <&dma0
1201					(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
1202					 AT91_XDMAC_DT_PERID(34))>;
1203				dma-names = "tx", "rx";
1204				clocks = <&pmc PMC_TYPE_PERIPHERAL 55>, <&pmc PMC_TYPE_GCK 55>;
1205				clock-names = "pclk", "gclk";
1206				assigned-clocks = <&pmc PMC_TYPE_CORE PMC_I2S1_MUX>;
1207				assigned-parrents = <&pmc PMC_TYPE_GCK 55>;
1208				status = "disabled";
1209			};
1210
1211			can1: can@fc050000 {
1212				compatible = "bosch,m_can";
1213				reg = <0xfc050000 0x4000>, <0x210000 0x3800>;
1214				reg-names = "m_can", "message_ram";
1215				interrupts = <57 IRQ_TYPE_LEVEL_HIGH 7>,
1216					     <65 IRQ_TYPE_LEVEL_HIGH 7>;
1217				interrupt-names = "int0", "int1";
1218				clocks = <&pmc PMC_TYPE_PERIPHERAL 57>, <&pmc PMC_TYPE_GCK 57>;
1219				clock-names = "hclk", "cclk";
1220				assigned-clocks = <&pmc PMC_TYPE_GCK 57>;
1221				assigned-clock-parents = <&pmc PMC_TYPE_CORE PMC_UTMI>;
1222				assigned-clock-rates = <40000000>;
1223				bosch,mram-cfg = <0x1c00 0 0 64 0 0 32 32>;
1224				status = "disabled";
1225			};
1226
1227			sfrbu: sfr@fc05c000 {
1228				compatible = "atmel,sama5d2-sfrbu", "syscon";
1229				reg = <0xfc05c000 0x20>;
1230			};
1231
1232			chipid@fc069000 {
1233				compatible = "atmel,sama5d2-chipid";
1234				reg = <0xfc069000 0x8>;
1235			};
1236		};
1237	};
1238};
1239