xref: /openbmc/linux/arch/arm64/boot/dts/ti/k3-am64-main.dtsi (revision b0e4672f4e216ae5e1bfe25e519a8e9619b70bf3)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for AM642 SoC Family Main Domain peripherals
4 *
5 * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
6 */
7
8#include <dt-bindings/phy/phy-cadence.h>
9#include <dt-bindings/phy/phy-ti.h>
10
11/ {
12	serdes_refclk: clock-cmnrefclk {
13		#clock-cells = <0>;
14		compatible = "fixed-clock";
15		clock-frequency = <0>;
16	};
17};
18
19&cbass_main {
20	oc_sram: sram@70000000 {
21		compatible = "mmio-sram";
22		reg = <0x00 0x70000000 0x00 0x200000>;
23		#address-cells = <1>;
24		#size-cells = <1>;
25		ranges = <0x0 0x00 0x70000000 0x200000>;
26
27		tfa-sram@1c0000 {
28			reg = <0x1c0000 0x20000>;
29		};
30
31		dmsc-sram@1e0000 {
32			reg = <0x1e0000 0x1c000>;
33		};
34
35		sproxy-sram@1fc000 {
36			reg = <0x1fc000 0x4000>;
37		};
38	};
39
40	main_conf: syscon@43000000 {
41		compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
42		reg = <0x0 0x43000000 0x0 0x20000>;
43		#address-cells = <1>;
44		#size-cells = <1>;
45		ranges = <0x0 0x0 0x43000000 0x20000>;
46
47		chipid@14 {
48			compatible = "ti,am654-chipid";
49			reg = <0x00000014 0x4>;
50		};
51
52		serdes_ln_ctrl: mux-controller {
53			compatible = "mmio-mux";
54			#mux-control-cells = <1>;
55			mux-reg-masks = <0x4080 0x3>; /* SERDES0 lane0 select */
56		};
57
58		phy_gmii_sel: phy@4044 {
59			compatible = "ti,am654-phy-gmii-sel";
60			reg = <0x4044 0x8>;
61			#phy-cells = <1>;
62		};
63
64		epwm_tbclk: clock-controller@4140 {
65			compatible = "ti,am64-epwm-tbclk";
66			reg = <0x4130 0x4>;
67			#clock-cells = <1>;
68		};
69	};
70
71	gic500: interrupt-controller@1800000 {
72		compatible = "arm,gic-v3";
73		#address-cells = <2>;
74		#size-cells = <2>;
75		ranges;
76		#interrupt-cells = <3>;
77		interrupt-controller;
78		reg = <0x00 0x01800000 0x00 0x10000>,	/* GICD */
79		      <0x00 0x01840000 0x00 0xC0000>,	/* GICR */
80		      <0x01 0x00000000 0x00 0x2000>,	/* GICC */
81		      <0x01 0x00010000 0x00 0x1000>,	/* GICH */
82		      <0x01 0x00020000 0x00 0x2000>;	/* GICV */
83		/*
84		 * vcpumntirq:
85		 * virtual CPU interface maintenance interrupt
86		 */
87		interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
88
89		gic_its: msi-controller@1820000 {
90			compatible = "arm,gic-v3-its";
91			reg = <0x00 0x01820000 0x00 0x10000>;
92			socionext,synquacer-pre-its = <0x1000000 0x400000>;
93			msi-controller;
94			#msi-cells = <1>;
95		};
96	};
97
98	dmss: bus@48000000 {
99		compatible = "simple-mfd";
100		#address-cells = <2>;
101		#size-cells = <2>;
102		dma-ranges;
103		ranges = <0x00 0x48000000 0x00 0x48000000 0x00 0x06400000>;
104
105		ti,sci-dev-id = <25>;
106
107		secure_proxy_main: mailbox@4d000000 {
108			compatible = "ti,am654-secure-proxy";
109			#mbox-cells = <1>;
110			reg-names = "target_data", "rt", "scfg";
111			reg = <0x00 0x4d000000 0x00 0x80000>,
112			      <0x00 0x4a600000 0x00 0x80000>,
113			      <0x00 0x4a400000 0x00 0x80000>;
114			interrupt-names = "rx_012";
115			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
116		};
117
118		inta_main_dmss: interrupt-controller@48000000 {
119			compatible = "ti,sci-inta";
120			reg = <0x00 0x48000000 0x00 0x100000>;
121			#interrupt-cells = <0>;
122			interrupt-controller;
123			interrupt-parent = <&gic500>;
124			msi-controller;
125			ti,sci = <&dmsc>;
126			ti,sci-dev-id = <28>;
127			ti,interrupt-ranges = <4 68 36>;
128			ti,unmapped-event-sources = <&main_bcdma>, <&main_pktdma>;
129		};
130
131		main_bcdma: dma-controller@485c0100 {
132			compatible = "ti,am64-dmss-bcdma";
133			reg = <0x00 0x485c0100 0x00 0x100>,
134			      <0x00 0x4c000000 0x00 0x20000>,
135			      <0x00 0x4a820000 0x00 0x20000>,
136			      <0x00 0x4aa40000 0x00 0x20000>,
137			      <0x00 0x4bc00000 0x00 0x100000>;
138			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt";
139			msi-parent = <&inta_main_dmss>;
140			#dma-cells = <3>;
141
142			ti,sci = <&dmsc>;
143			ti,sci-dev-id = <26>;
144			ti,sci-rm-range-bchan = <0x20>; /* BLOCK_COPY_CHAN */
145			ti,sci-rm-range-rchan = <0x21>; /* SPLIT_TR_RX_CHAN */
146			ti,sci-rm-range-tchan = <0x22>; /* SPLIT_TR_TX_CHAN */
147		};
148
149		main_pktdma: dma-controller@485c0000 {
150			compatible = "ti,am64-dmss-pktdma";
151			reg = <0x00 0x485c0000 0x00 0x100>,
152			      <0x00 0x4a800000 0x00 0x20000>,
153			      <0x00 0x4aa00000 0x00 0x40000>,
154			      <0x00 0x4b800000 0x00 0x400000>;
155			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt";
156			msi-parent = <&inta_main_dmss>;
157			#dma-cells = <2>;
158
159			ti,sci = <&dmsc>;
160			ti,sci-dev-id = <30>;
161			ti,sci-rm-range-tchan = <0x23>, /* UNMAPPED_TX_CHAN */
162						<0x24>, /* CPSW_TX_CHAN */
163						<0x25>, /* SAUL_TX_0_CHAN */
164						<0x26>, /* SAUL_TX_1_CHAN */
165						<0x27>, /* ICSSG_0_TX_CHAN */
166						<0x28>; /* ICSSG_1_TX_CHAN */
167			ti,sci-rm-range-tflow = <0x10>, /* RING_UNMAPPED_TX_CHAN */
168						<0x11>, /* RING_CPSW_TX_CHAN */
169						<0x12>, /* RING_SAUL_TX_0_CHAN */
170						<0x13>, /* RING_SAUL_TX_1_CHAN */
171						<0x14>, /* RING_ICSSG_0_TX_CHAN */
172						<0x15>; /* RING_ICSSG_1_TX_CHAN */
173			ti,sci-rm-range-rchan = <0x29>, /* UNMAPPED_RX_CHAN */
174						<0x2b>, /* CPSW_RX_CHAN */
175						<0x2d>, /* SAUL_RX_0_CHAN */
176						<0x2f>, /* SAUL_RX_1_CHAN */
177						<0x31>, /* SAUL_RX_2_CHAN */
178						<0x33>, /* SAUL_RX_3_CHAN */
179						<0x35>, /* ICSSG_0_RX_CHAN */
180						<0x37>; /* ICSSG_1_RX_CHAN */
181			ti,sci-rm-range-rflow = <0x2a>, /* FLOW_UNMAPPED_RX_CHAN */
182						<0x2c>, /* FLOW_CPSW_RX_CHAN */
183						<0x2e>, /* FLOW_SAUL_RX_0/1_CHAN */
184						<0x32>, /* FLOW_SAUL_RX_2/3_CHAN */
185						<0x36>, /* FLOW_ICSSG_0_RX_CHAN */
186						<0x38>; /* FLOW_ICSSG_1_RX_CHAN */
187		};
188	};
189
190	dmsc: system-controller@44043000 {
191		compatible = "ti,k2g-sci";
192		ti,host-id = <12>;
193		mbox-names = "rx", "tx";
194		mboxes = <&secure_proxy_main 12>,
195			<&secure_proxy_main 13>;
196		reg-names = "debug_messages";
197		reg = <0x00 0x44043000 0x00 0xfe0>;
198
199		k3_pds: power-controller {
200			compatible = "ti,sci-pm-domain";
201			#power-domain-cells = <2>;
202		};
203
204		k3_clks: clock-controller {
205			compatible = "ti,k2g-sci-clk";
206			#clock-cells = <2>;
207		};
208
209		k3_reset: reset-controller {
210			compatible = "ti,sci-reset";
211			#reset-cells = <2>;
212		};
213	};
214
215	main_pmx0: pinctrl@f4000 {
216		compatible = "pinctrl-single";
217		reg = <0x00 0xf4000 0x00 0x2d0>;
218		#pinctrl-cells = <1>;
219		pinctrl-single,register-width = <32>;
220		pinctrl-single,function-mask = <0xffffffff>;
221	};
222
223	main_timer0: timer@2400000 {
224		compatible = "ti,am654-timer";
225		reg = <0x00 0x2400000 0x00 0x400>;
226		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
227		clocks = <&k3_clks 36 1>;
228		clock-names = "fck";
229		assigned-clocks = <&k3_clks 36 1>;
230		assigned-clock-parents = <&k3_clks 36 2>;
231		power-domains = <&k3_pds 36 TI_SCI_PD_EXCLUSIVE>;
232		ti,timer-pwm;
233	};
234
235	main_timer1: timer@2410000 {
236		compatible = "ti,am654-timer";
237		reg = <0x00 0x2410000 0x00 0x400>;
238		interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
239		clocks = <&k3_clks 37 1>;
240		clock-names = "fck";
241		assigned-clocks = <&k3_clks 37 1>;
242		assigned-clock-parents = <&k3_clks 37 2>;
243		power-domains = <&k3_pds 37 TI_SCI_PD_EXCLUSIVE>;
244		ti,timer-pwm;
245	};
246
247	main_timer2: timer@2420000 {
248		compatible = "ti,am654-timer";
249		reg = <0x00 0x2420000 0x00 0x400>;
250		interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
251		clocks = <&k3_clks 38 1>;
252		clock-names = "fck";
253		assigned-clocks = <&k3_clks 38 1>;
254		assigned-clock-parents = <&k3_clks 38 2>;
255		power-domains = <&k3_pds 38 TI_SCI_PD_EXCLUSIVE>;
256		ti,timer-pwm;
257	};
258
259	main_timer3: timer@2430000 {
260		compatible = "ti,am654-timer";
261		reg = <0x00 0x2430000 0x00 0x400>;
262		interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
263		clocks = <&k3_clks 39 1>;
264		clock-names = "fck";
265		assigned-clocks = <&k3_clks 39 1>;
266		assigned-clock-parents = <&k3_clks 39 2>;
267		power-domains = <&k3_pds 39 TI_SCI_PD_EXCLUSIVE>;
268		ti,timer-pwm;
269	};
270
271	main_timer4: timer@2440000 {
272		compatible = "ti,am654-timer";
273		reg = <0x00 0x2440000 0x00 0x400>;
274		interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
275		clocks = <&k3_clks 40 1>;
276		clock-names = "fck";
277		assigned-clocks = <&k3_clks 40 1>;
278		assigned-clock-parents = <&k3_clks 40 2>;
279		power-domains = <&k3_pds 40 TI_SCI_PD_EXCLUSIVE>;
280		ti,timer-pwm;
281	};
282
283	main_timer5: timer@2450000 {
284		compatible = "ti,am654-timer";
285		reg = <0x00 0x2450000 0x00 0x400>;
286		interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
287		clocks = <&k3_clks 41 1>;
288		clock-names = "fck";
289		assigned-clocks = <&k3_clks 41 1>;
290		assigned-clock-parents = <&k3_clks 41 2>;
291		power-domains = <&k3_pds 41 TI_SCI_PD_EXCLUSIVE>;
292		ti,timer-pwm;
293	};
294
295	main_timer6: timer@2460000 {
296		compatible = "ti,am654-timer";
297		reg = <0x00 0x2460000 0x00 0x400>;
298		interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
299		clocks = <&k3_clks 42 1>;
300		clock-names = "fck";
301		assigned-clocks = <&k3_clks 42 1>;
302		assigned-clock-parents = <&k3_clks 42 2>;
303		power-domains = <&k3_pds 42 TI_SCI_PD_EXCLUSIVE>;
304		ti,timer-pwm;
305	};
306
307	main_timer7: timer@2470000 {
308		compatible = "ti,am654-timer";
309		reg = <0x00 0x2470000 0x00 0x400>;
310		interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
311		clocks = <&k3_clks 43 1>;
312		clock-names = "fck";
313		assigned-clocks = <&k3_clks 43 1>;
314		assigned-clock-parents = <&k3_clks 43 2>;
315		power-domains = <&k3_pds 43 TI_SCI_PD_EXCLUSIVE>;
316		ti,timer-pwm;
317	};
318
319	main_timer8: timer@2480000 {
320		compatible = "ti,am654-timer";
321		reg = <0x00 0x2480000 0x00 0x400>;
322		interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>;
323		clocks = <&k3_clks 44 1>;
324		clock-names = "fck";
325		assigned-clocks = <&k3_clks 44 1>;
326		assigned-clock-parents = <&k3_clks 44 2>;
327		power-domains = <&k3_pds 44 TI_SCI_PD_EXCLUSIVE>;
328		ti,timer-pwm;
329	};
330
331	main_timer9: timer@2490000 {
332		compatible = "ti,am654-timer";
333		reg = <0x00 0x2490000 0x00 0x400>;
334		interrupts = <GIC_SPI 129 IRQ_TYPE_LEVEL_HIGH>;
335		clocks = <&k3_clks 45 1>;
336		clock-names = "fck";
337		assigned-clocks = <&k3_clks 45 1>;
338		assigned-clock-parents = <&k3_clks 45 2>;
339		power-domains = <&k3_pds 45 TI_SCI_PD_EXCLUSIVE>;
340		ti,timer-pwm;
341	};
342
343	main_timer10: timer@24a0000 {
344		compatible = "ti,am654-timer";
345		reg = <0x00 0x24a0000 0x00 0x400>;
346		interrupts = <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>;
347		clocks = <&k3_clks 46 1>;
348		clock-names = "fck";
349		assigned-clocks = <&k3_clks 46 1>;
350		assigned-clock-parents = <&k3_clks 46 2>;
351		power-domains = <&k3_pds 46 TI_SCI_PD_EXCLUSIVE>;
352		ti,timer-pwm;
353	};
354
355	main_timer11: timer@24b0000 {
356		compatible = "ti,am654-timer";
357		reg = <0x00 0x24b0000 0x00 0x400>;
358		interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
359		clocks = <&k3_clks 47 1>;
360		clock-names = "fck";
361		assigned-clocks = <&k3_clks 47 1>;
362		assigned-clock-parents = <&k3_clks 47 2>;
363		power-domains = <&k3_pds 47 TI_SCI_PD_EXCLUSIVE>;
364		ti,timer-pwm;
365	};
366
367	main_esm: esm@420000 {
368		compatible = "ti,j721e-esm";
369		reg = <0x00 0x420000 0x00 0x1000>;
370		ti,esm-pins = <160>, <161>;
371	};
372
373	main_uart0: serial@2800000 {
374		compatible = "ti,am64-uart", "ti,am654-uart";
375		reg = <0x00 0x02800000 0x00 0x100>;
376		interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
377		clock-frequency = <48000000>;
378		power-domains = <&k3_pds 146 TI_SCI_PD_EXCLUSIVE>;
379		clocks = <&k3_clks 146 0>;
380		clock-names = "fclk";
381		status = "disabled";
382	};
383
384	main_uart1: serial@2810000 {
385		compatible = "ti,am64-uart", "ti,am654-uart";
386		reg = <0x00 0x02810000 0x00 0x100>;
387		interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>;
388		clock-frequency = <48000000>;
389		power-domains = <&k3_pds 152 TI_SCI_PD_EXCLUSIVE>;
390		clocks = <&k3_clks 152 0>;
391		clock-names = "fclk";
392		status = "disabled";
393	};
394
395	main_uart2: serial@2820000 {
396		compatible = "ti,am64-uart", "ti,am654-uart";
397		reg = <0x00 0x02820000 0x00 0x100>;
398		interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
399		clock-frequency = <48000000>;
400		power-domains = <&k3_pds 153 TI_SCI_PD_EXCLUSIVE>;
401		clocks = <&k3_clks 153 0>;
402		clock-names = "fclk";
403		status = "disabled";
404	};
405
406	main_uart3: serial@2830000 {
407		compatible = "ti,am64-uart", "ti,am654-uart";
408		reg = <0x00 0x02830000 0x00 0x100>;
409		interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>;
410		clock-frequency = <48000000>;
411		power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
412		clocks = <&k3_clks 154 0>;
413		clock-names = "fclk";
414		status = "disabled";
415	};
416
417	main_uart4: serial@2840000 {
418		compatible = "ti,am64-uart", "ti,am654-uart";
419		reg = <0x00 0x02840000 0x00 0x100>;
420		interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>;
421		clock-frequency = <48000000>;
422		power-domains = <&k3_pds 155 TI_SCI_PD_EXCLUSIVE>;
423		clocks = <&k3_clks 155 0>;
424		clock-names = "fclk";
425		status = "disabled";
426	};
427
428	main_uart5: serial@2850000 {
429		compatible = "ti,am64-uart", "ti,am654-uart";
430		reg = <0x00 0x02850000 0x00 0x100>;
431		interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
432		clock-frequency = <48000000>;
433		power-domains = <&k3_pds 156 TI_SCI_PD_EXCLUSIVE>;
434		clocks = <&k3_clks 156 0>;
435		clock-names = "fclk";
436		status = "disabled";
437	};
438
439	main_uart6: serial@2860000 {
440		compatible = "ti,am64-uart", "ti,am654-uart";
441		reg = <0x00 0x02860000 0x00 0x100>;
442		interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
443		clock-frequency = <48000000>;
444		power-domains = <&k3_pds 158 TI_SCI_PD_EXCLUSIVE>;
445		clocks = <&k3_clks 158 0>;
446		clock-names = "fclk";
447		status = "disabled";
448	};
449
450	main_i2c0: i2c@20000000 {
451		compatible = "ti,am64-i2c", "ti,omap4-i2c";
452		reg = <0x00 0x20000000 0x00 0x100>;
453		interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
454		#address-cells = <1>;
455		#size-cells = <0>;
456		power-domains = <&k3_pds 102 TI_SCI_PD_EXCLUSIVE>;
457		clocks = <&k3_clks 102 2>;
458		clock-names = "fck";
459		status = "disabled";
460	};
461
462	main_i2c1: i2c@20010000 {
463		compatible = "ti,am64-i2c", "ti,omap4-i2c";
464		reg = <0x00 0x20010000 0x00 0x100>;
465		interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
466		#address-cells = <1>;
467		#size-cells = <0>;
468		power-domains = <&k3_pds 103 TI_SCI_PD_EXCLUSIVE>;
469		clocks = <&k3_clks 103 2>;
470		clock-names = "fck";
471		status = "disabled";
472	};
473
474	main_i2c2: i2c@20020000 {
475		compatible = "ti,am64-i2c", "ti,omap4-i2c";
476		reg = <0x00 0x20020000 0x00 0x100>;
477		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
478		#address-cells = <1>;
479		#size-cells = <0>;
480		power-domains = <&k3_pds 104 TI_SCI_PD_EXCLUSIVE>;
481		clocks = <&k3_clks 104 2>;
482		clock-names = "fck";
483		status = "disabled";
484	};
485
486	main_i2c3: i2c@20030000 {
487		compatible = "ti,am64-i2c", "ti,omap4-i2c";
488		reg = <0x00 0x20030000 0x00 0x100>;
489		interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
490		#address-cells = <1>;
491		#size-cells = <0>;
492		power-domains = <&k3_pds 105 TI_SCI_PD_EXCLUSIVE>;
493		clocks = <&k3_clks 105 2>;
494		clock-names = "fck";
495		status = "disabled";
496	};
497
498	main_spi0: spi@20100000 {
499		compatible = "ti,am654-mcspi", "ti,omap4-mcspi";
500		reg = <0x00 0x20100000 0x00 0x400>;
501		interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
502		#address-cells = <1>;
503		#size-cells = <0>;
504		power-domains = <&k3_pds 141 TI_SCI_PD_EXCLUSIVE>;
505		clocks = <&k3_clks 141 0>;
506		dmas = <&main_pktdma 0xc300 0>, <&main_pktdma 0x4300 0>;
507		dma-names = "tx0", "rx0";
508		status = "disabled";
509	};
510
511	main_spi1: spi@20110000 {
512		compatible = "ti,am654-mcspi","ti,omap4-mcspi";
513		reg = <0x00 0x20110000 0x00 0x400>;
514		interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>;
515		#address-cells = <1>;
516		#size-cells = <0>;
517		power-domains = <&k3_pds 142 TI_SCI_PD_EXCLUSIVE>;
518		clocks = <&k3_clks 142 0>;
519		status = "disabled";
520	};
521
522	main_spi2: spi@20120000 {
523		compatible = "ti,am654-mcspi","ti,omap4-mcspi";
524		reg = <0x00 0x20120000 0x00 0x400>;
525		interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
526		#address-cells = <1>;
527		#size-cells = <0>;
528		power-domains = <&k3_pds 143 TI_SCI_PD_EXCLUSIVE>;
529		clocks = <&k3_clks 143 0>;
530		status = "disabled";
531	};
532
533	main_spi3: spi@20130000 {
534		compatible = "ti,am654-mcspi","ti,omap4-mcspi";
535		reg = <0x00 0x20130000 0x00 0x400>;
536		interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
537		#address-cells = <1>;
538		#size-cells = <0>;
539		power-domains = <&k3_pds 144 TI_SCI_PD_EXCLUSIVE>;
540		clocks = <&k3_clks 144 0>;
541		status = "disabled";
542	};
543
544	main_spi4: spi@20140000 {
545		compatible = "ti,am654-mcspi","ti,omap4-mcspi";
546		reg = <0x00 0x20140000 0x00 0x400>;
547		interrupts = <GIC_SPI 175 IRQ_TYPE_LEVEL_HIGH>;
548		#address-cells = <1>;
549		#size-cells = <0>;
550		power-domains = <&k3_pds 145 TI_SCI_PD_EXCLUSIVE>;
551		clocks = <&k3_clks 145 0>;
552		status = "disabled";
553	};
554
555	main_gpio_intr: interrupt-controller@a00000 {
556		compatible = "ti,sci-intr";
557		reg = <0x00 0x00a00000 0x00 0x800>;
558		ti,intr-trigger-type = <1>;
559		interrupt-controller;
560		interrupt-parent = <&gic500>;
561		#interrupt-cells = <1>;
562		ti,sci = <&dmsc>;
563		ti,sci-dev-id = <3>;
564		ti,interrupt-ranges = <0 32 16>;
565	};
566
567	main_gpio0: gpio@600000 {
568		compatible = "ti,am64-gpio", "ti,keystone-gpio";
569		reg = <0x0 0x00600000 0x0 0x100>;
570		gpio-controller;
571		#gpio-cells = <2>;
572		interrupt-parent = <&main_gpio_intr>;
573		interrupts = <190>, <191>, <192>,
574			     <193>, <194>, <195>;
575		interrupt-controller;
576		#interrupt-cells = <2>;
577		ti,ngpio = <87>;
578		ti,davinci-gpio-unbanked = <0>;
579		power-domains = <&k3_pds 77 TI_SCI_PD_EXCLUSIVE>;
580		clocks = <&k3_clks 77 0>;
581		clock-names = "gpio";
582	};
583
584	main_gpio1: gpio@601000 {
585		compatible = "ti,am64-gpio", "ti,keystone-gpio";
586		reg = <0x0 0x00601000 0x0 0x100>;
587		gpio-controller;
588		#gpio-cells = <2>;
589		interrupt-parent = <&main_gpio_intr>;
590		interrupts = <180>, <181>, <182>,
591			     <183>, <184>, <185>;
592		interrupt-controller;
593		#interrupt-cells = <2>;
594		ti,ngpio = <88>;
595		ti,davinci-gpio-unbanked = <0>;
596		power-domains = <&k3_pds 78 TI_SCI_PD_EXCLUSIVE>;
597		clocks = <&k3_clks 78 0>;
598		clock-names = "gpio";
599	};
600
601	sdhci0: mmc@fa10000 {
602		compatible = "ti,am64-sdhci-8bit";
603		reg = <0x00 0xfa10000 0x00 0x260>, <0x00 0xfa18000 0x00 0x134>;
604		interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
605		power-domains = <&k3_pds 57 TI_SCI_PD_EXCLUSIVE>;
606		clocks = <&k3_clks 57 0>, <&k3_clks 57 1>;
607		clock-names = "clk_ahb", "clk_xin";
608		mmc-ddr-1_8v;
609		mmc-hs200-1_8v;
610		ti,trm-icp = <0x2>;
611		ti,otap-del-sel-legacy = <0x0>;
612		ti,otap-del-sel-mmc-hs = <0x0>;
613		ti,otap-del-sel-ddr52 = <0x6>;
614		ti,otap-del-sel-hs200 = <0x7>;
615		status = "disabled";
616	};
617
618	sdhci1: mmc@fa00000 {
619		compatible = "ti,am64-sdhci-4bit";
620		reg = <0x00 0xfa00000 0x00 0x260>, <0x00 0xfa08000 0x00 0x134>;
621		interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
622		power-domains = <&k3_pds 58 TI_SCI_PD_EXCLUSIVE>;
623		clocks = <&k3_clks 58 3>, <&k3_clks 58 4>;
624		clock-names = "clk_ahb", "clk_xin";
625		ti,trm-icp = <0x2>;
626		ti,otap-del-sel-legacy = <0x0>;
627		ti,otap-del-sel-sd-hs = <0xf>;
628		ti,otap-del-sel-sdr12 = <0xf>;
629		ti,otap-del-sel-sdr25 = <0xf>;
630		ti,otap-del-sel-sdr50 = <0xc>;
631		ti,otap-del-sel-sdr104 = <0x6>;
632		ti,otap-del-sel-ddr50 = <0x9>;
633		ti,clkbuf-sel = <0x7>;
634		status = "disabled";
635	};
636
637	cpsw3g: ethernet@8000000 {
638		compatible = "ti,am642-cpsw-nuss";
639		#address-cells = <2>;
640		#size-cells = <2>;
641		reg = <0x0 0x8000000 0x0 0x200000>;
642		reg-names = "cpsw_nuss";
643		ranges = <0x0 0x0 0x0 0x8000000 0x0 0x200000>;
644		clocks = <&k3_clks 13 0>;
645		assigned-clocks = <&k3_clks 13 1>;
646		assigned-clock-parents = <&k3_clks 13 9>;
647		clock-names = "fck";
648		power-domains = <&k3_pds 13 TI_SCI_PD_EXCLUSIVE>;
649
650		dmas = <&main_pktdma 0xC500 15>,
651		       <&main_pktdma 0xC501 15>,
652		       <&main_pktdma 0xC502 15>,
653		       <&main_pktdma 0xC503 15>,
654		       <&main_pktdma 0xC504 15>,
655		       <&main_pktdma 0xC505 15>,
656		       <&main_pktdma 0xC506 15>,
657		       <&main_pktdma 0xC507 15>,
658		       <&main_pktdma 0x4500 15>;
659		dma-names = "tx0", "tx1", "tx2", "tx3", "tx4", "tx5", "tx6",
660			    "tx7", "rx";
661
662		ethernet-ports {
663			#address-cells = <1>;
664			#size-cells = <0>;
665
666			cpsw_port1: port@1 {
667				reg = <1>;
668				ti,mac-only;
669				label = "port1";
670				phys = <&phy_gmii_sel 1>;
671				mac-address = [00 00 00 00 00 00];
672				ti,syscon-efuse = <&main_conf 0x200>;
673			};
674
675			cpsw_port2: port@2 {
676				reg = <2>;
677				ti,mac-only;
678				label = "port2";
679				phys = <&phy_gmii_sel 2>;
680				mac-address = [00 00 00 00 00 00];
681			};
682		};
683
684		cpsw3g_mdio: mdio@f00 {
685			compatible = "ti,cpsw-mdio","ti,davinci_mdio";
686			reg = <0x0 0xf00 0x0 0x100>;
687			#address-cells = <1>;
688			#size-cells = <0>;
689			clocks = <&k3_clks 13 0>;
690			clock-names = "fck";
691			bus_freq = <1000000>;
692			status = "disabled";
693		};
694
695		cpts@3d000 {
696			compatible = "ti,j721e-cpts";
697			reg = <0x0 0x3d000 0x0 0x400>;
698			clocks = <&k3_clks 13 1>;
699			clock-names = "cpts";
700			interrupts-extended = <&gic500 GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
701			interrupt-names = "cpts";
702			ti,cpts-ext-ts-inputs = <4>;
703			ti,cpts-periodic-outputs = <2>;
704		};
705	};
706
707	main_cpts0: cpts@39000000 {
708		compatible = "ti,j721e-cpts";
709		reg = <0x0 0x39000000 0x0 0x400>;
710		reg-names = "cpts";
711		power-domains = <&k3_pds 84 TI_SCI_PD_EXCLUSIVE>;
712		clocks = <&k3_clks 84 0>;
713		clock-names = "cpts";
714		assigned-clocks = <&k3_clks 84 0>;
715		assigned-clock-parents = <&k3_clks 84 8>;
716		interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
717		interrupt-names = "cpts";
718		ti,cpts-periodic-outputs = <6>;
719		ti,cpts-ext-ts-inputs = <8>;
720	};
721
722	timesync_router: pinctrl@a40000 {
723		compatible = "pinctrl-single";
724		reg = <0x0 0xa40000 0x0 0x800>;
725		#pinctrl-cells = <1>;
726		pinctrl-single,register-width = <32>;
727		pinctrl-single,function-mask = <0x000107ff>;
728	};
729
730	usbss0: cdns-usb@f900000 {
731		compatible = "ti,am64-usb";
732		reg = <0x00 0xf900000 0x00 0x100>;
733		power-domains = <&k3_pds 161 TI_SCI_PD_EXCLUSIVE>;
734		clocks = <&k3_clks 161 9>, <&k3_clks 161 1>;
735		clock-names = "ref", "lpm";
736		assigned-clocks = <&k3_clks 161 9>; /* USB2_REFCLK */
737		assigned-clock-parents = <&k3_clks 161 10>; /* HF0SC0 */
738		#address-cells = <2>;
739		#size-cells = <2>;
740		ranges;
741		usb0: usb@f400000 {
742			compatible = "cdns,usb3";
743			reg = <0x00 0xf400000 0x00 0x10000>,
744			      <0x00 0xf410000 0x00 0x10000>,
745			      <0x00 0xf420000 0x00 0x10000>;
746			reg-names = "otg",
747				    "xhci",
748				    "dev";
749			interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
750				     <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, /* irq.6 */
751				     <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>; /* otgirq */
752			interrupt-names = "host",
753					  "peripheral",
754					  "otg";
755			maximum-speed = "super-speed";
756			dr_mode = "otg";
757		};
758	};
759
760	tscadc0: tscadc@28001000 {
761		compatible = "ti,am654-tscadc", "ti,am3359-tscadc";
762		reg = <0x00 0x28001000 0x00 0x1000>;
763		interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
764		power-domains = <&k3_pds 0 TI_SCI_PD_EXCLUSIVE>;
765		clocks = <&k3_clks 0 0>;
766		assigned-clocks = <&k3_clks 0 0>;
767		assigned-clock-parents = <&k3_clks 0 3>;
768		assigned-clock-rates = <60000000>;
769		clock-names = "fck";
770		status = "disabled";
771
772		adc {
773			#io-channel-cells = <1>;
774			compatible = "ti,am654-adc", "ti,am3359-adc";
775		};
776	};
777
778	fss: bus@fc00000 {
779		compatible = "simple-bus";
780		reg = <0x00 0x0fc00000 0x00 0x70000>;
781		#address-cells = <2>;
782		#size-cells = <2>;
783		ranges;
784
785		ospi0: spi@fc40000 {
786			compatible = "ti,am654-ospi", "cdns,qspi-nor";
787			reg = <0x00 0x0fc40000 0x00 0x100>,
788			      <0x05 0x00000000 0x01 0x00000000>;
789			interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
790			cdns,fifo-depth = <256>;
791			cdns,fifo-width = <4>;
792			cdns,trigger-address = <0x0>;
793			#address-cells = <0x1>;
794			#size-cells = <0x0>;
795			clocks = <&k3_clks 75 6>;
796			assigned-clocks = <&k3_clks 75 6>;
797			assigned-clock-parents = <&k3_clks 75 7>;
798			assigned-clock-rates = <166666666>;
799			power-domains = <&k3_pds 75 TI_SCI_PD_EXCLUSIVE>;
800			status = "disabled";
801		};
802	};
803
804	hwspinlock: spinlock@2a000000 {
805		compatible = "ti,am64-hwspinlock";
806		reg = <0x00 0x2a000000 0x00 0x1000>;
807		#hwlock-cells = <1>;
808	};
809
810	mailbox0_cluster2: mailbox@29020000 {
811		compatible = "ti,am64-mailbox";
812		reg = <0x00 0x29020000 0x00 0x200>;
813		interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>,
814			     <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
815		#mbox-cells = <1>;
816		ti,mbox-num-users = <4>;
817		ti,mbox-num-fifos = <16>;
818		status = "disabled";
819	};
820
821	mailbox0_cluster3: mailbox@29030000 {
822		compatible = "ti,am64-mailbox";
823		reg = <0x00 0x29030000 0x00 0x200>;
824		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>,
825			     <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
826		#mbox-cells = <1>;
827		ti,mbox-num-users = <4>;
828		ti,mbox-num-fifos = <16>;
829		status = "disabled";
830	};
831
832	mailbox0_cluster4: mailbox@29040000 {
833		compatible = "ti,am64-mailbox";
834		reg = <0x00 0x29040000 0x00 0x200>;
835		interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>,
836			     <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
837		#mbox-cells = <1>;
838		ti,mbox-num-users = <4>;
839		ti,mbox-num-fifos = <16>;
840		status = "disabled";
841	};
842
843	mailbox0_cluster5: mailbox@29050000 {
844		compatible = "ti,am64-mailbox";
845		reg = <0x00 0x29050000 0x00 0x200>;
846		interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
847			     <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
848		#mbox-cells = <1>;
849		ti,mbox-num-users = <4>;
850		ti,mbox-num-fifos = <16>;
851		status = "disabled";
852	};
853
854	mailbox0_cluster6: mailbox@29060000 {
855		compatible = "ti,am64-mailbox";
856		reg = <0x00 0x29060000 0x00 0x200>;
857		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
858		#mbox-cells = <1>;
859		ti,mbox-num-users = <4>;
860		ti,mbox-num-fifos = <16>;
861		status = "disabled";
862	};
863
864	mailbox0_cluster7: mailbox@29070000 {
865		compatible = "ti,am64-mailbox";
866		reg = <0x00 0x29070000 0x00 0x200>;
867		interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
868		#mbox-cells = <1>;
869		ti,mbox-num-users = <4>;
870		ti,mbox-num-fifos = <16>;
871		status = "disabled";
872	};
873
874	main_r5fss0: r5fss@78000000 {
875		compatible = "ti,am64-r5fss";
876		ti,cluster-mode = <0>;
877		#address-cells = <1>;
878		#size-cells = <1>;
879		ranges = <0x78000000 0x00 0x78000000 0x10000>,
880			 <0x78100000 0x00 0x78100000 0x10000>,
881			 <0x78200000 0x00 0x78200000 0x08000>,
882			 <0x78300000 0x00 0x78300000 0x08000>;
883		power-domains = <&k3_pds 119 TI_SCI_PD_EXCLUSIVE>;
884
885		main_r5fss0_core0: r5f@78000000 {
886			compatible = "ti,am64-r5f";
887			reg = <0x78000000 0x00010000>,
888			      <0x78100000 0x00010000>;
889			reg-names = "atcm", "btcm";
890			ti,sci = <&dmsc>;
891			ti,sci-dev-id = <121>;
892			ti,sci-proc-ids = <0x01 0xff>;
893			resets = <&k3_reset 121 1>;
894			firmware-name = "am64-main-r5f0_0-fw";
895			ti,atcm-enable = <1>;
896			ti,btcm-enable = <1>;
897			ti,loczrama = <1>;
898		};
899
900		main_r5fss0_core1: r5f@78200000 {
901			compatible = "ti,am64-r5f";
902			reg = <0x78200000 0x00008000>,
903			      <0x78300000 0x00008000>;
904			reg-names = "atcm", "btcm";
905			ti,sci = <&dmsc>;
906			ti,sci-dev-id = <122>;
907			ti,sci-proc-ids = <0x02 0xff>;
908			resets = <&k3_reset 122 1>;
909			firmware-name = "am64-main-r5f0_1-fw";
910			ti,atcm-enable = <1>;
911			ti,btcm-enable = <1>;
912			ti,loczrama = <1>;
913		};
914	};
915
916	main_r5fss1: r5fss@78400000 {
917		compatible = "ti,am64-r5fss";
918		ti,cluster-mode = <0>;
919		#address-cells = <1>;
920		#size-cells = <1>;
921		ranges = <0x78400000 0x00 0x78400000 0x10000>,
922			 <0x78500000 0x00 0x78500000 0x10000>,
923			 <0x78600000 0x00 0x78600000 0x08000>,
924			 <0x78700000 0x00 0x78700000 0x08000>;
925		power-domains = <&k3_pds 120 TI_SCI_PD_EXCLUSIVE>;
926
927		main_r5fss1_core0: r5f@78400000 {
928			compatible = "ti,am64-r5f";
929			reg = <0x78400000 0x00010000>,
930			      <0x78500000 0x00010000>;
931			reg-names = "atcm", "btcm";
932			ti,sci = <&dmsc>;
933			ti,sci-dev-id = <123>;
934			ti,sci-proc-ids = <0x06 0xff>;
935			resets = <&k3_reset 123 1>;
936			firmware-name = "am64-main-r5f1_0-fw";
937			ti,atcm-enable = <1>;
938			ti,btcm-enable = <1>;
939			ti,loczrama = <1>;
940		};
941
942		main_r5fss1_core1: r5f@78600000 {
943			compatible = "ti,am64-r5f";
944			reg = <0x78600000 0x00008000>,
945			      <0x78700000 0x00008000>;
946			reg-names = "atcm", "btcm";
947			ti,sci = <&dmsc>;
948			ti,sci-dev-id = <124>;
949			ti,sci-proc-ids = <0x07 0xff>;
950			resets = <&k3_reset 124 1>;
951			firmware-name = "am64-main-r5f1_1-fw";
952			ti,atcm-enable = <1>;
953			ti,btcm-enable = <1>;
954			ti,loczrama = <1>;
955		};
956	};
957
958	serdes_wiz0: wiz@f000000 {
959		compatible = "ti,am64-wiz-10g";
960		#address-cells = <1>;
961		#size-cells = <1>;
962		power-domains = <&k3_pds 162 TI_SCI_PD_EXCLUSIVE>;
963		clocks = <&k3_clks 162 0>, <&k3_clks 162 1>, <&serdes_refclk>;
964		clock-names = "fck", "core_ref_clk", "ext_ref_clk";
965		num-lanes = <1>;
966		#reset-cells = <1>;
967		#clock-cells = <1>;
968		ranges = <0x0f000000 0x0 0x0f000000 0x00010000>;
969
970		assigned-clocks = <&k3_clks 162 1>;
971		assigned-clock-parents = <&k3_clks 162 5>;
972
973		serdes0: serdes@f000000 {
974			compatible = "ti,j721e-serdes-10g";
975			reg = <0x0f000000 0x00010000>;
976			reg-names = "torrent_phy";
977			resets = <&serdes_wiz0 0>;
978			reset-names = "torrent_reset";
979			clocks = <&serdes_wiz0 TI_WIZ_PLL0_REFCLK>,
980				 <&serdes_wiz0 TI_WIZ_PHY_EN_REFCLK>;
981			clock-names = "refclk", "phy_en_refclk";
982			assigned-clocks = <&serdes_wiz0 TI_WIZ_PLL0_REFCLK>,
983					  <&serdes_wiz0 TI_WIZ_PLL1_REFCLK>,
984					  <&serdes_wiz0 TI_WIZ_REFCLK_DIG>;
985			assigned-clock-parents = <&k3_clks 162 1>,
986						 <&k3_clks 162 1>,
987						 <&k3_clks 162 1>;
988			#address-cells = <1>;
989			#size-cells = <0>;
990			#clock-cells = <1>;
991		};
992	};
993
994	pcie0_rc: pcie@f102000 {
995		compatible = "ti,am64-pcie-host", "ti,j721e-pcie-host";
996		reg = <0x00 0x0f102000 0x00 0x1000>,
997		      <0x00 0x0f100000 0x00 0x400>,
998		      <0x00 0x0d000000 0x00 0x00800000>,
999		      <0x00 0x68000000 0x00 0x00001000>;
1000		reg-names = "intd_cfg", "user_cfg", "reg", "cfg";
1001		interrupt-names = "link_state";
1002		interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
1003		device_type = "pci";
1004		ti,syscon-pcie-ctrl = <&main_conf 0x4070>;
1005		max-link-speed = <2>;
1006		num-lanes = <1>;
1007		power-domains = <&k3_pds 114 TI_SCI_PD_EXCLUSIVE>;
1008		clocks = <&k3_clks 114 0>, <&serdes0 CDNS_TORRENT_REFCLK_DRIVER>;
1009		clock-names = "fck", "pcie_refclk";
1010		#address-cells = <3>;
1011		#size-cells = <2>;
1012		bus-range = <0x0 0xff>;
1013		cdns,no-bar-match-nbits = <64>;
1014		vendor-id = <0x104c>;
1015		device-id = <0xb010>;
1016		msi-map = <0x0 &gic_its 0x0 0x10000>;
1017		ranges = <0x01000000 0x00 0x68001000  0x00 0x68001000  0x00 0x0010000>,
1018			 <0x02000000 0x00 0x68011000  0x00 0x68011000  0x00 0x7fef000>;
1019		dma-ranges = <0x02000000 0x0 0x0 0x0 0x0 0x00000010 0x0>;
1020		status = "disabled";
1021	};
1022
1023	pcie0_ep: pcie-ep@f102000 {
1024		compatible = "ti,am64-pcie-ep", "ti,j721e-pcie-ep";
1025		reg = <0x00 0x0f102000 0x00 0x1000>,
1026		      <0x00 0x0f100000 0x00 0x400>,
1027		      <0x00 0x0d000000 0x00 0x00800000>,
1028		      <0x00 0x68000000 0x00 0x08000000>;
1029		reg-names = "intd_cfg", "user_cfg", "reg", "mem";
1030		interrupt-names = "link_state";
1031		interrupts = <GIC_SPI 203 IRQ_TYPE_EDGE_RISING>;
1032		ti,syscon-pcie-ctrl = <&main_conf 0x4070>;
1033		max-link-speed = <2>;
1034		num-lanes = <1>;
1035		power-domains = <&k3_pds 114 TI_SCI_PD_EXCLUSIVE>;
1036		clocks = <&k3_clks 114 0>;
1037		clock-names = "fck";
1038		max-functions = /bits/ 8 <1>;
1039		status = "disabled";
1040	};
1041
1042	epwm0: pwm@23000000 {
1043		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1044		#pwm-cells = <3>;
1045		reg = <0x0 0x23000000 0x0 0x100>;
1046		power-domains = <&k3_pds 86 TI_SCI_PD_EXCLUSIVE>;
1047		clocks = <&epwm_tbclk 0>, <&k3_clks 86 0>;
1048		clock-names = "tbclk", "fck";
1049		status = "disabled";
1050	};
1051
1052	epwm1: pwm@23010000 {
1053		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1054		#pwm-cells = <3>;
1055		reg = <0x0 0x23010000 0x0 0x100>;
1056		power-domains = <&k3_pds 87 TI_SCI_PD_EXCLUSIVE>;
1057		clocks = <&epwm_tbclk 1>, <&k3_clks 87 0>;
1058		clock-names = "tbclk", "fck";
1059		status = "disabled";
1060	};
1061
1062	epwm2: pwm@23020000 {
1063		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1064		#pwm-cells = <3>;
1065		reg = <0x0 0x23020000 0x0 0x100>;
1066		power-domains = <&k3_pds 88 TI_SCI_PD_EXCLUSIVE>;
1067		clocks = <&epwm_tbclk 2>, <&k3_clks 88 0>;
1068		clock-names = "tbclk", "fck";
1069		status = "disabled";
1070	};
1071
1072	epwm3: pwm@23030000 {
1073		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1074		#pwm-cells = <3>;
1075		reg = <0x0 0x23030000 0x0 0x100>;
1076		power-domains = <&k3_pds 89 TI_SCI_PD_EXCLUSIVE>;
1077		clocks = <&epwm_tbclk 3>, <&k3_clks 89 0>;
1078		clock-names = "tbclk", "fck";
1079		status = "disabled";
1080	};
1081
1082	epwm4: pwm@23040000 {
1083		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1084		#pwm-cells = <3>;
1085		reg = <0x0 0x23040000 0x0 0x100>;
1086		power-domains = <&k3_pds 90 TI_SCI_PD_EXCLUSIVE>;
1087		clocks = <&epwm_tbclk 4>, <&k3_clks 90 0>;
1088		clock-names = "tbclk", "fck";
1089		status = "disabled";
1090	};
1091
1092	epwm5: pwm@23050000 {
1093		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1094		#pwm-cells = <3>;
1095		reg = <0x0 0x23050000 0x0 0x100>;
1096		power-domains = <&k3_pds 91 TI_SCI_PD_EXCLUSIVE>;
1097		clocks = <&epwm_tbclk 5>, <&k3_clks 91 0>;
1098		clock-names = "tbclk", "fck";
1099		status = "disabled";
1100	};
1101
1102	epwm6: pwm@23060000 {
1103		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1104		#pwm-cells = <3>;
1105		reg = <0x0 0x23060000 0x0 0x100>;
1106		power-domains = <&k3_pds 92 TI_SCI_PD_EXCLUSIVE>;
1107		clocks = <&epwm_tbclk 6>, <&k3_clks 92 0>;
1108		clock-names = "tbclk", "fck";
1109		status = "disabled";
1110	};
1111
1112	epwm7: pwm@23070000 {
1113		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1114		#pwm-cells = <3>;
1115		reg = <0x0 0x23070000 0x0 0x100>;
1116		power-domains = <&k3_pds 93 TI_SCI_PD_EXCLUSIVE>;
1117		clocks = <&epwm_tbclk 7>, <&k3_clks 93 0>;
1118		clock-names = "tbclk", "fck";
1119		status = "disabled";
1120	};
1121
1122	epwm8: pwm@23080000 {
1123		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
1124		#pwm-cells = <3>;
1125		reg = <0x0 0x23080000 0x0 0x100>;
1126		power-domains = <&k3_pds 94 TI_SCI_PD_EXCLUSIVE>;
1127		clocks = <&epwm_tbclk 8>, <&k3_clks 94 0>;
1128		clock-names = "tbclk", "fck";
1129		status = "disabled";
1130	};
1131
1132	ecap0: pwm@23100000 {
1133		compatible = "ti,am64-ecap", "ti,am3352-ecap";
1134		#pwm-cells = <3>;
1135		reg = <0x0 0x23100000 0x0 0x60>;
1136		power-domains = <&k3_pds 51 TI_SCI_PD_EXCLUSIVE>;
1137		clocks = <&k3_clks 51 0>;
1138		clock-names = "fck";
1139		status = "disabled";
1140	};
1141
1142	ecap1: pwm@23110000 {
1143		compatible = "ti,am64-ecap", "ti,am3352-ecap";
1144		#pwm-cells = <3>;
1145		reg = <0x0 0x23110000 0x0 0x60>;
1146		power-domains = <&k3_pds 52 TI_SCI_PD_EXCLUSIVE>;
1147		clocks = <&k3_clks 52 0>;
1148		clock-names = "fck";
1149		status = "disabled";
1150	};
1151
1152	ecap2: pwm@23120000 {
1153		compatible = "ti,am64-ecap", "ti,am3352-ecap";
1154		#pwm-cells = <3>;
1155		reg = <0x0 0x23120000 0x0 0x60>;
1156		power-domains = <&k3_pds 53 TI_SCI_PD_EXCLUSIVE>;
1157		clocks = <&k3_clks 53 0>;
1158		clock-names = "fck";
1159		status = "disabled";
1160	};
1161
1162	main_rti0: watchdog@e000000 {
1163			compatible = "ti,j7-rti-wdt";
1164			reg = <0x00 0xe000000 0x00 0x100>;
1165			clocks = <&k3_clks 125 0>;
1166			power-domains = <&k3_pds 125 TI_SCI_PD_EXCLUSIVE>;
1167			assigned-clocks = <&k3_clks 125 0>;
1168			assigned-clock-parents = <&k3_clks 125 2>;
1169	};
1170
1171	main_rti1: watchdog@e010000 {
1172			compatible = "ti,j7-rti-wdt";
1173			reg = <0x00 0xe010000 0x00 0x100>;
1174			clocks = <&k3_clks 126 0>;
1175			power-domains = <&k3_pds 126 TI_SCI_PD_EXCLUSIVE>;
1176			assigned-clocks = <&k3_clks 126 0>;
1177			assigned-clock-parents = <&k3_clks 126 2>;
1178	};
1179
1180	icssg0: icssg@30000000 {
1181		compatible = "ti,am642-icssg";
1182		reg = <0x00 0x30000000 0x00 0x80000>;
1183		power-domains = <&k3_pds 81 TI_SCI_PD_EXCLUSIVE>;
1184		#address-cells = <1>;
1185		#size-cells = <1>;
1186		ranges = <0x0 0x00 0x30000000 0x80000>;
1187
1188		icssg0_mem: memories@0 {
1189			reg = <0x0 0x2000>,
1190			      <0x2000 0x2000>,
1191			      <0x10000 0x10000>;
1192			reg-names = "dram0", "dram1", "shrdram2";
1193		};
1194
1195		icssg0_cfg: cfg@26000 {
1196			compatible = "ti,pruss-cfg", "syscon";
1197			reg = <0x26000 0x200>;
1198			#address-cells = <1>;
1199			#size-cells = <1>;
1200			ranges = <0x0 0x26000 0x2000>;
1201
1202			clocks {
1203				#address-cells = <1>;
1204				#size-cells = <0>;
1205
1206				icssg0_coreclk_mux: coreclk-mux@3c {
1207					reg = <0x3c>;
1208					#clock-cells = <0>;
1209					clocks = <&k3_clks 81 0>,  /* icssg0_core_clk */
1210						 <&k3_clks 81 20>; /* icssg0_iclk */
1211					assigned-clocks = <&icssg0_coreclk_mux>;
1212					assigned-clock-parents = <&k3_clks 81 20>;
1213				};
1214
1215				icssg0_iepclk_mux: iepclk-mux@30 {
1216					reg = <0x30>;
1217					#clock-cells = <0>;
1218					clocks = <&k3_clks 81 3>,	/* icssg0_iep_clk */
1219						 <&icssg0_coreclk_mux>;	/* icssg0_coreclk_mux */
1220					assigned-clocks = <&icssg0_iepclk_mux>;
1221					assigned-clock-parents = <&icssg0_coreclk_mux>;
1222				};
1223			};
1224		};
1225
1226		icssg0_mii_rt: mii-rt@32000 {
1227			compatible = "ti,pruss-mii", "syscon";
1228			reg = <0x32000 0x100>;
1229		};
1230
1231		icssg0_mii_g_rt: mii-g-rt@33000 {
1232			compatible = "ti,pruss-mii-g", "syscon";
1233			reg = <0x33000 0x1000>;
1234		};
1235
1236		icssg0_intc: interrupt-controller@20000 {
1237			compatible = "ti,icssg-intc";
1238			reg = <0x20000 0x2000>;
1239			interrupt-controller;
1240			#interrupt-cells = <3>;
1241			interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
1242				     <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
1243				     <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
1244				     <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
1245				     <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
1246				     <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>,
1247				     <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
1248				     <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
1249			interrupt-names = "host_intr0", "host_intr1",
1250					  "host_intr2", "host_intr3",
1251					  "host_intr4", "host_intr5",
1252					  "host_intr6", "host_intr7";
1253		};
1254
1255		pru0_0: pru@34000 {
1256			compatible = "ti,am642-pru";
1257			reg = <0x34000 0x3000>,
1258			      <0x22000 0x100>,
1259			      <0x22400 0x100>;
1260			reg-names = "iram", "control", "debug";
1261			firmware-name = "am64x-pru0_0-fw";
1262		};
1263
1264		rtu0_0: rtu@4000 {
1265			compatible = "ti,am642-rtu";
1266			reg = <0x4000 0x2000>,
1267			      <0x23000 0x100>,
1268			      <0x23400 0x100>;
1269			reg-names = "iram", "control", "debug";
1270			firmware-name = "am64x-rtu0_0-fw";
1271		};
1272
1273		tx_pru0_0: txpru@a000 {
1274			compatible = "ti,am642-tx-pru";
1275			reg = <0xa000 0x1800>,
1276			      <0x25000 0x100>,
1277			      <0x25400 0x100>;
1278			reg-names = "iram", "control", "debug";
1279			firmware-name = "am64x-txpru0_0-fw";
1280		};
1281
1282		pru0_1: pru@38000 {
1283			compatible = "ti,am642-pru";
1284			reg = <0x38000 0x3000>,
1285			      <0x24000 0x100>,
1286			      <0x24400 0x100>;
1287			reg-names = "iram", "control", "debug";
1288			firmware-name = "am64x-pru0_1-fw";
1289		};
1290
1291		rtu0_1: rtu@6000 {
1292			compatible = "ti,am642-rtu";
1293			reg = <0x6000 0x2000>,
1294			      <0x23800 0x100>,
1295			      <0x23c00 0x100>;
1296			reg-names = "iram", "control", "debug";
1297			firmware-name = "am64x-rtu0_1-fw";
1298		};
1299
1300		tx_pru0_1: txpru@c000 {
1301			compatible = "ti,am642-tx-pru";
1302			reg = <0xc000 0x1800>,
1303			      <0x25800 0x100>,
1304			      <0x25c00 0x100>;
1305			reg-names = "iram", "control", "debug";
1306			firmware-name = "am64x-txpru0_1-fw";
1307		};
1308
1309		icssg0_mdio: mdio@32400 {
1310			compatible = "ti,davinci_mdio";
1311			reg = <0x32400 0x100>;
1312			clocks = <&k3_clks 62 3>;
1313			clock-names = "fck";
1314			#address-cells = <1>;
1315			#size-cells = <0>;
1316			bus_freq = <1000000>;
1317			status = "disabled";
1318		};
1319	};
1320
1321	icssg1: icssg@30080000 {
1322		compatible = "ti,am642-icssg";
1323		reg = <0x00 0x30080000 0x00 0x80000>;
1324		power-domains = <&k3_pds 82 TI_SCI_PD_EXCLUSIVE>;
1325		#address-cells = <1>;
1326		#size-cells = <1>;
1327		ranges = <0x0 0x00 0x30080000 0x80000>;
1328
1329		icssg1_mem: memories@0 {
1330			reg = <0x0 0x2000>,
1331			      <0x2000 0x2000>,
1332			      <0x10000 0x10000>;
1333			reg-names = "dram0", "dram1", "shrdram2";
1334		};
1335
1336		icssg1_cfg: cfg@26000 {
1337			compatible = "ti,pruss-cfg", "syscon";
1338			reg = <0x26000 0x200>;
1339			#address-cells = <1>;
1340			#size-cells = <1>;
1341			ranges = <0x0 0x26000 0x2000>;
1342
1343			clocks {
1344				#address-cells = <1>;
1345				#size-cells = <0>;
1346
1347				icssg1_coreclk_mux: coreclk-mux@3c {
1348					reg = <0x3c>;
1349					#clock-cells = <0>;
1350					clocks = <&k3_clks 82 0>,   /* icssg1_core_clk */
1351						 <&k3_clks 82 20>;  /* icssg1_iclk */
1352					assigned-clocks = <&icssg1_coreclk_mux>;
1353					assigned-clock-parents = <&k3_clks 82 20>;
1354				};
1355
1356				icssg1_iepclk_mux: iepclk-mux@30 {
1357					reg = <0x30>;
1358					#clock-cells = <0>;
1359					clocks = <&k3_clks 82 3>,	/* icssg1_iep_clk */
1360						 <&icssg1_coreclk_mux>;	/* icssg1_coreclk_mux */
1361					assigned-clocks = <&icssg1_iepclk_mux>;
1362					assigned-clock-parents = <&icssg1_coreclk_mux>;
1363				};
1364			};
1365		};
1366
1367		icssg1_mii_rt: mii-rt@32000 {
1368			compatible = "ti,pruss-mii", "syscon";
1369			reg = <0x32000 0x100>;
1370		};
1371
1372		icssg1_mii_g_rt: mii-g-rt@33000 {
1373			compatible = "ti,pruss-mii-g", "syscon";
1374			reg = <0x33000 0x1000>;
1375		};
1376
1377		icssg1_intc: interrupt-controller@20000 {
1378			compatible = "ti,icssg-intc";
1379			reg = <0x20000 0x2000>;
1380			interrupt-controller;
1381			#interrupt-cells = <3>;
1382			interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
1383				     <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,
1384				     <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
1385				     <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
1386				     <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
1387				     <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>,
1388				     <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>,
1389				     <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
1390			interrupt-names = "host_intr0", "host_intr1",
1391					  "host_intr2", "host_intr3",
1392					  "host_intr4", "host_intr5",
1393					  "host_intr6", "host_intr7";
1394		};
1395
1396		pru1_0: pru@34000 {
1397			compatible = "ti,am642-pru";
1398			reg = <0x34000 0x4000>,
1399			      <0x22000 0x100>,
1400			      <0x22400 0x100>;
1401			reg-names = "iram", "control", "debug";
1402			firmware-name = "am64x-pru1_0-fw";
1403		};
1404
1405		rtu1_0: rtu@4000 {
1406			compatible = "ti,am642-rtu";
1407			reg = <0x4000 0x2000>,
1408			      <0x23000 0x100>,
1409			      <0x23400 0x100>;
1410			reg-names = "iram", "control", "debug";
1411			firmware-name = "am64x-rtu1_0-fw";
1412		};
1413
1414		tx_pru1_0: txpru@a000 {
1415			compatible = "ti,am642-tx-pru";
1416			reg = <0xa000 0x1800>,
1417			      <0x25000 0x100>,
1418			      <0x25400 0x100>;
1419			reg-names = "iram", "control", "debug";
1420			firmware-name = "am64x-txpru1_0-fw";
1421		};
1422
1423		pru1_1: pru@38000 {
1424			compatible = "ti,am642-pru";
1425			reg = <0x38000 0x4000>,
1426			      <0x24000 0x100>,
1427			      <0x24400 0x100>;
1428			reg-names = "iram", "control", "debug";
1429			firmware-name = "am64x-pru1_1-fw";
1430		};
1431
1432		rtu1_1: rtu@6000 {
1433			compatible = "ti,am642-rtu";
1434			reg = <0x6000 0x2000>,
1435			      <0x23800 0x100>,
1436			      <0x23c00 0x100>;
1437			reg-names = "iram", "control", "debug";
1438			firmware-name = "am64x-rtu1_1-fw";
1439		};
1440
1441		tx_pru1_1: txpru@c000 {
1442			compatible = "ti,am642-tx-pru";
1443			reg = <0xc000 0x1800>,
1444			      <0x25800 0x100>,
1445			      <0x25c00 0x100>;
1446			reg-names = "iram", "control", "debug";
1447			firmware-name = "am64x-txpru1_1-fw";
1448		};
1449
1450		icssg1_mdio: mdio@32400 {
1451			compatible = "ti,davinci_mdio";
1452			reg = <0x32400 0x100>;
1453			#address-cells = <1>;
1454			#size-cells = <0>;
1455			clocks = <&k3_clks 82 0>;
1456			clock-names = "fck";
1457			bus_freq = <1000000>;
1458			status = "disabled";
1459		};
1460	};
1461
1462	main_mcan0: can@20701000 {
1463		compatible = "bosch,m_can";
1464		reg = <0x00 0x20701000 0x00 0x200>,
1465		      <0x00 0x20708000 0x00 0x8000>;
1466		reg-names = "m_can", "message_ram";
1467		power-domains = <&k3_pds 98 TI_SCI_PD_EXCLUSIVE>;
1468		clocks = <&k3_clks 98 5>, <&k3_clks 98 0>;
1469		clock-names = "hclk", "cclk";
1470		interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
1471			     <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
1472		interrupt-names = "int0", "int1";
1473		bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
1474		status = "disabled";
1475	};
1476
1477	main_mcan1: can@20711000 {
1478		compatible = "bosch,m_can";
1479		reg = <0x00 0x20711000 0x00 0x200>,
1480		      <0x00 0x20718000 0x00 0x8000>;
1481		reg-names = "m_can", "message_ram";
1482		power-domains = <&k3_pds 99 TI_SCI_PD_EXCLUSIVE>;
1483		clocks = <&k3_clks 99 5>, <&k3_clks 99 0>;
1484		clock-names = "hclk", "cclk";
1485		interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>,
1486			     <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
1487		interrupt-names = "int0", "int1";
1488		bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
1489		status = "disabled";
1490	};
1491
1492	crypto: crypto@40900000 {
1493		compatible = "ti,am64-sa2ul";
1494		reg = <0x00 0x40900000 0x00 0x1200>;
1495		power-domains = <&k3_pds 133 TI_SCI_PD_SHARED>;
1496		#address-cells = <2>;
1497		#size-cells = <2>;
1498		ranges = <0x00 0x40900000 0x00 0x40900000 0x00 0x30000>;
1499		dmas = <&main_pktdma 0xc001 0>, <&main_pktdma 0x4002 0>,
1500		       <&main_pktdma 0x4003 0>;
1501		dma-names = "tx", "rx1", "rx2";
1502
1503		rng: rng@40910000 {
1504			compatible = "inside-secure,safexcel-eip76";
1505			reg = <0x00 0x40910000 0x00 0x7d>;
1506			interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
1507			status = "disabled"; /* Used by OP-TEE */
1508		};
1509	};
1510
1511	gpmc0: memory-controller@3b000000 {
1512		compatible = "ti,am64-gpmc";
1513		power-domains = <&k3_pds 80 TI_SCI_PD_EXCLUSIVE>;
1514		clocks = <&k3_clks 80 0>;
1515		clock-names = "fck";
1516		reg = <0x00 0x3b000000 0x00 0x400>,
1517		      <0x00 0x50000000 0x00 0x8000000>;
1518		reg-names = "cfg", "data";
1519		interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
1520		gpmc,num-cs = <3>;
1521		gpmc,num-waitpins = <2>;
1522		#address-cells = <2>;
1523		#size-cells = <1>;
1524		interrupt-controller;
1525		#interrupt-cells = <2>;
1526		gpio-controller;
1527		#gpio-cells = <2>;
1528		status = "disabled";
1529	};
1530
1531	elm0: ecc@25010000 {
1532		compatible = "ti,am64-elm";
1533		reg = <0x00 0x25010000 0x00 0x2000>;
1534		interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>;
1535		power-domains = <&k3_pds 54 TI_SCI_PD_EXCLUSIVE>;
1536		clocks = <&k3_clks 54 0>;
1537		clock-names = "fck";
1538		status = "disabled";
1539	};
1540
1541	main_vtm0: temperature-sensor@b00000 {
1542		compatible = "ti,j7200-vtm";
1543		reg = <0x00 0xb00000 0x00 0x400>,
1544		      <0x00 0xb01000 0x00 0x400>;
1545		power-domains = <&k3_pds 95 TI_SCI_PD_EXCLUSIVE>;
1546		#thermal-sensor-cells = <1>;
1547	};
1548};
1549