xref: /freebsd-src/sys/contrib/device-tree/src/arm64/xilinx/zynqmp.dtsi (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
2c66ec88fSEmmanuel Vadot/*
3c66ec88fSEmmanuel Vadot * dts file for Xilinx ZynqMP
4c66ec88fSEmmanuel Vadot *
58cc087a1SEmmanuel Vadot * (C) Copyright 2014 - 2021, Xilinx, Inc.
6c66ec88fSEmmanuel Vadot *
7f126890aSEmmanuel Vadot * Michal Simek <michal.simek@amd.com>
8c66ec88fSEmmanuel Vadot *
9c66ec88fSEmmanuel Vadot * This program is free software; you can redistribute it and/or
10c66ec88fSEmmanuel Vadot * modify it under the terms of the GNU General Public License as
11c66ec88fSEmmanuel Vadot * published by the Free Software Foundation; either version 2 of
12c66ec88fSEmmanuel Vadot * the License, or (at your option) any later version.
13c66ec88fSEmmanuel Vadot */
14c66ec88fSEmmanuel Vadot
155def4c47SEmmanuel Vadot#include <dt-bindings/dma/xlnx-zynqmp-dpdma.h>
16cb7aa33aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
17aa1a8ff2SEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
18aa1a8ff2SEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
19c66ec88fSEmmanuel Vadot#include <dt-bindings/power/xlnx-zynqmp-power.h>
20c66ec88fSEmmanuel Vadot#include <dt-bindings/reset/xlnx-zynqmp-resets.h>
21c66ec88fSEmmanuel Vadot
22c66ec88fSEmmanuel Vadot/ {
23c66ec88fSEmmanuel Vadot	compatible = "xlnx,zynqmp";
24c66ec88fSEmmanuel Vadot	#address-cells = <2>;
25c66ec88fSEmmanuel Vadot	#size-cells = <2>;
26c66ec88fSEmmanuel Vadot
2701950c46SEmmanuel Vadot	options {
2801950c46SEmmanuel Vadot		u-boot {
2901950c46SEmmanuel Vadot			compatible = "u-boot,config";
3001950c46SEmmanuel Vadot			bootscr-address = /bits/ 64 <0x20000000>;
3101950c46SEmmanuel Vadot		};
3201950c46SEmmanuel Vadot	};
3301950c46SEmmanuel Vadot
34c66ec88fSEmmanuel Vadot	cpus {
35c66ec88fSEmmanuel Vadot		#address-cells = <1>;
36c66ec88fSEmmanuel Vadot		#size-cells = <0>;
37c66ec88fSEmmanuel Vadot
38c66ec88fSEmmanuel Vadot		cpu0: cpu@0 {
39c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
40c66ec88fSEmmanuel Vadot			device_type = "cpu";
41c66ec88fSEmmanuel Vadot			enable-method = "psci";
42c66ec88fSEmmanuel Vadot			operating-points-v2 = <&cpu_opp_table>;
43c66ec88fSEmmanuel Vadot			reg = <0x0>;
44c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP_0>;
45aa1a8ff2SEmmanuel Vadot			next-level-cache = <&L2>;
46c66ec88fSEmmanuel Vadot		};
47c66ec88fSEmmanuel Vadot
48c66ec88fSEmmanuel Vadot		cpu1: cpu@1 {
49c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
50c66ec88fSEmmanuel Vadot			device_type = "cpu";
51c66ec88fSEmmanuel Vadot			enable-method = "psci";
52c66ec88fSEmmanuel Vadot			reg = <0x1>;
53c66ec88fSEmmanuel Vadot			operating-points-v2 = <&cpu_opp_table>;
54c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP_0>;
55aa1a8ff2SEmmanuel Vadot			next-level-cache = <&L2>;
56c66ec88fSEmmanuel Vadot		};
57c66ec88fSEmmanuel Vadot
58c66ec88fSEmmanuel Vadot		cpu2: cpu@2 {
59c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
60c66ec88fSEmmanuel Vadot			device_type = "cpu";
61c66ec88fSEmmanuel Vadot			enable-method = "psci";
62c66ec88fSEmmanuel Vadot			reg = <0x2>;
63c66ec88fSEmmanuel Vadot			operating-points-v2 = <&cpu_opp_table>;
64c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP_0>;
65aa1a8ff2SEmmanuel Vadot			next-level-cache = <&L2>;
66c66ec88fSEmmanuel Vadot		};
67c66ec88fSEmmanuel Vadot
68c66ec88fSEmmanuel Vadot		cpu3: cpu@3 {
69c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
70c66ec88fSEmmanuel Vadot			device_type = "cpu";
71c66ec88fSEmmanuel Vadot			enable-method = "psci";
72c66ec88fSEmmanuel Vadot			reg = <0x3>;
73c66ec88fSEmmanuel Vadot			operating-points-v2 = <&cpu_opp_table>;
74c66ec88fSEmmanuel Vadot			cpu-idle-states = <&CPU_SLEEP_0>;
75aa1a8ff2SEmmanuel Vadot			next-level-cache = <&L2>;
76aa1a8ff2SEmmanuel Vadot		};
77aa1a8ff2SEmmanuel Vadot
78aa1a8ff2SEmmanuel Vadot		L2: l2-cache {
79aa1a8ff2SEmmanuel Vadot			compatible = "cache";
80aa1a8ff2SEmmanuel Vadot			cache-level = <2>;
81aa1a8ff2SEmmanuel Vadot			cache-unified;
82c66ec88fSEmmanuel Vadot		};
83c66ec88fSEmmanuel Vadot
84c66ec88fSEmmanuel Vadot		idle-states {
85c66ec88fSEmmanuel Vadot			entry-method = "psci";
86c66ec88fSEmmanuel Vadot
87c66ec88fSEmmanuel Vadot			CPU_SLEEP_0: cpu-sleep-0 {
88c66ec88fSEmmanuel Vadot				compatible = "arm,idle-state";
89c66ec88fSEmmanuel Vadot				arm,psci-suspend-param = <0x40000000>;
90c66ec88fSEmmanuel Vadot				local-timer-stop;
91c66ec88fSEmmanuel Vadot				entry-latency-us = <300>;
92c66ec88fSEmmanuel Vadot				exit-latency-us = <600>;
93c66ec88fSEmmanuel Vadot				min-residency-us = <10000>;
94c66ec88fSEmmanuel Vadot			};
95c66ec88fSEmmanuel Vadot		};
96c66ec88fSEmmanuel Vadot	};
97c66ec88fSEmmanuel Vadot
98cb7aa33aSEmmanuel Vadot	cpu_opp_table: opp-table-cpu {
99c66ec88fSEmmanuel Vadot		compatible = "operating-points-v2";
100c66ec88fSEmmanuel Vadot		opp-shared;
101c66ec88fSEmmanuel Vadot		opp00 {
102c66ec88fSEmmanuel Vadot			opp-hz = /bits/ 64 <1199999988>;
103c66ec88fSEmmanuel Vadot			opp-microvolt = <1000000>;
104c66ec88fSEmmanuel Vadot			clock-latency-ns = <500000>;
105c66ec88fSEmmanuel Vadot		};
106c66ec88fSEmmanuel Vadot		opp01 {
107c66ec88fSEmmanuel Vadot			opp-hz = /bits/ 64 <599999994>;
108c66ec88fSEmmanuel Vadot			opp-microvolt = <1000000>;
109c66ec88fSEmmanuel Vadot			clock-latency-ns = <500000>;
110c66ec88fSEmmanuel Vadot		};
111c66ec88fSEmmanuel Vadot		opp02 {
112c66ec88fSEmmanuel Vadot			opp-hz = /bits/ 64 <399999996>;
113c66ec88fSEmmanuel Vadot			opp-microvolt = <1000000>;
114c66ec88fSEmmanuel Vadot			clock-latency-ns = <500000>;
115c66ec88fSEmmanuel Vadot		};
116c66ec88fSEmmanuel Vadot		opp03 {
117c66ec88fSEmmanuel Vadot			opp-hz = /bits/ 64 <299999997>;
118c66ec88fSEmmanuel Vadot			opp-microvolt = <1000000>;
119c66ec88fSEmmanuel Vadot			clock-latency-ns = <500000>;
120c66ec88fSEmmanuel Vadot		};
121c66ec88fSEmmanuel Vadot	};
122c66ec88fSEmmanuel Vadot
1238bab661aSEmmanuel Vadot	reserved-memory {
1248bab661aSEmmanuel Vadot		#address-cells = <2>;
1258bab661aSEmmanuel Vadot		#size-cells = <2>;
1268bab661aSEmmanuel Vadot		ranges;
1278bab661aSEmmanuel Vadot
1288bab661aSEmmanuel Vadot		rproc_0_fw_image: memory@3ed00000 {
1298bab661aSEmmanuel Vadot			no-map;
1308bab661aSEmmanuel Vadot			reg = <0x0 0x3ed00000 0x0 0x40000>;
1318bab661aSEmmanuel Vadot		};
1328bab661aSEmmanuel Vadot
1338bab661aSEmmanuel Vadot		rproc_1_fw_image: memory@3ef00000 {
1348bab661aSEmmanuel Vadot			no-map;
1358bab661aSEmmanuel Vadot			reg = <0x0 0x3ef00000 0x0 0x40000>;
1368bab661aSEmmanuel Vadot		};
1378bab661aSEmmanuel Vadot	};
1388bab661aSEmmanuel Vadot
1398d13bc63SEmmanuel Vadot	zynqmp_ipi: zynqmp-ipi {
140f126890aSEmmanuel Vadot		bootph-all;
1415def4c47SEmmanuel Vadot		compatible = "xlnx,zynqmp-ipi-mailbox";
1425def4c47SEmmanuel Vadot		interrupt-parent = <&gic>;
143aa1a8ff2SEmmanuel Vadot		interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
1445def4c47SEmmanuel Vadot		xlnx,ipi-id = <0>;
1455def4c47SEmmanuel Vadot		#address-cells = <2>;
1465def4c47SEmmanuel Vadot		#size-cells = <2>;
1475def4c47SEmmanuel Vadot		ranges;
1485def4c47SEmmanuel Vadot
149f126890aSEmmanuel Vadot		ipi_mailbox_pmu1: mailbox@ff9905c0 {
150f126890aSEmmanuel Vadot			bootph-all;
1518d13bc63SEmmanuel Vadot			compatible = "xlnx,zynqmp-ipi-dest-mailbox";
1525def4c47SEmmanuel Vadot			reg = <0x0 0xff9905c0 0x0 0x20>,
1535def4c47SEmmanuel Vadot			      <0x0 0xff9905e0 0x0 0x20>,
1545def4c47SEmmanuel Vadot			      <0x0 0xff990e80 0x0 0x20>,
1555def4c47SEmmanuel Vadot			      <0x0 0xff990ea0 0x0 0x20>;
1565def4c47SEmmanuel Vadot			reg-names = "local_request_region",
1575def4c47SEmmanuel Vadot				    "local_response_region",
1585def4c47SEmmanuel Vadot				    "remote_request_region",
1595def4c47SEmmanuel Vadot				    "remote_response_region";
1605def4c47SEmmanuel Vadot			#mbox-cells = <1>;
1615def4c47SEmmanuel Vadot			xlnx,ipi-id = <4>;
1625def4c47SEmmanuel Vadot		};
1635def4c47SEmmanuel Vadot	};
1645def4c47SEmmanuel Vadot
165c66ec88fSEmmanuel Vadot	dcc: dcc {
166c66ec88fSEmmanuel Vadot		compatible = "arm,dcc";
167c66ec88fSEmmanuel Vadot		status = "disabled";
168f126890aSEmmanuel Vadot		bootph-all;
169c66ec88fSEmmanuel Vadot	};
170c66ec88fSEmmanuel Vadot
171c66ec88fSEmmanuel Vadot	pmu {
1727d0873ebSEmmanuel Vadot		compatible = "arm,cortex-a53-pmu";
173c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
174aa1a8ff2SEmmanuel Vadot		interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>,
175aa1a8ff2SEmmanuel Vadot			     <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>,
176aa1a8ff2SEmmanuel Vadot			     <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
177aa1a8ff2SEmmanuel Vadot			     <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
178f126890aSEmmanuel Vadot		interrupt-affinity = <&cpu0>,
179f126890aSEmmanuel Vadot				     <&cpu1>,
180f126890aSEmmanuel Vadot				     <&cpu2>,
181f126890aSEmmanuel Vadot				     <&cpu3>;
182c66ec88fSEmmanuel Vadot	};
183c66ec88fSEmmanuel Vadot
184c66ec88fSEmmanuel Vadot	psci {
185c66ec88fSEmmanuel Vadot		compatible = "arm,psci-0.2";
186c66ec88fSEmmanuel Vadot		method = "smc";
187c66ec88fSEmmanuel Vadot	};
188c66ec88fSEmmanuel Vadot
189c66ec88fSEmmanuel Vadot	firmware {
19001950c46SEmmanuel Vadot		optee: optee  {
19101950c46SEmmanuel Vadot			compatible = "linaro,optee-tz";
19201950c46SEmmanuel Vadot			method = "smc";
19301950c46SEmmanuel Vadot		};
19401950c46SEmmanuel Vadot
195c66ec88fSEmmanuel Vadot		zynqmp_firmware: zynqmp-firmware {
196c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-firmware";
197c66ec88fSEmmanuel Vadot			#power-domain-cells = <1>;
198c66ec88fSEmmanuel Vadot			method = "smc";
199f126890aSEmmanuel Vadot			bootph-all;
200c66ec88fSEmmanuel Vadot
20101950c46SEmmanuel Vadot			zynqmp_power: power-management {
202f126890aSEmmanuel Vadot				bootph-all;
203c66ec88fSEmmanuel Vadot				compatible = "xlnx,zynqmp-power";
204c66ec88fSEmmanuel Vadot				interrupt-parent = <&gic>;
205aa1a8ff2SEmmanuel Vadot				interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
2065def4c47SEmmanuel Vadot				mboxes = <&ipi_mailbox_pmu1 0>, <&ipi_mailbox_pmu1 1>;
2075def4c47SEmmanuel Vadot				mbox-names = "tx", "rx";
208c66ec88fSEmmanuel Vadot			};
209c66ec88fSEmmanuel Vadot
210*0e8011faSEmmanuel Vadot			soc-nvmem {
211c66ec88fSEmmanuel Vadot				compatible = "xlnx,zynqmp-nvmem-fw";
212*0e8011faSEmmanuel Vadot				nvmem-layout {
213*0e8011faSEmmanuel Vadot					compatible = "fixed-layout";
214c66ec88fSEmmanuel Vadot					#address-cells = <1>;
215c66ec88fSEmmanuel Vadot					#size-cells = <1>;
216c66ec88fSEmmanuel Vadot
2178d13bc63SEmmanuel Vadot					soc_revision: soc-revision@0 {
218c66ec88fSEmmanuel Vadot						reg = <0x0 0x4>;
219c66ec88fSEmmanuel Vadot					};
220*0e8011faSEmmanuel Vadot					/* efuse access */
221*0e8011faSEmmanuel Vadot					efuse_dna: efuse-dna@c {
222*0e8011faSEmmanuel Vadot						reg = <0xc 0xc>;
223*0e8011faSEmmanuel Vadot					};
224*0e8011faSEmmanuel Vadot					efuse_usr0: efuse-usr0@20 {
225*0e8011faSEmmanuel Vadot						reg = <0x20 0x4>;
226*0e8011faSEmmanuel Vadot					};
227*0e8011faSEmmanuel Vadot					efuse_usr1: efuse-usr1@24 {
228*0e8011faSEmmanuel Vadot						reg = <0x24 0x4>;
229*0e8011faSEmmanuel Vadot					};
230*0e8011faSEmmanuel Vadot					efuse_usr2: efuse-usr2@28 {
231*0e8011faSEmmanuel Vadot						reg = <0x28 0x4>;
232*0e8011faSEmmanuel Vadot					};
233*0e8011faSEmmanuel Vadot					efuse_usr3: efuse-usr3@2c {
234*0e8011faSEmmanuel Vadot						reg = <0x2c 0x4>;
235*0e8011faSEmmanuel Vadot					};
236*0e8011faSEmmanuel Vadot					efuse_usr4: efuse-usr4@30 {
237*0e8011faSEmmanuel Vadot						reg = <0x30 0x4>;
238*0e8011faSEmmanuel Vadot					};
239*0e8011faSEmmanuel Vadot					efuse_usr5: efuse-usr5@34 {
240*0e8011faSEmmanuel Vadot						reg = <0x34 0x4>;
241*0e8011faSEmmanuel Vadot					};
242*0e8011faSEmmanuel Vadot					efuse_usr6: efuse-usr6@38 {
243*0e8011faSEmmanuel Vadot						reg = <0x38 0x4>;
244*0e8011faSEmmanuel Vadot					};
245*0e8011faSEmmanuel Vadot					efuse_usr7: efuse-usr7@3c {
246*0e8011faSEmmanuel Vadot						reg = <0x3c 0x4>;
247*0e8011faSEmmanuel Vadot					};
248*0e8011faSEmmanuel Vadot					efuse_miscusr: efuse-miscusr@40 {
249*0e8011faSEmmanuel Vadot						reg = <0x40 0x4>;
250*0e8011faSEmmanuel Vadot					};
251*0e8011faSEmmanuel Vadot					efuse_chash: efuse-chash@50 {
252*0e8011faSEmmanuel Vadot						reg = <0x50 0x4>;
253*0e8011faSEmmanuel Vadot					};
254*0e8011faSEmmanuel Vadot					efuse_pufmisc: efuse-pufmisc@54 {
255*0e8011faSEmmanuel Vadot						reg = <0x54 0x4>;
256*0e8011faSEmmanuel Vadot					};
257*0e8011faSEmmanuel Vadot					efuse_sec: efuse-sec@58 {
258*0e8011faSEmmanuel Vadot						reg = <0x58 0x4>;
259*0e8011faSEmmanuel Vadot					};
260*0e8011faSEmmanuel Vadot					efuse_spkid: efuse-spkid@5c {
261*0e8011faSEmmanuel Vadot						reg = <0x5c 0x4>;
262*0e8011faSEmmanuel Vadot					};
263*0e8011faSEmmanuel Vadot					efuse_aeskey: efuse-aeskey@60 {
264*0e8011faSEmmanuel Vadot						reg = <0x60 0x20>;
265*0e8011faSEmmanuel Vadot					};
266*0e8011faSEmmanuel Vadot					efuse_ppk0hash: efuse-ppk0hash@a0 {
267*0e8011faSEmmanuel Vadot						reg = <0xa0 0x30>;
268*0e8011faSEmmanuel Vadot					};
269*0e8011faSEmmanuel Vadot					efuse_ppk1hash: efuse-ppk1hash@d0 {
270*0e8011faSEmmanuel Vadot						reg = <0xd0 0x30>;
271*0e8011faSEmmanuel Vadot					};
272*0e8011faSEmmanuel Vadot					efuse_pufuser: efuse-pufuser@100 {
273*0e8011faSEmmanuel Vadot						reg = <0x100 0x7F>;
274*0e8011faSEmmanuel Vadot					};
275*0e8011faSEmmanuel Vadot				};
276c66ec88fSEmmanuel Vadot			};
277c66ec88fSEmmanuel Vadot
278c66ec88fSEmmanuel Vadot			zynqmp_pcap: pcap {
279c66ec88fSEmmanuel Vadot				compatible = "xlnx,zynqmp-pcap-fpga";
280c66ec88fSEmmanuel Vadot			};
281c66ec88fSEmmanuel Vadot
282c66ec88fSEmmanuel Vadot			xlnx_aes: zynqmp-aes {
283c66ec88fSEmmanuel Vadot				compatible = "xlnx,zynqmp-aes";
284c66ec88fSEmmanuel Vadot			};
2855def4c47SEmmanuel Vadot
2865def4c47SEmmanuel Vadot			zynqmp_reset: reset-controller {
2875def4c47SEmmanuel Vadot				compatible = "xlnx,zynqmp-reset";
2885def4c47SEmmanuel Vadot				#reset-cells = <1>;
2895def4c47SEmmanuel Vadot			};
2908cc087a1SEmmanuel Vadot
2918cc087a1SEmmanuel Vadot			pinctrl0: pinctrl {
2928cc087a1SEmmanuel Vadot				compatible = "xlnx,zynqmp-pinctrl";
2938cc087a1SEmmanuel Vadot				status = "disabled";
2948cc087a1SEmmanuel Vadot			};
295cb7aa33aSEmmanuel Vadot
296cb7aa33aSEmmanuel Vadot			modepin_gpio: gpio {
297cb7aa33aSEmmanuel Vadot				compatible = "xlnx,zynqmp-gpio-modepin";
298cb7aa33aSEmmanuel Vadot				gpio-controller;
299cb7aa33aSEmmanuel Vadot				#gpio-cells = <2>;
300cb7aa33aSEmmanuel Vadot			};
301c66ec88fSEmmanuel Vadot		};
302c66ec88fSEmmanuel Vadot	};
303c66ec88fSEmmanuel Vadot
304c66ec88fSEmmanuel Vadot	timer {
305c66ec88fSEmmanuel Vadot		compatible = "arm,armv8-timer";
306c66ec88fSEmmanuel Vadot		interrupt-parent = <&gic>;
307aa1a8ff2SEmmanuel Vadot		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
308aa1a8ff2SEmmanuel Vadot			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
309aa1a8ff2SEmmanuel Vadot			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
310aa1a8ff2SEmmanuel Vadot			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
311c66ec88fSEmmanuel Vadot	};
312c66ec88fSEmmanuel Vadot
313*0e8011faSEmmanuel Vadot	fpga_full: fpga-region {
314c66ec88fSEmmanuel Vadot		compatible = "fpga-region";
315c66ec88fSEmmanuel Vadot		fpga-mgr = <&zynqmp_pcap>;
316c66ec88fSEmmanuel Vadot		#address-cells = <2>;
317c66ec88fSEmmanuel Vadot		#size-cells = <2>;
318c66ec88fSEmmanuel Vadot		ranges;
319c66ec88fSEmmanuel Vadot	};
320c66ec88fSEmmanuel Vadot
321*0e8011faSEmmanuel Vadot	rproc_lockstep: remoteproc@ffe00000 {
3228bab661aSEmmanuel Vadot		compatible = "xlnx,zynqmp-r5fss";
3238bab661aSEmmanuel Vadot		xlnx,cluster-mode = <1>;
324*0e8011faSEmmanuel Vadot		xlnx,tcm-mode = <1>;
3258bab661aSEmmanuel Vadot
326*0e8011faSEmmanuel Vadot		#address-cells = <2>;
327*0e8011faSEmmanuel Vadot		#size-cells = <2>;
328*0e8011faSEmmanuel Vadot
329*0e8011faSEmmanuel Vadot		ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x10000>,
330*0e8011faSEmmanuel Vadot			 <0x0 0x20000 0x0 0xffe20000 0x0 0x10000>,
331*0e8011faSEmmanuel Vadot			 <0x0 0x10000 0x0 0xffe10000 0x0 0x10000>,
332*0e8011faSEmmanuel Vadot			 <0x0 0x30000 0x0 0xffe30000 0x0 0x10000>;
333*0e8011faSEmmanuel Vadot
334*0e8011faSEmmanuel Vadot		r5f@0 {
3358bab661aSEmmanuel Vadot			compatible = "xlnx,zynqmp-r5f";
336*0e8011faSEmmanuel Vadot			reg = <0x0 0x0 0x0 0x10000>,
337*0e8011faSEmmanuel Vadot			      <0x0 0x20000 0x0 0x10000>,
338*0e8011faSEmmanuel Vadot			      <0x0 0x10000 0x0 0x10000>,
339*0e8011faSEmmanuel Vadot			      <0x0 0x30000 0x0 0x10000>;
340*0e8011faSEmmanuel Vadot			reg-names = "atcm0", "btcm0", "atcm1", "btcm1";
341*0e8011faSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_RPU_0>,
342*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_0_ATCM>,
343*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_0_BTCM>,
344*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_1_ATCM>,
345*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_1_BTCM>;
3468bab661aSEmmanuel Vadot			memory-region = <&rproc_0_fw_image>;
3478bab661aSEmmanuel Vadot		};
3488bab661aSEmmanuel Vadot
349*0e8011faSEmmanuel Vadot		r5f@1 {
3508bab661aSEmmanuel Vadot			compatible = "xlnx,zynqmp-r5f";
351*0e8011faSEmmanuel Vadot			reg = <0x1 0x0 0x0 0x10000>, <0x1 0x20000 0x0 0x10000>;
352*0e8011faSEmmanuel Vadot			reg-names = "atcm0", "btcm0";
353*0e8011faSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_RPU_1>,
354*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_1_ATCM>,
355*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_1_BTCM>;
356*0e8011faSEmmanuel Vadot			memory-region = <&rproc_1_fw_image>;
357*0e8011faSEmmanuel Vadot		};
358*0e8011faSEmmanuel Vadot	};
359*0e8011faSEmmanuel Vadot
360*0e8011faSEmmanuel Vadot	rproc_split: remoteproc-split@ffe00000 {
361*0e8011faSEmmanuel Vadot		status = "disabled";
362*0e8011faSEmmanuel Vadot		compatible = "xlnx,zynqmp-r5fss";
363*0e8011faSEmmanuel Vadot		xlnx,cluster-mode = <0>;
364*0e8011faSEmmanuel Vadot		xlnx,tcm-mode = <0>;
365*0e8011faSEmmanuel Vadot
366*0e8011faSEmmanuel Vadot		#address-cells = <2>;
367*0e8011faSEmmanuel Vadot		#size-cells = <2>;
368*0e8011faSEmmanuel Vadot
369*0e8011faSEmmanuel Vadot		ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x10000>,
370*0e8011faSEmmanuel Vadot			 <0x0 0x20000 0x0 0xffe20000 0x0 0x10000>,
371*0e8011faSEmmanuel Vadot			 <0x1 0x0 0x0 0xffe90000 0x0 0x10000>,
372*0e8011faSEmmanuel Vadot			 <0x1 0x20000 0x0 0xffeb0000 0x0 0x10000>;
373*0e8011faSEmmanuel Vadot
374*0e8011faSEmmanuel Vadot		r5f@0 {
375*0e8011faSEmmanuel Vadot			compatible = "xlnx,zynqmp-r5f";
376*0e8011faSEmmanuel Vadot			reg = <0x0 0x0 0x0 0x10000>, <0x0 0x20000 0x0 0x10000>;
377*0e8011faSEmmanuel Vadot			reg-names = "atcm0", "btcm0";
378*0e8011faSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_RPU_0>,
379*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_0_ATCM>,
380*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_0_BTCM>;
381*0e8011faSEmmanuel Vadot			memory-region = <&rproc_0_fw_image>;
382*0e8011faSEmmanuel Vadot		};
383*0e8011faSEmmanuel Vadot
384*0e8011faSEmmanuel Vadot		r5f@1 {
385*0e8011faSEmmanuel Vadot			compatible = "xlnx,zynqmp-r5f";
386*0e8011faSEmmanuel Vadot			reg = <0x1 0x0 0x0 0x10000>, <0x1 0x20000 0x0 0x10000>;
387*0e8011faSEmmanuel Vadot			reg-names = "atcm0", "btcm0";
388*0e8011faSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_RPU_1>,
389*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_1_ATCM>,
390*0e8011faSEmmanuel Vadot					<&zynqmp_firmware PD_R5_1_BTCM>;
3918bab661aSEmmanuel Vadot			memory-region = <&rproc_1_fw_image>;
3928bab661aSEmmanuel Vadot		};
3938bab661aSEmmanuel Vadot	};
3948bab661aSEmmanuel Vadot
3956be33864SEmmanuel Vadot	amba: axi {
396c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
397f126890aSEmmanuel Vadot		bootph-all;
398c66ec88fSEmmanuel Vadot		#address-cells = <2>;
399c66ec88fSEmmanuel Vadot		#size-cells = <2>;
400c66ec88fSEmmanuel Vadot		ranges;
401c66ec88fSEmmanuel Vadot
402c66ec88fSEmmanuel Vadot		can0: can@ff060000 {
403c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynq-can-1.0";
404c66ec88fSEmmanuel Vadot			status = "disabled";
405c66ec88fSEmmanuel Vadot			clock-names = "can_clk", "pclk";
406c66ec88fSEmmanuel Vadot			reg = <0x0 0xff060000 0x0 0x1000>;
407aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
408c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
409c66ec88fSEmmanuel Vadot			tx-fifo-depth = <0x40>;
410c66ec88fSEmmanuel Vadot			rx-fifo-depth = <0x40>;
41101950c46SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_CAN0>;
412c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_CAN_0>;
413c66ec88fSEmmanuel Vadot		};
414c66ec88fSEmmanuel Vadot
415c66ec88fSEmmanuel Vadot		can1: can@ff070000 {
416c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynq-can-1.0";
417c66ec88fSEmmanuel Vadot			status = "disabled";
418c66ec88fSEmmanuel Vadot			clock-names = "can_clk", "pclk";
419c66ec88fSEmmanuel Vadot			reg = <0x0 0xff070000 0x0 0x1000>;
420aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
421c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
422c66ec88fSEmmanuel Vadot			tx-fifo-depth = <0x40>;
423c66ec88fSEmmanuel Vadot			rx-fifo-depth = <0x40>;
42401950c46SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_CAN1>;
425c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_CAN_1>;
426c66ec88fSEmmanuel Vadot		};
427c66ec88fSEmmanuel Vadot
428c66ec88fSEmmanuel Vadot		cci: cci@fd6e0000 {
429c66ec88fSEmmanuel Vadot			compatible = "arm,cci-400";
4308cc087a1SEmmanuel Vadot			status = "disabled";
431c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd6e0000 0x0 0x9000>;
432c66ec88fSEmmanuel Vadot			ranges = <0x0 0x0 0xfd6e0000 0x10000>;
433c66ec88fSEmmanuel Vadot			#address-cells = <1>;
434c66ec88fSEmmanuel Vadot			#size-cells = <1>;
435c66ec88fSEmmanuel Vadot
436c66ec88fSEmmanuel Vadot			pmu@9000 {
437c66ec88fSEmmanuel Vadot				compatible = "arm,cci-400-pmu,r1";
438c66ec88fSEmmanuel Vadot				reg = <0x9000 0x5000>;
439c66ec88fSEmmanuel Vadot				interrupt-parent = <&gic>;
440aa1a8ff2SEmmanuel Vadot				interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
441aa1a8ff2SEmmanuel Vadot					     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
442aa1a8ff2SEmmanuel Vadot					     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
443aa1a8ff2SEmmanuel Vadot					     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
444aa1a8ff2SEmmanuel Vadot					     <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
445c66ec88fSEmmanuel Vadot			};
446c66ec88fSEmmanuel Vadot		};
447c66ec88fSEmmanuel Vadot
448*0e8011faSEmmanuel Vadot		cpu0_debug: debug@fec10000 {
449*0e8011faSEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
450*0e8011faSEmmanuel Vadot			reg = <0x0 0xfec10000 0x0 0x1000>;
451*0e8011faSEmmanuel Vadot			clock-names = "apb_pclk";
452*0e8011faSEmmanuel Vadot			cpu = <&cpu0>;
453*0e8011faSEmmanuel Vadot		};
454*0e8011faSEmmanuel Vadot
455*0e8011faSEmmanuel Vadot		cpu1_debug: debug@fed10000 {
456*0e8011faSEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
457*0e8011faSEmmanuel Vadot			reg = <0x0 0xfed10000 0x0 0x1000>;
458*0e8011faSEmmanuel Vadot			clock-names = "apb_pclk";
459*0e8011faSEmmanuel Vadot			cpu = <&cpu1>;
460*0e8011faSEmmanuel Vadot		};
461*0e8011faSEmmanuel Vadot
462*0e8011faSEmmanuel Vadot		cpu2_debug: debug@fee10000 {
463*0e8011faSEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
464*0e8011faSEmmanuel Vadot			reg = <0x0 0xfee10000 0x0 0x1000>;
465*0e8011faSEmmanuel Vadot			clock-names = "apb_pclk";
466*0e8011faSEmmanuel Vadot			cpu = <&cpu2>;
467*0e8011faSEmmanuel Vadot		};
468*0e8011faSEmmanuel Vadot
469*0e8011faSEmmanuel Vadot		cpu3_debug: debug@fef10000 {
470*0e8011faSEmmanuel Vadot			compatible = "arm,coresight-cpu-debug", "arm,primecell";
471*0e8011faSEmmanuel Vadot			reg = <0x0 0xfef10000 0x0 0x1000>;
472*0e8011faSEmmanuel Vadot			clock-names = "apb_pclk";
473*0e8011faSEmmanuel Vadot			cpu = <&cpu3>;
474*0e8011faSEmmanuel Vadot		};
475*0e8011faSEmmanuel Vadot
476c66ec88fSEmmanuel Vadot		/* GDMA */
477c9ccf3a3SEmmanuel Vadot		fpd_dma_chan1: dma-controller@fd500000 {
478c66ec88fSEmmanuel Vadot			status = "disabled";
479c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
480c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd500000 0x0 0x1000>;
481c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
482aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
483c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
484c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
485c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
48601950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14e8>; */
487c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
488c66ec88fSEmmanuel Vadot		};
489c66ec88fSEmmanuel Vadot
490c9ccf3a3SEmmanuel Vadot		fpd_dma_chan2: dma-controller@fd510000 {
491c66ec88fSEmmanuel Vadot			status = "disabled";
492c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
493c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd510000 0x0 0x1000>;
494c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
495aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
496c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
497c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
498c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
49901950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14e9>; */
500c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
501c66ec88fSEmmanuel Vadot		};
502c66ec88fSEmmanuel Vadot
503c9ccf3a3SEmmanuel Vadot		fpd_dma_chan3: dma-controller@fd520000 {
504c66ec88fSEmmanuel Vadot			status = "disabled";
505c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
506c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd520000 0x0 0x1000>;
507c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
508aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
509c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
510c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
511c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
51201950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14ea>; */
513c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
514c66ec88fSEmmanuel Vadot		};
515c66ec88fSEmmanuel Vadot
516c9ccf3a3SEmmanuel Vadot		fpd_dma_chan4: dma-controller@fd530000 {
517c66ec88fSEmmanuel Vadot			status = "disabled";
518c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
519c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd530000 0x0 0x1000>;
520c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
521aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
522c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
523c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
524c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
52501950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14eb>; */
526c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
527c66ec88fSEmmanuel Vadot		};
528c66ec88fSEmmanuel Vadot
529c9ccf3a3SEmmanuel Vadot		fpd_dma_chan5: dma-controller@fd540000 {
530c66ec88fSEmmanuel Vadot			status = "disabled";
531c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
532c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd540000 0x0 0x1000>;
533c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
534aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
535c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
536c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
537c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
53801950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14ec>; */
539c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
540c66ec88fSEmmanuel Vadot		};
541c66ec88fSEmmanuel Vadot
542c9ccf3a3SEmmanuel Vadot		fpd_dma_chan6: dma-controller@fd550000 {
543c66ec88fSEmmanuel Vadot			status = "disabled";
544c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
545c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd550000 0x0 0x1000>;
546c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
547aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>;
548c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
549c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
550c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
55101950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14ed>; */
552c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
553c66ec88fSEmmanuel Vadot		};
554c66ec88fSEmmanuel Vadot
555c9ccf3a3SEmmanuel Vadot		fpd_dma_chan7: dma-controller@fd560000 {
556c66ec88fSEmmanuel Vadot			status = "disabled";
557c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
558c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd560000 0x0 0x1000>;
559c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
560aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
561c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
562c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
563c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
56401950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14ee>; */
565c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
566c66ec88fSEmmanuel Vadot		};
567c66ec88fSEmmanuel Vadot
568c9ccf3a3SEmmanuel Vadot		fpd_dma_chan8: dma-controller@fd570000 {
569c66ec88fSEmmanuel Vadot			status = "disabled";
570c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
571c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd570000 0x0 0x1000>;
572c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
573aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
574c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
575c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
576c66ec88fSEmmanuel Vadot			xlnx,bus-width = <128>;
57701950c46SEmmanuel Vadot			/* iommus = <&smmu 0x14ef>; */
578c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GDMA>;
579c66ec88fSEmmanuel Vadot		};
580c66ec88fSEmmanuel Vadot
5815def4c47SEmmanuel Vadot		gic: interrupt-controller@f9010000 {
5825def4c47SEmmanuel Vadot			compatible = "arm,gic-400";
5835def4c47SEmmanuel Vadot			#interrupt-cells = <3>;
5845def4c47SEmmanuel Vadot			reg = <0x0 0xf9010000 0x0 0x10000>,
5855def4c47SEmmanuel Vadot			      <0x0 0xf9020000 0x0 0x20000>,
5865def4c47SEmmanuel Vadot			      <0x0 0xf9040000 0x0 0x20000>,
5875def4c47SEmmanuel Vadot			      <0x0 0xf9060000 0x0 0x20000>;
5885def4c47SEmmanuel Vadot			interrupt-controller;
5895def4c47SEmmanuel Vadot			interrupt-parent = <&gic>;
590aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
5915def4c47SEmmanuel Vadot		};
5925def4c47SEmmanuel Vadot
593f126890aSEmmanuel Vadot		gpu: gpu@fd4b0000 {
594f126890aSEmmanuel Vadot			status = "disabled";
595f126890aSEmmanuel Vadot			compatible = "xlnx,zynqmp-mali", "arm,mali-400";
596f126890aSEmmanuel Vadot			reg = <0x0 0xfd4b0000 0x0 0x10000>;
597f126890aSEmmanuel Vadot			interrupt-parent = <&gic>;
598aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
599aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
600aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
601aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
602aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
603aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
604f126890aSEmmanuel Vadot			interrupt-names = "gp", "gpmmu", "pp0", "ppmmu0", "pp1", "ppmmu1";
605f126890aSEmmanuel Vadot			clock-names = "bus", "core";
606f126890aSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GPU>;
607f126890aSEmmanuel Vadot		};
608f126890aSEmmanuel Vadot
609c66ec88fSEmmanuel Vadot		/* LPDDMA default allows only secured access. inorder to enable
610c66ec88fSEmmanuel Vadot		 * These dma channels, Users should ensure that these dma
611c66ec88fSEmmanuel Vadot		 * Channels are allowed for non secure access.
612c66ec88fSEmmanuel Vadot		 */
613c9ccf3a3SEmmanuel Vadot		lpd_dma_chan1: dma-controller@ffa80000 {
614c66ec88fSEmmanuel Vadot			status = "disabled";
615c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
616c66ec88fSEmmanuel Vadot			reg = <0x0 0xffa80000 0x0 0x1000>;
617c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
618aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
619c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
620c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
621c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
62201950c46SEmmanuel Vadot			/* iommus = <&smmu 0x868>; */
623c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
624c66ec88fSEmmanuel Vadot		};
625c66ec88fSEmmanuel Vadot
626c9ccf3a3SEmmanuel Vadot		lpd_dma_chan2: dma-controller@ffa90000 {
627c66ec88fSEmmanuel Vadot			status = "disabled";
628c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
629c66ec88fSEmmanuel Vadot			reg = <0x0 0xffa90000 0x0 0x1000>;
630c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
631aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
632c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
633c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
634c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
63501950c46SEmmanuel Vadot			/* iommus = <&smmu 0x869>; */
636c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
637c66ec88fSEmmanuel Vadot		};
638c66ec88fSEmmanuel Vadot
639c9ccf3a3SEmmanuel Vadot		lpd_dma_chan3: dma-controller@ffaa0000 {
640c66ec88fSEmmanuel Vadot			status = "disabled";
641c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
642c66ec88fSEmmanuel Vadot			reg = <0x0 0xffaa0000 0x0 0x1000>;
643c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
644aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
645c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
646c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
647c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
64801950c46SEmmanuel Vadot			/* iommus = <&smmu 0x86a>; */
649c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
650c66ec88fSEmmanuel Vadot		};
651c66ec88fSEmmanuel Vadot
652c9ccf3a3SEmmanuel Vadot		lpd_dma_chan4: dma-controller@ffab0000 {
653c66ec88fSEmmanuel Vadot			status = "disabled";
654c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
655c66ec88fSEmmanuel Vadot			reg = <0x0 0xffab0000 0x0 0x1000>;
656c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
657aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
658c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
659c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
660c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
66101950c46SEmmanuel Vadot			/* iommus = <&smmu 0x86b>; */
662c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
663c66ec88fSEmmanuel Vadot		};
664c66ec88fSEmmanuel Vadot
665c9ccf3a3SEmmanuel Vadot		lpd_dma_chan5: dma-controller@ffac0000 {
666c66ec88fSEmmanuel Vadot			status = "disabled";
667c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
668c66ec88fSEmmanuel Vadot			reg = <0x0 0xffac0000 0x0 0x1000>;
669c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
670aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
671c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
672c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
673c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
67401950c46SEmmanuel Vadot			/* iommus = <&smmu 0x86c>; */
675c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
676c66ec88fSEmmanuel Vadot		};
677c66ec88fSEmmanuel Vadot
678c9ccf3a3SEmmanuel Vadot		lpd_dma_chan6: dma-controller@ffad0000 {
679c66ec88fSEmmanuel Vadot			status = "disabled";
680c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
681c66ec88fSEmmanuel Vadot			reg = <0x0 0xffad0000 0x0 0x1000>;
682c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
683aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
684c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
685c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
686c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
68701950c46SEmmanuel Vadot			/* iommus = <&smmu 0x86d>; */
688c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
689c66ec88fSEmmanuel Vadot		};
690c66ec88fSEmmanuel Vadot
691c9ccf3a3SEmmanuel Vadot		lpd_dma_chan7: dma-controller@ffae0000 {
692c66ec88fSEmmanuel Vadot			status = "disabled";
693c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
694c66ec88fSEmmanuel Vadot			reg = <0x0 0xffae0000 0x0 0x1000>;
695c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
696aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
697c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
698c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
699c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
70001950c46SEmmanuel Vadot			/* iommus = <&smmu 0x86e>; */
701c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
702c66ec88fSEmmanuel Vadot		};
703c66ec88fSEmmanuel Vadot
704c9ccf3a3SEmmanuel Vadot		lpd_dma_chan8: dma-controller@ffaf0000 {
705c66ec88fSEmmanuel Vadot			status = "disabled";
706c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-dma-1.0";
707c66ec88fSEmmanuel Vadot			reg = <0x0 0xffaf0000 0x0 0x1000>;
708c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
709aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
710c66ec88fSEmmanuel Vadot			clock-names = "clk_main", "clk_apb";
711c9ccf3a3SEmmanuel Vadot			#dma-cells = <1>;
712c66ec88fSEmmanuel Vadot			xlnx,bus-width = <64>;
71301950c46SEmmanuel Vadot			/* iommus = <&smmu 0x86f>; */
714c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ADMA>;
715c66ec88fSEmmanuel Vadot		};
716c66ec88fSEmmanuel Vadot
717c66ec88fSEmmanuel Vadot		mc: memory-controller@fd070000 {
718c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-ddrc-2.40a";
719c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd070000 0x0 0x30000>;
720c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
721aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
722c66ec88fSEmmanuel Vadot		};
723c66ec88fSEmmanuel Vadot
7245def4c47SEmmanuel Vadot		nand0: nand-controller@ff100000 {
7255def4c47SEmmanuel Vadot			compatible = "xlnx,zynqmp-nand-controller", "arasan,nfc-v3p10";
7265def4c47SEmmanuel Vadot			status = "disabled";
7275def4c47SEmmanuel Vadot			reg = <0x0 0xff100000 0x0 0x1000>;
7285def4c47SEmmanuel Vadot			clock-names = "controller", "bus";
7295def4c47SEmmanuel Vadot			interrupt-parent = <&gic>;
730aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
7315def4c47SEmmanuel Vadot			#address-cells = <1>;
7325def4c47SEmmanuel Vadot			#size-cells = <0>;
73301950c46SEmmanuel Vadot			/* iommus = <&smmu 0x872>; */
7345def4c47SEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_NAND>;
7355def4c47SEmmanuel Vadot		};
7365def4c47SEmmanuel Vadot
737c66ec88fSEmmanuel Vadot		gem0: ethernet@ff0b0000 {
738cb7aa33aSEmmanuel Vadot			compatible = "xlnx,zynqmp-gem", "cdns,gem";
739c66ec88fSEmmanuel Vadot			status = "disabled";
740c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
741aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
742aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
743c66ec88fSEmmanuel Vadot			reg = <0x0 0xff0b0000 0x0 0x1000>;
744cb7aa33aSEmmanuel Vadot			clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
74501950c46SEmmanuel Vadot			/* iommus = <&smmu 0x874>; */
746c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ETH_0>;
747c9ccf3a3SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_GEM0>;
748c9ccf3a3SEmmanuel Vadot			reset-names = "gem0_rst";
749c66ec88fSEmmanuel Vadot		};
750c66ec88fSEmmanuel Vadot
751c66ec88fSEmmanuel Vadot		gem1: ethernet@ff0c0000 {
752cb7aa33aSEmmanuel Vadot			compatible = "xlnx,zynqmp-gem", "cdns,gem";
753c66ec88fSEmmanuel Vadot			status = "disabled";
754c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
755aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>,
756aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
757c66ec88fSEmmanuel Vadot			reg = <0x0 0xff0c0000 0x0 0x1000>;
758cb7aa33aSEmmanuel Vadot			clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
75901950c46SEmmanuel Vadot			/* iommus = <&smmu 0x875>; */
760c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ETH_1>;
761c9ccf3a3SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_GEM1>;
762c9ccf3a3SEmmanuel Vadot			reset-names = "gem1_rst";
763c66ec88fSEmmanuel Vadot		};
764c66ec88fSEmmanuel Vadot
765c66ec88fSEmmanuel Vadot		gem2: ethernet@ff0d0000 {
766cb7aa33aSEmmanuel Vadot			compatible = "xlnx,zynqmp-gem", "cdns,gem";
767c66ec88fSEmmanuel Vadot			status = "disabled";
768c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
769aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>,
770aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
771c66ec88fSEmmanuel Vadot			reg = <0x0 0xff0d0000 0x0 0x1000>;
772cb7aa33aSEmmanuel Vadot			clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
77301950c46SEmmanuel Vadot			/* iommus = <&smmu 0x876>; */
774c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ETH_2>;
775c9ccf3a3SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_GEM2>;
776c9ccf3a3SEmmanuel Vadot			reset-names = "gem2_rst";
777c66ec88fSEmmanuel Vadot		};
778c66ec88fSEmmanuel Vadot
779c66ec88fSEmmanuel Vadot		gem3: ethernet@ff0e0000 {
780cb7aa33aSEmmanuel Vadot			compatible = "xlnx,zynqmp-gem", "cdns,gem";
781c66ec88fSEmmanuel Vadot			status = "disabled";
782c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
783aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>,
784aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
785c66ec88fSEmmanuel Vadot			reg = <0x0 0xff0e0000 0x0 0x1000>;
786cb7aa33aSEmmanuel Vadot			clock-names = "pclk", "hclk", "tx_clk", "rx_clk", "tsu_clk";
78701950c46SEmmanuel Vadot			/* iommus = <&smmu 0x877>; */
788c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_ETH_3>;
789c9ccf3a3SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_GEM3>;
790c9ccf3a3SEmmanuel Vadot			reset-names = "gem3_rst";
791c66ec88fSEmmanuel Vadot		};
792c66ec88fSEmmanuel Vadot
793c66ec88fSEmmanuel Vadot		gpio: gpio@ff0a0000 {
794c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-gpio-1.0";
795c66ec88fSEmmanuel Vadot			status = "disabled";
796c66ec88fSEmmanuel Vadot			#gpio-cells = <0x2>;
797c66ec88fSEmmanuel Vadot			gpio-controller;
798c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
799aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
800c66ec88fSEmmanuel Vadot			interrupt-controller;
801c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
802c66ec88fSEmmanuel Vadot			reg = <0x0 0xff0a0000 0x0 0x1000>;
803c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_GPIO>;
804c66ec88fSEmmanuel Vadot		};
805c66ec88fSEmmanuel Vadot
806c66ec88fSEmmanuel Vadot		i2c0: i2c@ff020000 {
8076be33864SEmmanuel Vadot			compatible = "cdns,i2c-r1p14";
808c66ec88fSEmmanuel Vadot			status = "disabled";
809c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
810aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
811aa1a8ff2SEmmanuel Vadot			clock-frequency = <400000>;
812c66ec88fSEmmanuel Vadot			reg = <0x0 0xff020000 0x0 0x1000>;
813c66ec88fSEmmanuel Vadot			#address-cells = <1>;
814c66ec88fSEmmanuel Vadot			#size-cells = <0>;
815c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_I2C_0>;
816c66ec88fSEmmanuel Vadot		};
817c66ec88fSEmmanuel Vadot
818c66ec88fSEmmanuel Vadot		i2c1: i2c@ff030000 {
8196be33864SEmmanuel Vadot			compatible = "cdns,i2c-r1p14";
820c66ec88fSEmmanuel Vadot			status = "disabled";
821c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
822aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
823aa1a8ff2SEmmanuel Vadot			clock-frequency = <400000>;
824c66ec88fSEmmanuel Vadot			reg = <0x0 0xff030000 0x0 0x1000>;
825c66ec88fSEmmanuel Vadot			#address-cells = <1>;
826c66ec88fSEmmanuel Vadot			#size-cells = <0>;
827c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_I2C_1>;
828c66ec88fSEmmanuel Vadot		};
829c66ec88fSEmmanuel Vadot
830*0e8011faSEmmanuel Vadot		ocm: memory-controller@ff960000 {
831*0e8011faSEmmanuel Vadot			compatible = "xlnx,zynqmp-ocmc-1.0";
832*0e8011faSEmmanuel Vadot			reg = <0x0 0xff960000 0x0 0x1000>;
833*0e8011faSEmmanuel Vadot			interrupt-parent = <&gic>;
834*0e8011faSEmmanuel Vadot			interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
835*0e8011faSEmmanuel Vadot		};
836*0e8011faSEmmanuel Vadot
837c66ec88fSEmmanuel Vadot		pcie: pcie@fd0e0000 {
838c66ec88fSEmmanuel Vadot			compatible = "xlnx,nwl-pcie-2.11";
839c66ec88fSEmmanuel Vadot			status = "disabled";
840c66ec88fSEmmanuel Vadot			#address-cells = <3>;
841c66ec88fSEmmanuel Vadot			#size-cells = <2>;
842c66ec88fSEmmanuel Vadot			#interrupt-cells = <1>;
843c66ec88fSEmmanuel Vadot			msi-controller;
844c66ec88fSEmmanuel Vadot			device_type = "pci";
845c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
846aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
847aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
848aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
849aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,	/* MSI_1 [63...32] */
850aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;	/* MSI_0 [31...0] */
851c66ec88fSEmmanuel Vadot			interrupt-names = "misc", "dummy", "intx",
852c66ec88fSEmmanuel Vadot					  "msi1", "msi0";
853c66ec88fSEmmanuel Vadot			msi-parent = <&pcie>;
854c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd0e0000 0x0 0x1000>,
855c66ec88fSEmmanuel Vadot			      <0x0 0xfd480000 0x0 0x1000>,
85601950c46SEmmanuel Vadot			      <0x80 0x00000000 0x0 0x10000000>;
857c66ec88fSEmmanuel Vadot			reg-names = "breg", "pcireg", "cfg";
8585def4c47SEmmanuel Vadot			ranges = <0x02000000 0x00000000 0xe0000000 0x00000000 0xe0000000 0x00000000 0x10000000>,/* non-prefetchable memory */
8595def4c47SEmmanuel Vadot				 <0x43000000 0x00000006 0x00000000 0x00000006 0x00000000 0x00000002 0x00000000>;/* prefetchable memory */
860c66ec88fSEmmanuel Vadot			bus-range = <0x00 0xff>;
861c66ec88fSEmmanuel Vadot			interrupt-map-mask = <0x0 0x0 0x0 0x7>;
862c66ec88fSEmmanuel Vadot			interrupt-map = <0x0 0x0 0x0 0x1 &pcie_intc 0x1>,
863c66ec88fSEmmanuel Vadot					<0x0 0x0 0x0 0x2 &pcie_intc 0x2>,
864c66ec88fSEmmanuel Vadot					<0x0 0x0 0x0 0x3 &pcie_intc 0x3>,
865c66ec88fSEmmanuel Vadot					<0x0 0x0 0x0 0x4 &pcie_intc 0x4>;
86601950c46SEmmanuel Vadot			/* iommus = <&smmu 0x4d0>; */
867c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_PCIE>;
868c66ec88fSEmmanuel Vadot			pcie_intc: legacy-interrupt-controller {
869c66ec88fSEmmanuel Vadot				interrupt-controller;
870c66ec88fSEmmanuel Vadot				#address-cells = <0>;
871c66ec88fSEmmanuel Vadot				#interrupt-cells = <1>;
872c66ec88fSEmmanuel Vadot			};
873c66ec88fSEmmanuel Vadot		};
874c66ec88fSEmmanuel Vadot
8755def4c47SEmmanuel Vadot		qspi: spi@ff0f0000 {
876f126890aSEmmanuel Vadot			bootph-all;
8775def4c47SEmmanuel Vadot			compatible = "xlnx,zynqmp-qspi-1.0";
8785def4c47SEmmanuel Vadot			status = "disabled";
8795def4c47SEmmanuel Vadot			clock-names = "ref_clk", "pclk";
880aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
8815def4c47SEmmanuel Vadot			interrupt-parent = <&gic>;
8825def4c47SEmmanuel Vadot			num-cs = <1>;
8835def4c47SEmmanuel Vadot			reg = <0x0 0xff0f0000 0x0 0x1000>,
8845def4c47SEmmanuel Vadot			      <0x0 0xc0000000 0x0 0x8000000>;
8855def4c47SEmmanuel Vadot			#address-cells = <1>;
8865def4c47SEmmanuel Vadot			#size-cells = <0>;
88701950c46SEmmanuel Vadot			/* iommus = <&smmu 0x873>; */
8885def4c47SEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_QSPI>;
8895def4c47SEmmanuel Vadot		};
8905def4c47SEmmanuel Vadot
891c66ec88fSEmmanuel Vadot		psgtr: phy@fd400000 {
892c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-psgtr-v1.1";
893c66ec88fSEmmanuel Vadot			status = "disabled";
894c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd400000 0x0 0x40000>,
895c66ec88fSEmmanuel Vadot			      <0x0 0xfd3d0000 0x0 0x1000>;
896c66ec88fSEmmanuel Vadot			reg-names = "serdes", "siou";
897c66ec88fSEmmanuel Vadot			#phy-cells = <4>;
898c66ec88fSEmmanuel Vadot		};
899c66ec88fSEmmanuel Vadot
900c66ec88fSEmmanuel Vadot		rtc: rtc@ffa60000 {
901c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-rtc";
902c66ec88fSEmmanuel Vadot			status = "disabled";
903c66ec88fSEmmanuel Vadot			reg = <0x0 0xffa60000 0x0 0x100>;
904c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
905aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>,
906aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>;
907c66ec88fSEmmanuel Vadot			interrupt-names = "alarm", "sec";
9088cc087a1SEmmanuel Vadot			calibration = <0x7FFF>;
909c66ec88fSEmmanuel Vadot		};
910c66ec88fSEmmanuel Vadot
911c66ec88fSEmmanuel Vadot		sata: ahci@fd0c0000 {
912c66ec88fSEmmanuel Vadot			compatible = "ceva,ahci-1v84";
913c66ec88fSEmmanuel Vadot			status = "disabled";
914c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd0c0000 0x0 0x2000>;
915c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
916aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
917c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_SATA>;
9188cc087a1SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_SATA>;
91901950c46SEmmanuel Vadot			/* iommus = <&smmu 0x4c0>, <&smmu 0x4c1>, <&smmu 0x4c2>, <&smmu 0x4c3>; */
920c66ec88fSEmmanuel Vadot		};
921c66ec88fSEmmanuel Vadot
922c66ec88fSEmmanuel Vadot		sdhci0: mmc@ff160000 {
923f126890aSEmmanuel Vadot			bootph-all;
924c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-8.9a", "arasan,sdhci-8.9a";
925c66ec88fSEmmanuel Vadot			status = "disabled";
926c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
927aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
928c66ec88fSEmmanuel Vadot			reg = <0x0 0xff160000 0x0 0x1000>;
929c66ec88fSEmmanuel Vadot			clock-names = "clk_xin", "clk_ahb";
93001950c46SEmmanuel Vadot			/* iommus = <&smmu 0x870>; */
931c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
932c66ec88fSEmmanuel Vadot			clock-output-names = "clk_out_sd0", "clk_in_sd0";
933c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_SD_0>;
934f126890aSEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_SDIO0>;
935c66ec88fSEmmanuel Vadot		};
936c66ec88fSEmmanuel Vadot
937c66ec88fSEmmanuel Vadot		sdhci1: mmc@ff170000 {
938f126890aSEmmanuel Vadot			bootph-all;
939c66ec88fSEmmanuel Vadot			compatible = "xlnx,zynqmp-8.9a", "arasan,sdhci-8.9a";
940c66ec88fSEmmanuel Vadot			status = "disabled";
941c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
942aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
943c66ec88fSEmmanuel Vadot			reg = <0x0 0xff170000 0x0 0x1000>;
944c66ec88fSEmmanuel Vadot			clock-names = "clk_xin", "clk_ahb";
94501950c46SEmmanuel Vadot			/* iommus = <&smmu 0x871>; */
946c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
947c66ec88fSEmmanuel Vadot			clock-output-names = "clk_out_sd1", "clk_in_sd1";
948c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_SD_1>;
949f126890aSEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_SDIO1>;
950c66ec88fSEmmanuel Vadot		};
951c66ec88fSEmmanuel Vadot
952c66ec88fSEmmanuel Vadot		smmu: iommu@fd800000 {
953c66ec88fSEmmanuel Vadot			compatible = "arm,mmu-500";
954c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd800000 0x0 0x20000>;
9555def4c47SEmmanuel Vadot			#iommu-cells = <1>;
956c66ec88fSEmmanuel Vadot			status = "disabled";
957c66ec88fSEmmanuel Vadot			#global-interrupts = <1>;
958c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
959aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
960aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
961aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
962aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
963aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
964aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
965aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
966aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
967aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
968aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
969aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
970aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
971aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
972aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
973aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
974aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
975aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
976c66ec88fSEmmanuel Vadot		};
977c66ec88fSEmmanuel Vadot
978c66ec88fSEmmanuel Vadot		spi0: spi@ff040000 {
979c66ec88fSEmmanuel Vadot			compatible = "cdns,spi-r1p6";
980c66ec88fSEmmanuel Vadot			status = "disabled";
981c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
982aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
983c66ec88fSEmmanuel Vadot			reg = <0x0 0xff040000 0x0 0x1000>;
984c66ec88fSEmmanuel Vadot			clock-names = "ref_clk", "pclk";
985c66ec88fSEmmanuel Vadot			#address-cells = <1>;
986c66ec88fSEmmanuel Vadot			#size-cells = <0>;
987c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_SPI_0>;
988c66ec88fSEmmanuel Vadot		};
989c66ec88fSEmmanuel Vadot
990c66ec88fSEmmanuel Vadot		spi1: spi@ff050000 {
991c66ec88fSEmmanuel Vadot			compatible = "cdns,spi-r1p6";
992c66ec88fSEmmanuel Vadot			status = "disabled";
993c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
994aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
995c66ec88fSEmmanuel Vadot			reg = <0x0 0xff050000 0x0 0x1000>;
996c66ec88fSEmmanuel Vadot			clock-names = "ref_clk", "pclk";
997c66ec88fSEmmanuel Vadot			#address-cells = <1>;
998c66ec88fSEmmanuel Vadot			#size-cells = <0>;
999c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_SPI_1>;
1000c66ec88fSEmmanuel Vadot		};
1001c66ec88fSEmmanuel Vadot
1002c66ec88fSEmmanuel Vadot		ttc0: timer@ff110000 {
1003c66ec88fSEmmanuel Vadot			compatible = "cdns,ttc";
1004c66ec88fSEmmanuel Vadot			status = "disabled";
1005c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1006aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
1007aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
1008aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>;
1009c66ec88fSEmmanuel Vadot			reg = <0x0 0xff110000 0x0 0x1000>;
1010c66ec88fSEmmanuel Vadot			timer-width = <32>;
1011c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_TTC_0>;
1012c66ec88fSEmmanuel Vadot		};
1013c66ec88fSEmmanuel Vadot
1014c66ec88fSEmmanuel Vadot		ttc1: timer@ff120000 {
1015c66ec88fSEmmanuel Vadot			compatible = "cdns,ttc";
1016c66ec88fSEmmanuel Vadot			status = "disabled";
1017c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1018aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
1019aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
1020aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
1021c66ec88fSEmmanuel Vadot			reg = <0x0 0xff120000 0x0 0x1000>;
1022c66ec88fSEmmanuel Vadot			timer-width = <32>;
1023c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_TTC_1>;
1024c66ec88fSEmmanuel Vadot		};
1025c66ec88fSEmmanuel Vadot
1026c66ec88fSEmmanuel Vadot		ttc2: timer@ff130000 {
1027c66ec88fSEmmanuel Vadot			compatible = "cdns,ttc";
1028c66ec88fSEmmanuel Vadot			status = "disabled";
1029c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1030aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
1031aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>,
1032aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
1033c66ec88fSEmmanuel Vadot			reg = <0x0 0xff130000 0x0 0x1000>;
1034c66ec88fSEmmanuel Vadot			timer-width = <32>;
1035c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_TTC_2>;
1036c66ec88fSEmmanuel Vadot		};
1037c66ec88fSEmmanuel Vadot
1038c66ec88fSEmmanuel Vadot		ttc3: timer@ff140000 {
1039c66ec88fSEmmanuel Vadot			compatible = "cdns,ttc";
1040c66ec88fSEmmanuel Vadot			status = "disabled";
1041c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1042aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>,
1043aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>,
1044aa1a8ff2SEmmanuel Vadot				     <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
1045c66ec88fSEmmanuel Vadot			reg = <0x0 0xff140000 0x0 0x1000>;
1046c66ec88fSEmmanuel Vadot			timer-width = <32>;
1047c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_TTC_3>;
1048c66ec88fSEmmanuel Vadot		};
1049c66ec88fSEmmanuel Vadot
1050c66ec88fSEmmanuel Vadot		uart0: serial@ff000000 {
1051f126890aSEmmanuel Vadot			bootph-all;
10528cc087a1SEmmanuel Vadot			compatible = "xlnx,zynqmp-uart", "cdns,uart-r1p12";
1053c66ec88fSEmmanuel Vadot			status = "disabled";
1054c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1055aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
1056c66ec88fSEmmanuel Vadot			reg = <0x0 0xff000000 0x0 0x1000>;
1057c66ec88fSEmmanuel Vadot			clock-names = "uart_clk", "pclk";
1058c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_UART_0>;
10597d0873ebSEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_UART0>;
1060c66ec88fSEmmanuel Vadot		};
1061c66ec88fSEmmanuel Vadot
1062c66ec88fSEmmanuel Vadot		uart1: serial@ff010000 {
1063f126890aSEmmanuel Vadot			bootph-all;
10648cc087a1SEmmanuel Vadot			compatible = "xlnx,zynqmp-uart", "cdns,uart-r1p12";
1065c66ec88fSEmmanuel Vadot			status = "disabled";
1066c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1067aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
1068c66ec88fSEmmanuel Vadot			reg = <0x0 0xff010000 0x0 0x1000>;
1069c66ec88fSEmmanuel Vadot			clock-names = "uart_clk", "pclk";
1070c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_UART_1>;
10717d0873ebSEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_UART1>;
1072c66ec88fSEmmanuel Vadot		};
1073c66ec88fSEmmanuel Vadot
10748cc087a1SEmmanuel Vadot		usb0: usb@ff9d0000 {
10758cc087a1SEmmanuel Vadot			#address-cells = <2>;
10768cc087a1SEmmanuel Vadot			#size-cells = <2>;
1077c66ec88fSEmmanuel Vadot			status = "disabled";
10788cc087a1SEmmanuel Vadot			compatible = "xlnx,zynqmp-dwc3";
10798cc087a1SEmmanuel Vadot			reg = <0x0 0xff9d0000 0x0 0x100>;
108001950c46SEmmanuel Vadot			clock-names = "bus_clk", "ref_clk";
1081c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_USB_0>;
10828cc087a1SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_USB0_CORERESET>,
10838cc087a1SEmmanuel Vadot				 <&zynqmp_reset ZYNQMP_RESET_USB0_HIBERRESET>,
10848cc087a1SEmmanuel Vadot				 <&zynqmp_reset ZYNQMP_RESET_USB0_APB>;
10858cc087a1SEmmanuel Vadot			reset-names = "usb_crst", "usb_hibrst", "usb_apbrst";
1086cb7aa33aSEmmanuel Vadot			reset-gpios = <&modepin_gpio 1 GPIO_ACTIVE_LOW>;
10878cc087a1SEmmanuel Vadot			ranges;
10888cc087a1SEmmanuel Vadot
10898cc087a1SEmmanuel Vadot			dwc3_0: usb@fe200000 {
10908cc087a1SEmmanuel Vadot				compatible = "snps,dwc3";
109101950c46SEmmanuel Vadot				status = "disabled";
10928cc087a1SEmmanuel Vadot				reg = <0x0 0xfe200000 0x0 0x40000>;
10938cc087a1SEmmanuel Vadot				interrupt-parent = <&gic>;
1094*0e8011faSEmmanuel Vadot				interrupt-names = "host", "peripheral", "otg", "wakeup";
1095aa1a8ff2SEmmanuel Vadot				interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
1096aa1a8ff2SEmmanuel Vadot					     <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
1097*0e8011faSEmmanuel Vadot					     <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
1098*0e8011faSEmmanuel Vadot					     <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
109901950c46SEmmanuel Vadot				clock-names = "ref";
110001950c46SEmmanuel Vadot				/* iommus = <&smmu 0x860>; */
11018cc087a1SEmmanuel Vadot				snps,quirk-frame-length-adjustment = <0x20>;
1102cb7aa33aSEmmanuel Vadot				snps,resume-hs-terminations;
11038cc087a1SEmmanuel Vadot				/* dma-coherent; */
11048cc087a1SEmmanuel Vadot			};
1105c66ec88fSEmmanuel Vadot		};
1106c66ec88fSEmmanuel Vadot
11078cc087a1SEmmanuel Vadot		usb1: usb@ff9e0000 {
11088cc087a1SEmmanuel Vadot			#address-cells = <2>;
11098cc087a1SEmmanuel Vadot			#size-cells = <2>;
1110c66ec88fSEmmanuel Vadot			status = "disabled";
11118cc087a1SEmmanuel Vadot			compatible = "xlnx,zynqmp-dwc3";
11128cc087a1SEmmanuel Vadot			reg = <0x0 0xff9e0000 0x0 0x100>;
111301950c46SEmmanuel Vadot			clock-names = "bus_clk", "ref_clk";
1114c66ec88fSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_USB_1>;
11158cc087a1SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_USB1_CORERESET>,
11168cc087a1SEmmanuel Vadot				 <&zynqmp_reset ZYNQMP_RESET_USB1_HIBERRESET>,
11178cc087a1SEmmanuel Vadot				 <&zynqmp_reset ZYNQMP_RESET_USB1_APB>;
11188cc087a1SEmmanuel Vadot			reset-names = "usb_crst", "usb_hibrst", "usb_apbrst";
11198cc087a1SEmmanuel Vadot			ranges;
11208cc087a1SEmmanuel Vadot
11218cc087a1SEmmanuel Vadot			dwc3_1: usb@fe300000 {
11228cc087a1SEmmanuel Vadot				compatible = "snps,dwc3";
112301950c46SEmmanuel Vadot				status = "disabled";
11248cc087a1SEmmanuel Vadot				reg = <0x0 0xfe300000 0x0 0x40000>;
11258cc087a1SEmmanuel Vadot				interrupt-parent = <&gic>;
1126*0e8011faSEmmanuel Vadot				interrupt-names = "host", "peripheral", "otg", "wakeup";
1127aa1a8ff2SEmmanuel Vadot				interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
1128aa1a8ff2SEmmanuel Vadot					     <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>,
1129*0e8011faSEmmanuel Vadot					     <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>,
1130*0e8011faSEmmanuel Vadot					     <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
113101950c46SEmmanuel Vadot				clock-names = "ref";
113201950c46SEmmanuel Vadot				/* iommus = <&smmu 0x861>; */
11338cc087a1SEmmanuel Vadot				snps,quirk-frame-length-adjustment = <0x20>;
1134cb7aa33aSEmmanuel Vadot				snps,resume-hs-terminations;
11358cc087a1SEmmanuel Vadot				/* dma-coherent; */
11368cc087a1SEmmanuel Vadot			};
1137c66ec88fSEmmanuel Vadot		};
1138c66ec88fSEmmanuel Vadot
1139c66ec88fSEmmanuel Vadot		watchdog0: watchdog@fd4d0000 {
1140c66ec88fSEmmanuel Vadot			compatible = "cdns,wdt-r1p2";
1141c66ec88fSEmmanuel Vadot			status = "disabled";
1142c66ec88fSEmmanuel Vadot			interrupt-parent = <&gic>;
1143aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 113 IRQ_TYPE_EDGE_RISING>;
1144c66ec88fSEmmanuel Vadot			reg = <0x0 0xfd4d0000 0x0 0x1000>;
11458cc087a1SEmmanuel Vadot			timeout-sec = <60>;
11468cc087a1SEmmanuel Vadot			reset-on-timeout;
1147c66ec88fSEmmanuel Vadot		};
11485def4c47SEmmanuel Vadot
11495def4c47SEmmanuel Vadot		lpd_watchdog: watchdog@ff150000 {
11505def4c47SEmmanuel Vadot			compatible = "cdns,wdt-r1p2";
11515def4c47SEmmanuel Vadot			status = "disabled";
11525def4c47SEmmanuel Vadot			interrupt-parent = <&gic>;
1153aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 52 IRQ_TYPE_EDGE_RISING>;
11545def4c47SEmmanuel Vadot			reg = <0x0 0xff150000 0x0 0x1000>;
11555def4c47SEmmanuel Vadot			timeout-sec = <10>;
11565def4c47SEmmanuel Vadot		};
11575def4c47SEmmanuel Vadot
1158b97ee269SEmmanuel Vadot		xilinx_ams: ams@ffa50000 {
1159b97ee269SEmmanuel Vadot			compatible = "xlnx,zynqmp-ams";
1160b97ee269SEmmanuel Vadot			status = "disabled";
1161b97ee269SEmmanuel Vadot			interrupt-parent = <&gic>;
1162aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>;
1163b97ee269SEmmanuel Vadot			reg = <0x0 0xffa50000 0x0 0x800>;
1164b97ee269SEmmanuel Vadot			#address-cells = <1>;
1165b97ee269SEmmanuel Vadot			#size-cells = <1>;
1166b97ee269SEmmanuel Vadot			#io-channel-cells = <1>;
1167b97ee269SEmmanuel Vadot			ranges = <0 0 0xffa50800 0x800>;
1168b97ee269SEmmanuel Vadot
1169f126890aSEmmanuel Vadot			ams_ps: ams-ps@0 {
1170b97ee269SEmmanuel Vadot				compatible = "xlnx,zynqmp-ams-ps";
1171b97ee269SEmmanuel Vadot				status = "disabled";
1172b97ee269SEmmanuel Vadot				reg = <0x0 0x400>;
1173b97ee269SEmmanuel Vadot			};
1174b97ee269SEmmanuel Vadot
1175f126890aSEmmanuel Vadot			ams_pl: ams-pl@400 {
1176b97ee269SEmmanuel Vadot				compatible = "xlnx,zynqmp-ams-pl";
1177b97ee269SEmmanuel Vadot				status = "disabled";
1178b97ee269SEmmanuel Vadot				reg = <0x400 0x400>;
1179b97ee269SEmmanuel Vadot			};
1180b97ee269SEmmanuel Vadot		};
1181b97ee269SEmmanuel Vadot
11825def4c47SEmmanuel Vadot		zynqmp_dpdma: dma-controller@fd4c0000 {
11835def4c47SEmmanuel Vadot			compatible = "xlnx,zynqmp-dpdma";
11845def4c47SEmmanuel Vadot			status = "disabled";
11855def4c47SEmmanuel Vadot			reg = <0x0 0xfd4c0000 0x0 0x1000>;
1186aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
11875def4c47SEmmanuel Vadot			interrupt-parent = <&gic>;
11885def4c47SEmmanuel Vadot			clock-names = "axi_clk";
11892eb4d8dcSEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_DP>;
119001950c46SEmmanuel Vadot			/* iommus = <&smmu 0xce4>; */
11915def4c47SEmmanuel Vadot			#dma-cells = <1>;
11925def4c47SEmmanuel Vadot		};
11935def4c47SEmmanuel Vadot
11945def4c47SEmmanuel Vadot		zynqmp_dpsub: display@fd4a0000 {
1195f126890aSEmmanuel Vadot			bootph-all;
11965def4c47SEmmanuel Vadot			compatible = "xlnx,zynqmp-dpsub-1.7";
11975def4c47SEmmanuel Vadot			status = "disabled";
11985def4c47SEmmanuel Vadot			reg = <0x0 0xfd4a0000 0x0 0x1000>,
11995def4c47SEmmanuel Vadot			      <0x0 0xfd4aa000 0x0 0x1000>,
12005def4c47SEmmanuel Vadot			      <0x0 0xfd4ab000 0x0 0x1000>,
12015def4c47SEmmanuel Vadot			      <0x0 0xfd4ac000 0x0 0x1000>;
12025def4c47SEmmanuel Vadot			reg-names = "dp", "blend", "av_buf", "aud";
1203aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
12045def4c47SEmmanuel Vadot			interrupt-parent = <&gic>;
120501950c46SEmmanuel Vadot			/* iommus = <&smmu 0xce3>; */
12065def4c47SEmmanuel Vadot			clock-names = "dp_apb_clk", "dp_aud_clk",
12075def4c47SEmmanuel Vadot				      "dp_vtc_pixel_clk_in";
12085def4c47SEmmanuel Vadot			power-domains = <&zynqmp_firmware PD_DP>;
12095def4c47SEmmanuel Vadot			resets = <&zynqmp_reset ZYNQMP_RESET_DP>;
12105def4c47SEmmanuel Vadot			dma-names = "vid0", "vid1", "vid2", "gfx0";
12115def4c47SEmmanuel Vadot			dmas = <&zynqmp_dpdma ZYNQMP_DPDMA_VIDEO0>,
12125def4c47SEmmanuel Vadot			       <&zynqmp_dpdma ZYNQMP_DPDMA_VIDEO1>,
12135def4c47SEmmanuel Vadot			       <&zynqmp_dpdma ZYNQMP_DPDMA_VIDEO2>,
12145def4c47SEmmanuel Vadot			       <&zynqmp_dpdma ZYNQMP_DPDMA_GRAPHICS>;
12158bab661aSEmmanuel Vadot
12168bab661aSEmmanuel Vadot			ports {
12178bab661aSEmmanuel Vadot				#address-cells = <1>;
12188bab661aSEmmanuel Vadot				#size-cells = <0>;
12198bab661aSEmmanuel Vadot
12208bab661aSEmmanuel Vadot				port@0 {
12218bab661aSEmmanuel Vadot					reg = <0>;
12228bab661aSEmmanuel Vadot				};
12238bab661aSEmmanuel Vadot				port@1 {
12248bab661aSEmmanuel Vadot					reg = <1>;
12258bab661aSEmmanuel Vadot				};
12268bab661aSEmmanuel Vadot				port@2 {
12278bab661aSEmmanuel Vadot					reg = <2>;
12288bab661aSEmmanuel Vadot				};
12298bab661aSEmmanuel Vadot				port@3 {
12308bab661aSEmmanuel Vadot					reg = <3>;
12318bab661aSEmmanuel Vadot				};
12328bab661aSEmmanuel Vadot				port@4 {
12338bab661aSEmmanuel Vadot					reg = <4>;
12348bab661aSEmmanuel Vadot				};
12358bab661aSEmmanuel Vadot				port@5 {
12368bab661aSEmmanuel Vadot					reg = <5>;
12378bab661aSEmmanuel Vadot				};
12388bab661aSEmmanuel Vadot			};
12395def4c47SEmmanuel Vadot		};
1240c66ec88fSEmmanuel Vadot	};
1241c66ec88fSEmmanuel Vadot};
1242