xref: /linux/arch/arm64/boot/dts/ti/k3-am62-main.dtsi (revision 3f41368fbfe1b3d5922d317fe1a0a0cab6846802)
1// SPDX-License-Identifier: GPL-2.0-only OR MIT
2/*
3 * Device Tree Source for AM625 SoC Family Main Domain peripherals
4 *
5 * Copyright (C) 2020-2024 Texas Instruments Incorporated - https://www.ti.com/
6 */
7
8&cbass_main {
9	oc_sram: sram@70000000 {
10		compatible = "mmio-sram";
11		reg = <0x00 0x70000000 0x00 0x10000>;
12		#address-cells = <1>;
13		#size-cells = <1>;
14		ranges = <0x0 0x00 0x70000000 0x10000>;
15	};
16
17	gic500: interrupt-controller@1800000 {
18		compatible = "arm,gic-v3";
19		#address-cells = <2>;
20		#size-cells = <2>;
21		ranges;
22		#interrupt-cells = <3>;
23		interrupt-controller;
24		reg = <0x00 0x01800000 0x00 0x10000>,	/* GICD */
25		      <0x00 0x01880000 0x00 0xc0000>,	/* GICR */
26		      <0x00 0x01880000 0x00 0xc0000>,   /* GICR */
27		      <0x01 0x00000000 0x00 0x2000>,    /* GICC */
28		      <0x01 0x00010000 0x00 0x1000>,    /* GICH */
29		      <0x01 0x00020000 0x00 0x2000>;    /* GICV */
30		/*
31		 * vcpumntirq:
32		 * virtual CPU interface maintenance interrupt
33		 */
34		interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
35
36		gic_its: msi-controller@1820000 {
37			compatible = "arm,gic-v3-its";
38			reg = <0x00 0x01820000 0x00 0x10000>;
39			socionext,synquacer-pre-its = <0x1000000 0x400000>;
40			msi-controller;
41			#msi-cells = <1>;
42		};
43	};
44
45	main_conf: bus@100000 {
46		compatible = "simple-bus";
47		#address-cells = <1>;
48		#size-cells = <1>;
49		ranges = <0x0 0x00 0x00100000 0x20000>;
50
51		phy_gmii_sel: phy@4044 {
52			compatible = "ti,am654-phy-gmii-sel";
53			reg = <0x4044 0x8>;
54			#phy-cells = <1>;
55		};
56
57		epwm_tbclk: clock-controller@4130 {
58			compatible = "ti,am62-epwm-tbclk";
59			reg = <0x4130 0x4>;
60			#clock-cells = <1>;
61		};
62
63		audio_refclk0: clock-controller@82e0 {
64			compatible = "ti,am62-audio-refclk";
65			reg = <0x82e0 0x4>;
66			clocks = <&k3_clks 157 0>;
67			assigned-clocks = <&k3_clks 157 0>;
68			assigned-clock-parents = <&k3_clks 157 8>;
69			#clock-cells = <0>;
70		};
71
72		audio_refclk1: clock-controller@82e4 {
73			compatible = "ti,am62-audio-refclk";
74			reg = <0x82e4 0x4>;
75			clocks = <&k3_clks 157 10>;
76			assigned-clocks = <&k3_clks 157 10>;
77			assigned-clock-parents = <&k3_clks 157 18>;
78			#clock-cells = <0>;
79		};
80	};
81
82	dmss: bus@48000000 {
83		bootph-all;
84		compatible = "simple-bus";
85		#address-cells = <2>;
86		#size-cells = <2>;
87		dma-ranges;
88		ranges = <0x00 0x48000000 0x00 0x48000000 0x00 0x06400000>;
89
90		ti,sci-dev-id = <25>;
91
92		secure_proxy_main: mailbox@4d000000 {
93			bootph-all;
94			compatible = "ti,am654-secure-proxy";
95			#mbox-cells = <1>;
96			reg-names = "target_data", "rt", "scfg";
97			reg = <0x00 0x4d000000 0x00 0x80000>,
98			      <0x00 0x4a600000 0x00 0x80000>,
99			      <0x00 0x4a400000 0x00 0x80000>;
100			interrupt-names = "rx_012";
101			interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
102		};
103
104		inta_main_dmss: interrupt-controller@48000000 {
105			compatible = "ti,sci-inta";
106			reg = <0x00 0x48000000 0x00 0x100000>;
107			#interrupt-cells = <0>;
108			interrupt-controller;
109			interrupt-parent = <&gic500>;
110			msi-controller;
111			ti,sci = <&dmsc>;
112			ti,sci-dev-id = <28>;
113			ti,interrupt-ranges = <4 68 36>;
114			ti,unmapped-event-sources = <&main_bcdma>, <&main_pktdma>;
115		};
116
117		main_bcdma: dma-controller@485c0100 {
118			compatible = "ti,am64-dmss-bcdma";
119			reg = <0x00 0x485c0100 0x00 0x100>,
120			      <0x00 0x4c000000 0x00 0x20000>,
121			      <0x00 0x4a820000 0x00 0x20000>,
122			      <0x00 0x4aa40000 0x00 0x20000>,
123			      <0x00 0x4bc00000 0x00 0x100000>,
124			      <0x00 0x48600000 0x00 0x8000>,
125			      <0x00 0x484a4000 0x00 0x2000>,
126			      <0x00 0x484c2000 0x00 0x2000>,
127			      <0x00 0x48420000 0x00 0x2000>;
128			reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
129				    "ring", "tchan", "rchan", "bchan";
130			msi-parent = <&inta_main_dmss>;
131			#dma-cells = <3>;
132
133			ti,sci = <&dmsc>;
134			ti,sci-dev-id = <26>;
135			ti,sci-rm-range-bchan = <0x20>; /* BLOCK_COPY_CHAN */
136			ti,sci-rm-range-rchan = <0x21>; /* SPLIT_TR_RX_CHAN */
137			ti,sci-rm-range-tchan = <0x22>; /* SPLIT_TR_TX_CHAN */
138		};
139
140		main_pktdma: dma-controller@485c0000 {
141			compatible = "ti,am64-dmss-pktdma";
142			reg = <0x00 0x485c0000 0x00 0x100>,
143			      <0x00 0x4a800000 0x00 0x20000>,
144			      <0x00 0x4aa00000 0x00 0x40000>,
145			      <0x00 0x4b800000 0x00 0x400000>,
146			      <0x00 0x485e0000 0x00 0x10000>,
147			      <0x00 0x484a0000 0x00 0x2000>,
148			      <0x00 0x484c0000 0x00 0x2000>,
149			      <0x00 0x48430000 0x00 0x1000>;
150			reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt",
151				    "ring", "tchan", "rchan", "rflow";
152			msi-parent = <&inta_main_dmss>;
153			#dma-cells = <2>;
154
155			ti,sci = <&dmsc>;
156			ti,sci-dev-id = <30>;
157			ti,sci-rm-range-tchan = <0x23>, /* UNMAPPED_TX_CHAN */
158						<0x24>, /* CPSW_TX_CHAN */
159						<0x25>, /* SAUL_TX_0_CHAN */
160						<0x26>; /* SAUL_TX_1_CHAN */
161			ti,sci-rm-range-tflow = <0x10>, /* RING_UNMAPPED_TX_CHAN */
162						<0x11>, /* RING_CPSW_TX_CHAN */
163						<0x12>, /* RING_SAUL_TX_0_CHAN */
164						<0x13>; /* RING_SAUL_TX_1_CHAN */
165			ti,sci-rm-range-rchan = <0x29>, /* UNMAPPED_RX_CHAN */
166						<0x2b>, /* CPSW_RX_CHAN */
167						<0x2d>, /* SAUL_RX_0_CHAN */
168						<0x2f>, /* SAUL_RX_1_CHAN */
169						<0x31>, /* SAUL_RX_2_CHAN */
170						<0x33>; /* SAUL_RX_3_CHAN */
171			ti,sci-rm-range-rflow = <0x2a>, /* FLOW_UNMAPPED_RX_CHAN */
172						<0x2c>, /* FLOW_CPSW_RX_CHAN */
173						<0x2e>, /* FLOW_SAUL_RX_0/1_CHAN */
174						<0x32>; /* FLOW_SAUL_RX_2/3_CHAN */
175		};
176	};
177
178	dmsc: system-controller@44043000 {
179		bootph-all;
180		compatible = "ti,k2g-sci";
181		ti,host-id = <12>;
182		mbox-names = "rx", "tx";
183		mboxes = <&secure_proxy_main 12>,
184			 <&secure_proxy_main 13>;
185		reg-names = "debug_messages";
186		reg = <0x00 0x44043000 0x00 0xfe0>;
187
188		k3_pds: power-controller {
189			bootph-all;
190			compatible = "ti,sci-pm-domain";
191			#power-domain-cells = <2>;
192		};
193
194		k3_clks: clock-controller {
195			bootph-all;
196			compatible = "ti,k2g-sci-clk";
197			#clock-cells = <2>;
198		};
199
200		k3_reset: reset-controller {
201			bootph-all;
202			compatible = "ti,sci-reset";
203			#reset-cells = <2>;
204		};
205	};
206
207	crypto: crypto@40900000 {
208		compatible = "ti,am62-sa3ul";
209		reg = <0x00 0x40900000 0x00 0x1200>;
210		#address-cells = <2>;
211		#size-cells = <2>;
212		ranges = <0x00 0x40900000 0x00 0x40900000 0x00 0x30000>;
213
214		dmas = <&main_pktdma 0xf501 0>, <&main_pktdma 0x7506 0>,
215		       <&main_pktdma 0x7507 0>;
216		dma-names = "tx", "rx1", "rx2";
217	};
218
219	secure_proxy_sa3: mailbox@43600000 {
220		bootph-pre-ram;
221		compatible = "ti,am654-secure-proxy";
222		#mbox-cells = <1>;
223		reg-names = "target_data", "rt", "scfg";
224		reg = <0x00 0x43600000 0x00 0x10000>,
225		      <0x00 0x44880000 0x00 0x20000>,
226		      <0x00 0x44860000 0x00 0x20000>;
227		/*
228		 * Marked Disabled:
229		 * Node is incomplete as it is meant for bootloaders and
230		 * firmware on non-MPU processors
231		 */
232		status = "disabled";
233	};
234
235	main_pmx0: pinctrl@f4000 {
236		bootph-all;
237		compatible = "pinctrl-single";
238		reg = <0x00 0xf4000 0x00 0x2ac>;
239		#pinctrl-cells = <1>;
240		pinctrl-single,register-width = <32>;
241		pinctrl-single,function-mask = <0xffffffff>;
242	};
243
244	main_esm: esm@420000 {
245		bootph-pre-ram;
246		compatible = "ti,j721e-esm";
247		reg = <0x00 0x420000 0x00 0x1000>;
248		ti,esm-pins = <160>, <161>, <162>, <163>, <177>, <178>;
249	};
250
251	main_timer0: timer@2400000 {
252		bootph-all;
253		compatible = "ti,am654-timer";
254		reg = <0x00 0x2400000 0x00 0x400>;
255		interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
256		clocks = <&k3_clks 36 2>;
257		clock-names = "fck";
258		assigned-clocks = <&k3_clks 36 2>;
259		assigned-clock-parents = <&k3_clks 36 3>;
260		power-domains = <&k3_pds 36 TI_SCI_PD_EXCLUSIVE>;
261		ti,timer-pwm;
262	};
263
264	main_timer1: timer@2410000 {
265		compatible = "ti,am654-timer";
266		reg = <0x00 0x2410000 0x00 0x400>;
267		interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
268		clocks = <&k3_clks 37 2>;
269		clock-names = "fck";
270		assigned-clocks = <&k3_clks 37 2>;
271		assigned-clock-parents = <&k3_clks 37 3>;
272		power-domains = <&k3_pds 37 TI_SCI_PD_EXCLUSIVE>;
273		ti,timer-pwm;
274	};
275
276	main_timer2: timer@2420000 {
277		compatible = "ti,am654-timer";
278		reg = <0x00 0x2420000 0x00 0x400>;
279		interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
280		clocks = <&k3_clks 38 2>;
281		clock-names = "fck";
282		assigned-clocks = <&k3_clks 38 2>;
283		assigned-clock-parents = <&k3_clks 38 3>;
284		power-domains = <&k3_pds 38 TI_SCI_PD_EXCLUSIVE>;
285		ti,timer-pwm;
286	};
287
288	main_timer3: timer@2430000 {
289		compatible = "ti,am654-timer";
290		reg = <0x00 0x2430000 0x00 0x400>;
291		interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
292		clocks = <&k3_clks 39 2>;
293		clock-names = "fck";
294		assigned-clocks = <&k3_clks 39 2>;
295		assigned-clock-parents = <&k3_clks 39 3>;
296		power-domains = <&k3_pds 39 TI_SCI_PD_EXCLUSIVE>;
297		ti,timer-pwm;
298	};
299
300	main_timer4: timer@2440000 {
301		compatible = "ti,am654-timer";
302		reg = <0x00 0x2440000 0x00 0x400>;
303		interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
304		clocks = <&k3_clks 40 2>;
305		clock-names = "fck";
306		assigned-clocks = <&k3_clks 40 2>;
307		assigned-clock-parents = <&k3_clks 40 3>;
308		power-domains = <&k3_pds 40 TI_SCI_PD_EXCLUSIVE>;
309		ti,timer-pwm;
310	};
311
312	main_timer5: timer@2450000 {
313		compatible = "ti,am654-timer";
314		reg = <0x00 0x2450000 0x00 0x400>;
315		interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
316		clocks = <&k3_clks 41 2>;
317		clock-names = "fck";
318		assigned-clocks = <&k3_clks 41 2>;
319		assigned-clock-parents = <&k3_clks 41 3>;
320		power-domains = <&k3_pds 41 TI_SCI_PD_EXCLUSIVE>;
321		ti,timer-pwm;
322	};
323
324	main_timer6: timer@2460000 {
325		compatible = "ti,am654-timer";
326		reg = <0x00 0x2460000 0x00 0x400>;
327		interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
328		clocks = <&k3_clks 42 2>;
329		clock-names = "fck";
330		assigned-clocks = <&k3_clks 42 2>;
331		assigned-clock-parents = <&k3_clks 42 3>;
332		power-domains = <&k3_pds 42 TI_SCI_PD_EXCLUSIVE>;
333		ti,timer-pwm;
334	};
335
336	main_timer7: timer@2470000 {
337		compatible = "ti,am654-timer";
338		reg = <0x00 0x2470000 0x00 0x400>;
339		interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
340		clocks = <&k3_clks 43 2>;
341		clock-names = "fck";
342		assigned-clocks = <&k3_clks 43 2>;
343		assigned-clock-parents = <&k3_clks 43 3>;
344		power-domains = <&k3_pds 43 TI_SCI_PD_EXCLUSIVE>;
345		ti,timer-pwm;
346	};
347
348	main_uart0: serial@2800000 {
349		compatible = "ti,am64-uart", "ti,am654-uart";
350		reg = <0x00 0x02800000 0x00 0x100>;
351		interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
352		power-domains = <&k3_pds 146 TI_SCI_PD_EXCLUSIVE>;
353		clocks = <&k3_clks 146 0>;
354		clock-names = "fclk";
355		status = "disabled";
356	};
357
358	main_uart1: serial@2810000 {
359		compatible = "ti,am64-uart", "ti,am654-uart";
360		reg = <0x00 0x02810000 0x00 0x100>;
361		interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>;
362		power-domains = <&k3_pds 152 TI_SCI_PD_EXCLUSIVE>;
363		clocks = <&k3_clks 152 0>;
364		clock-names = "fclk";
365		status = "disabled";
366	};
367
368	main_uart2: serial@2820000 {
369		compatible = "ti,am64-uart", "ti,am654-uart";
370		reg = <0x00 0x02820000 0x00 0x100>;
371		interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
372		power-domains = <&k3_pds 153 TI_SCI_PD_EXCLUSIVE>;
373		clocks = <&k3_clks 153 0>;
374		clock-names = "fclk";
375		status = "disabled";
376	};
377
378	main_uart3: serial@2830000 {
379		compatible = "ti,am64-uart", "ti,am654-uart";
380		reg = <0x00 0x02830000 0x00 0x100>;
381		interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>;
382		power-domains = <&k3_pds 154 TI_SCI_PD_EXCLUSIVE>;
383		clocks = <&k3_clks 154 0>;
384		clock-names = "fclk";
385		status = "disabled";
386	};
387
388	main_uart4: serial@2840000 {
389		compatible = "ti,am64-uart", "ti,am654-uart";
390		reg = <0x00 0x02840000 0x00 0x100>;
391		interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>;
392		power-domains = <&k3_pds 155 TI_SCI_PD_EXCLUSIVE>;
393		clocks = <&k3_clks 155 0>;
394		clock-names = "fclk";
395		status = "disabled";
396	};
397
398	main_uart5: serial@2850000 {
399		compatible = "ti,am64-uart", "ti,am654-uart";
400		reg = <0x00 0x02850000 0x00 0x100>;
401		interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
402		power-domains = <&k3_pds 156 TI_SCI_PD_EXCLUSIVE>;
403		clocks = <&k3_clks 156 0>;
404		clock-names = "fclk";
405		status = "disabled";
406	};
407
408	main_uart6: serial@2860000 {
409		compatible = "ti,am64-uart", "ti,am654-uart";
410		reg = <0x00 0x02860000 0x00 0x100>;
411		interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
412		power-domains = <&k3_pds 158 TI_SCI_PD_EXCLUSIVE>;
413		clocks = <&k3_clks 158 0>;
414		clock-names = "fclk";
415		status = "disabled";
416	};
417
418	main_i2c0: i2c@20000000 {
419		compatible = "ti,am64-i2c", "ti,omap4-i2c";
420		reg = <0x00 0x20000000 0x00 0x100>;
421		interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
422		#address-cells = <1>;
423		#size-cells = <0>;
424		power-domains = <&k3_pds 102 TI_SCI_PD_EXCLUSIVE>;
425		clocks = <&k3_clks 102 2>;
426		clock-names = "fck";
427		status = "disabled";
428	};
429
430	main_i2c1: i2c@20010000 {
431		compatible = "ti,am64-i2c", "ti,omap4-i2c";
432		reg = <0x00 0x20010000 0x00 0x100>;
433		interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
434		#address-cells = <1>;
435		#size-cells = <0>;
436		power-domains = <&k3_pds 103 TI_SCI_PD_EXCLUSIVE>;
437		clocks = <&k3_clks 103 2>;
438		clock-names = "fck";
439		status = "disabled";
440	};
441
442	main_i2c2: i2c@20020000 {
443		compatible = "ti,am64-i2c", "ti,omap4-i2c";
444		reg = <0x00 0x20020000 0x00 0x100>;
445		interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
446		#address-cells = <1>;
447		#size-cells = <0>;
448		power-domains = <&k3_pds 104 TI_SCI_PD_EXCLUSIVE>;
449		clocks = <&k3_clks 104 2>;
450		clock-names = "fck";
451		status = "disabled";
452	};
453
454	main_i2c3: i2c@20030000 {
455		compatible = "ti,am64-i2c", "ti,omap4-i2c";
456		reg = <0x00 0x20030000 0x00 0x100>;
457		interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
458		#address-cells = <1>;
459		#size-cells = <0>;
460		power-domains = <&k3_pds 105 TI_SCI_PD_EXCLUSIVE>;
461		clocks = <&k3_clks 105 2>;
462		clock-names = "fck";
463		status = "disabled";
464	};
465
466	main_spi0: spi@20100000 {
467		compatible = "ti,am654-mcspi", "ti,omap4-mcspi";
468		reg = <0x00 0x20100000 0x00 0x400>;
469		interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
470		#address-cells = <1>;
471		#size-cells = <0>;
472		power-domains = <&k3_pds 141 TI_SCI_PD_EXCLUSIVE>;
473		clocks = <&k3_clks 141 0>;
474		status = "disabled";
475	};
476
477	main_spi1: spi@20110000 {
478		compatible = "ti,am654-mcspi","ti,omap4-mcspi";
479		reg = <0x00 0x20110000 0x00 0x400>;
480		interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>;
481		#address-cells = <1>;
482		#size-cells = <0>;
483		power-domains = <&k3_pds 142 TI_SCI_PD_EXCLUSIVE>;
484		clocks = <&k3_clks 142 0>;
485		status = "disabled";
486	};
487
488	main_spi2: spi@20120000 {
489		compatible = "ti,am654-mcspi","ti,omap4-mcspi";
490		reg = <0x00 0x20120000 0x00 0x400>;
491		interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
492		#address-cells = <1>;
493		#size-cells = <0>;
494		power-domains = <&k3_pds 143 TI_SCI_PD_EXCLUSIVE>;
495		clocks = <&k3_clks 143 0>;
496		status = "disabled";
497	};
498
499	main_gpio_intr: interrupt-controller@a00000 {
500		compatible = "ti,sci-intr";
501		reg = <0x00 0x00a00000 0x00 0x800>;
502		ti,intr-trigger-type = <1>;
503		interrupt-controller;
504		interrupt-parent = <&gic500>;
505		#interrupt-cells = <1>;
506		ti,sci = <&dmsc>;
507		ti,sci-dev-id = <3>;
508		ti,interrupt-ranges = <0 32 16>;
509	};
510
511	main_gpio0: gpio@600000 {
512		compatible = "ti,am64-gpio", "ti,keystone-gpio";
513		reg = <0x0 0x00600000 0x0 0x100>;
514		gpio-ranges = <&main_pmx0  0  0 32>,
515			      <&main_pmx0 32 33 38>,
516			      <&main_pmx0 70 72 22>;
517		gpio-controller;
518		#gpio-cells = <2>;
519		interrupt-parent = <&main_gpio_intr>;
520		interrupts = <190>, <191>, <192>,
521			     <193>, <194>, <195>;
522		interrupt-controller;
523		#interrupt-cells = <2>;
524		ti,ngpio = <92>;
525		ti,davinci-gpio-unbanked = <0>;
526		power-domains = <&k3_pds 77 TI_SCI_PD_EXCLUSIVE>;
527		clocks = <&k3_clks 77 0>;
528		clock-names = "gpio";
529	};
530
531	main_gpio1: gpio@601000 {
532		compatible = "ti,am64-gpio", "ti,keystone-gpio";
533		reg = <0x0 0x00601000 0x0 0x100>;
534		gpio-controller;
535		gpio-ranges = <&main_pmx0  0  94 41>,
536			      <&main_pmx0 41 136  6>,
537			      <&main_pmx0 47 143  3>,
538			      <&main_pmx0 50 149  2>;
539		#gpio-cells = <2>;
540		interrupt-parent = <&main_gpio_intr>;
541		interrupts = <180>, <181>, <182>,
542			     <183>, <184>, <185>;
543		interrupt-controller;
544		#interrupt-cells = <2>;
545		ti,ngpio = <52>;
546		ti,davinci-gpio-unbanked = <0>;
547		power-domains = <&k3_pds 78 TI_SCI_PD_EXCLUSIVE>;
548		clocks = <&k3_clks 78 0>;
549		clock-names = "gpio";
550	};
551
552	sdhci0: mmc@fa10000 {
553		compatible = "ti,am62-sdhci";
554		reg = <0x00 0x0fa10000 0x00 0x1000>, <0x00 0x0fa18000 0x00 0x400>;
555		interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
556		power-domains = <&k3_pds 57 TI_SCI_PD_EXCLUSIVE>;
557		clocks = <&k3_clks 57 5>, <&k3_clks 57 6>;
558		clock-names = "clk_ahb", "clk_xin";
559		assigned-clocks = <&k3_clks 57 6>;
560		assigned-clock-parents = <&k3_clks 57 8>;
561		bus-width = <8>;
562		mmc-ddr-1_8v;
563		mmc-hs200-1_8v;
564		ti,clkbuf-sel = <0x7>;
565		ti,otap-del-sel-legacy = <0x0>;
566		ti,otap-del-sel-mmc-hs = <0x0>;
567		ti,otap-del-sel-ddr52 = <0x5>;
568		ti,otap-del-sel-hs200 = <0x5>;
569		ti,itap-del-sel-legacy = <0xa>;
570		ti,itap-del-sel-mmc-hs = <0x1>;
571		status = "disabled";
572	};
573
574	sdhci1: mmc@fa00000 {
575		compatible = "ti,am62-sdhci";
576		reg = <0x00 0x0fa00000 0x00 0x1000>, <0x00 0x0fa08000 0x00 0x400>;
577		interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
578		power-domains = <&k3_pds 58 TI_SCI_PD_EXCLUSIVE>;
579		clocks = <&k3_clks 58 5>, <&k3_clks 58 6>;
580		clock-names = "clk_ahb", "clk_xin";
581		bus-width = <4>;
582		ti,clkbuf-sel = <0x7>;
583		ti,otap-del-sel-legacy = <0x8>;
584		ti,otap-del-sel-sd-hs = <0x0>;
585		ti,otap-del-sel-sdr12 = <0x0>;
586		ti,otap-del-sel-sdr25 = <0x0>;
587		ti,otap-del-sel-sdr50 = <0x8>;
588		ti,otap-del-sel-sdr104 = <0x7>;
589		ti,otap-del-sel-ddr50 = <0x4>;
590		ti,itap-del-sel-legacy = <0xa>;
591		ti,itap-del-sel-sd-hs = <0x1>;
592		ti,itap-del-sel-sdr12 = <0xa>;
593		ti,itap-del-sel-sdr25 = <0x1>;
594		status = "disabled";
595	};
596
597	sdhci2: mmc@fa20000 {
598		compatible = "ti,am62-sdhci";
599		reg = <0x00 0x0fa20000 0x00 0x1000>, <0x00 0x0fa28000 0x00 0x400>;
600		interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
601		power-domains = <&k3_pds 184 TI_SCI_PD_EXCLUSIVE>;
602		clocks = <&k3_clks 184 5>, <&k3_clks 184 6>;
603		clock-names = "clk_ahb", "clk_xin";
604		bus-width = <4>;
605		ti,clkbuf-sel = <0x7>;
606		ti,otap-del-sel-legacy = <0x8>;
607		ti,otap-del-sel-sd-hs = <0x0>;
608		ti,otap-del-sel-sdr12 = <0x0>;
609		ti,otap-del-sel-sdr25 = <0x0>;
610		ti,otap-del-sel-sdr50 = <0x8>;
611		ti,otap-del-sel-sdr104 = <0x7>;
612		ti,otap-del-sel-ddr50 = <0x8>;
613		ti,itap-del-sel-legacy = <0xa>;
614		ti,itap-del-sel-sd-hs = <0xa>;
615		ti,itap-del-sel-sdr12 = <0xa>;
616		ti,itap-del-sel-sdr25 = <0x1>;
617		status = "disabled";
618	};
619
620	usbss0: dwc3-usb@f900000 {
621		compatible = "ti,am62-usb";
622		reg = <0x00 0x0f900000 0x00 0x800>,
623		      <0x00 0x0f908000 0x00 0x400>;
624		clocks = <&k3_clks 161 3>;
625		clock-names = "ref";
626		ti,syscon-phy-pll-refclk = <&usb0_phy_ctrl 0x0>;
627		#address-cells = <2>;
628		#size-cells = <2>;
629		power-domains = <&k3_pds 178 TI_SCI_PD_EXCLUSIVE>;
630		ranges;
631		status = "disabled";
632
633		usb0: usb@31000000 {
634			compatible = "snps,dwc3";
635			reg = <0x00 0x31000000 0x00 0x50000>;
636			interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
637				     <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; /* irq.0 */
638			interrupt-names = "host", "peripheral";
639			maximum-speed = "high-speed";
640			dr_mode = "otg";
641			snps,usb2-gadget-lpm-disable;
642			snps,usb2-lpm-disable;
643		};
644	};
645
646	usbss1: dwc3-usb@f910000 {
647		compatible = "ti,am62-usb";
648		reg = <0x00 0x0f910000 0x00 0x800>,
649		      <0x00 0x0f918000 0x00 0x400>;
650		clocks = <&k3_clks 162 3>;
651		clock-names = "ref";
652		ti,syscon-phy-pll-refclk = <&usb1_phy_ctrl 0x0>;
653		#address-cells = <2>;
654		#size-cells = <2>;
655		power-domains = <&k3_pds 179 TI_SCI_PD_EXCLUSIVE>;
656		ranges;
657		status = "disabled";
658
659		usb1: usb@31100000 {
660			compatible = "snps,dwc3";
661			reg = <0x00 0x31100000 0x00 0x50000>;
662			interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
663				     <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>; /* irq.0 */
664			interrupt-names = "host", "peripheral";
665			maximum-speed = "high-speed";
666			dr_mode = "otg";
667			snps,usb2-gadget-lpm-disable;
668			snps,usb2-lpm-disable;
669		};
670	};
671
672	fss: bus@fc00000 {
673		compatible = "simple-bus";
674		reg = <0x00 0x0fc00000 0x00 0x70000>;
675		#address-cells = <2>;
676		#size-cells = <2>;
677		ranges;
678
679		ospi0: spi@fc40000 {
680			compatible = "ti,am654-ospi", "cdns,qspi-nor";
681			reg = <0x00 0x0fc40000 0x00 0x100>,
682			      <0x05 0x00000000 0x01 0x00000000>;
683			interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;
684			cdns,fifo-depth = <256>;
685			cdns,fifo-width = <4>;
686			cdns,trigger-address = <0x0>;
687			clocks = <&k3_clks 75 7>;
688			assigned-clocks = <&k3_clks 75 7>;
689			assigned-clock-parents = <&k3_clks 75 8>;
690			assigned-clock-rates = <166666666>;
691			power-domains = <&k3_pds 75 TI_SCI_PD_EXCLUSIVE>;
692			#address-cells = <1>;
693			#size-cells = <0>;
694			status = "disabled";
695		};
696	};
697
698	gpu: gpu@fd00000 {
699		compatible = "ti,am62-gpu", "img,img-axe";
700		reg = <0x00 0x0fd00000 0x00 0x20000>;
701		clocks = <&k3_clks 187 0>;
702		clock-names = "core";
703		interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
704		power-domains = <&k3_pds 187 TI_SCI_PD_EXCLUSIVE>;
705	};
706
707	cpsw3g: ethernet@8000000 {
708		compatible = "ti,am642-cpsw-nuss";
709		#address-cells = <2>;
710		#size-cells = <2>;
711		reg = <0x00 0x08000000 0x00 0x200000>;
712		reg-names = "cpsw_nuss";
713		ranges = <0x00 0x00 0x00 0x08000000 0x00 0x200000>;
714		clocks = <&k3_clks 13 0>;
715		assigned-clocks = <&k3_clks 13 3>;
716		assigned-clock-parents = <&k3_clks 13 11>;
717		clock-names = "fck";
718		power-domains = <&k3_pds 13 TI_SCI_PD_EXCLUSIVE>;
719
720		dmas = <&main_pktdma 0xc600 15>,
721		       <&main_pktdma 0xc601 15>,
722		       <&main_pktdma 0xc602 15>,
723		       <&main_pktdma 0xc603 15>,
724		       <&main_pktdma 0xc604 15>,
725		       <&main_pktdma 0xc605 15>,
726		       <&main_pktdma 0xc606 15>,
727		       <&main_pktdma 0xc607 15>,
728		       <&main_pktdma 0x4600 15>;
729		dma-names = "tx0", "tx1", "tx2", "tx3", "tx4", "tx5", "tx6",
730			    "tx7", "rx";
731
732		ethernet-ports {
733			#address-cells = <1>;
734			#size-cells = <0>;
735
736			cpsw_port1: port@1 {
737				reg = <1>;
738				ti,mac-only;
739				label = "port1";
740				phys = <&phy_gmii_sel 1>;
741				mac-address = [00 00 00 00 00 00];
742				ti,syscon-efuse = <&wkup_conf 0x200>;
743			};
744
745			cpsw_port2: port@2 {
746				reg = <2>;
747				ti,mac-only;
748				label = "port2";
749				phys = <&phy_gmii_sel 2>;
750				mac-address = [00 00 00 00 00 00];
751			};
752		};
753
754		cpsw3g_mdio: mdio@f00 {
755			compatible = "ti,cpsw-mdio","ti,davinci_mdio";
756			reg = <0x00 0xf00 0x00 0x100>;
757			#address-cells = <1>;
758			#size-cells = <0>;
759			clocks = <&k3_clks 13 0>;
760			clock-names = "fck";
761			bus_freq = <1000000>;
762			status = "disabled";
763		};
764
765		cpts@3d000 {
766			compatible = "ti,j721e-cpts";
767			reg = <0x00 0x3d000 0x00 0x400>;
768			clocks = <&k3_clks 13 3>;
769			clock-names = "cpts";
770			interrupts-extended = <&gic500 GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
771			interrupt-names = "cpts";
772			ti,cpts-ext-ts-inputs = <4>;
773			ti,cpts-periodic-outputs = <2>;
774		};
775	};
776
777	dss: dss@30200000 {
778		compatible = "ti,am625-dss";
779		reg = <0x00 0x30200000 0x00 0x1000>, /* common */
780		      <0x00 0x30202000 0x00 0x1000>, /* vidl1 */
781		      <0x00 0x30206000 0x00 0x1000>, /* vid */
782		      <0x00 0x30207000 0x00 0x1000>, /* ovr1 */
783		      <0x00 0x30208000 0x00 0x1000>, /* ovr2 */
784		      <0x00 0x3020a000 0x00 0x1000>, /* vp1: Used for OLDI */
785		      <0x00 0x3020b000 0x00 0x1000>, /* vp2: Used as DPI Out */
786		      <0x00 0x30201000 0x00 0x1000>; /* common1 */
787		reg-names = "common", "vidl1", "vid",
788			    "ovr1", "ovr2", "vp1", "vp2", "common1";
789		power-domains = <&k3_pds 186 TI_SCI_PD_EXCLUSIVE>;
790		clocks = <&k3_clks 186 6>,
791			 <&dss_vp1_clk>,
792			 <&k3_clks 186 2>;
793		clock-names = "fck", "vp1", "vp2";
794		interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
795		status = "disabled";
796
797		dss_ports: ports {
798			#address-cells = <1>;
799			#size-cells = <0>;
800		};
801	};
802
803	hwspinlock: spinlock@2a000000 {
804		compatible = "ti,am64-hwspinlock";
805		reg = <0x00 0x2a000000 0x00 0x1000>;
806		#hwlock-cells = <1>;
807	};
808
809	mailbox0_cluster0: mailbox@29000000 {
810		compatible = "ti,am64-mailbox";
811		reg = <0x00 0x29000000 0x00 0x200>;
812		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>,
813			     <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
814		#mbox-cells = <1>;
815		ti,mbox-num-users = <4>;
816		ti,mbox-num-fifos = <16>;
817	};
818
819	ecap0: pwm@23100000 {
820		compatible = "ti,am3352-ecap";
821		#pwm-cells = <3>;
822		reg = <0x00 0x23100000 0x00 0x100>;
823		power-domains = <&k3_pds 51 TI_SCI_PD_EXCLUSIVE>;
824		clocks = <&k3_clks 51 0>;
825		clock-names = "fck";
826		status = "disabled";
827	};
828
829	ecap1: pwm@23110000 {
830		compatible = "ti,am3352-ecap";
831		#pwm-cells = <3>;
832		reg = <0x00 0x23110000 0x00 0x100>;
833		power-domains = <&k3_pds 52 TI_SCI_PD_EXCLUSIVE>;
834		clocks = <&k3_clks 52 0>;
835		clock-names = "fck";
836		status = "disabled";
837	};
838
839	ecap2: pwm@23120000 {
840		compatible = "ti,am3352-ecap";
841		#pwm-cells = <3>;
842		reg = <0x00 0x23120000 0x00 0x100>;
843		power-domains = <&k3_pds 53 TI_SCI_PD_EXCLUSIVE>;
844		clocks = <&k3_clks 53 0>;
845		clock-names = "fck";
846		status = "disabled";
847	};
848
849	main_mcan0: can@20701000 {
850		compatible = "bosch,m_can";
851		reg = <0x00 0x20701000 0x00 0x200>,
852		      <0x00 0x20708000 0x00 0x8000>;
853		reg-names = "m_can", "message_ram";
854		power-domains = <&k3_pds 98 TI_SCI_PD_EXCLUSIVE>;
855		clocks = <&k3_clks 98 6>, <&k3_clks 98 1>;
856		clock-names = "hclk", "cclk";
857		interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
858			     <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
859		interrupt-names = "int0", "int1";
860		bosch,mram-cfg = <0x0 128 64 64 64 64 32 32>;
861		status = "disabled";
862	};
863
864	main_rti0: watchdog@e000000 {
865		compatible = "ti,j7-rti-wdt";
866		reg = <0x00 0x0e000000 0x00 0x100>;
867		clocks = <&k3_clks 125 0>;
868		power-domains = <&k3_pds 125 TI_SCI_PD_EXCLUSIVE>;
869		assigned-clocks = <&k3_clks 125 0>;
870		assigned-clock-parents = <&k3_clks 125 2>;
871	};
872
873	main_rti1: watchdog@e010000 {
874		compatible = "ti,j7-rti-wdt";
875		reg = <0x00 0x0e010000 0x00 0x100>;
876		clocks = <&k3_clks 126 0>;
877		power-domains = <&k3_pds 126 TI_SCI_PD_EXCLUSIVE>;
878		assigned-clocks = <&k3_clks 126 0>;
879		assigned-clock-parents = <&k3_clks 126 2>;
880	};
881
882	main_rti2: watchdog@e020000 {
883		compatible = "ti,j7-rti-wdt";
884		reg = <0x00 0x0e020000 0x00 0x100>;
885		clocks = <&k3_clks 127 0>;
886		power-domains = <&k3_pds 127 TI_SCI_PD_EXCLUSIVE>;
887		assigned-clocks = <&k3_clks 127 0>;
888		assigned-clock-parents = <&k3_clks 127 2>;
889	};
890
891	main_rti3: watchdog@e030000 {
892		compatible = "ti,j7-rti-wdt";
893		reg = <0x00 0x0e030000 0x00 0x100>;
894		clocks = <&k3_clks 128 0>;
895		power-domains = <&k3_pds 128 TI_SCI_PD_EXCLUSIVE>;
896		assigned-clocks = <&k3_clks 128 0>;
897		assigned-clock-parents = <&k3_clks 128 2>;
898	};
899
900	main_rti15: watchdog@e0f0000 {
901		compatible = "ti,j7-rti-wdt";
902		reg = <0x00 0x0e0f0000 0x00 0x100>;
903		clocks = <&k3_clks 130 0>;
904		power-domains = <&k3_pds 130 TI_SCI_PD_EXCLUSIVE>;
905		assigned-clocks = <&k3_clks 130 0>;
906		assigned-clock-parents = <&k3_clks 130 2>;
907	};
908
909	epwm0: pwm@23000000 {
910		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
911		#pwm-cells = <3>;
912		reg = <0x00 0x23000000 0x00 0x100>;
913		power-domains = <&k3_pds 86 TI_SCI_PD_EXCLUSIVE>;
914		clocks = <&epwm_tbclk 0>, <&k3_clks 86 0>;
915		clock-names = "tbclk", "fck";
916		status = "disabled";
917	};
918
919	epwm1: pwm@23010000 {
920		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
921		#pwm-cells = <3>;
922		reg = <0x00 0x23010000 0x00 0x100>;
923		power-domains = <&k3_pds 87 TI_SCI_PD_EXCLUSIVE>;
924		clocks = <&epwm_tbclk 1>, <&k3_clks 87 0>;
925		clock-names = "tbclk", "fck";
926		status = "disabled";
927	};
928
929	epwm2: pwm@23020000 {
930		compatible = "ti,am64-epwm", "ti,am3352-ehrpwm";
931		#pwm-cells = <3>;
932		reg = <0x00 0x23020000 0x00 0x100>;
933		power-domains = <&k3_pds 88 TI_SCI_PD_EXCLUSIVE>;
934		clocks = <&epwm_tbclk 2>, <&k3_clks 88 0>;
935		clock-names = "tbclk", "fck";
936		status = "disabled";
937	};
938
939	mcasp0: audio-controller@2b00000 {
940		compatible = "ti,am33xx-mcasp-audio";
941		reg = <0x00 0x02b00000 0x00 0x2000>,
942		      <0x00 0x02b08000 0x00 0x400>;
943		reg-names = "mpu", "dat";
944		interrupts = <GIC_SPI 236 IRQ_TYPE_LEVEL_HIGH>,
945			     <GIC_SPI 235 IRQ_TYPE_LEVEL_HIGH>;
946		interrupt-names = "tx", "rx";
947
948		dmas = <&main_bcdma 0 0xc500 0>, <&main_bcdma 0 0x4500 0>;
949		dma-names = "tx", "rx";
950
951		clocks = <&k3_clks 190 0>;
952		clock-names = "fck";
953		assigned-clocks = <&k3_clks 190 0>;
954		assigned-clock-parents = <&k3_clks 190 2>;
955		power-domains = <&k3_pds 190 TI_SCI_PD_EXCLUSIVE>;
956		status = "disabled";
957	};
958
959	mcasp1: audio-controller@2b10000 {
960		compatible = "ti,am33xx-mcasp-audio";
961		reg = <0x00 0x02b10000 0x00 0x2000>,
962		      <0x00 0x02b18000 0x00 0x400>;
963		reg-names = "mpu", "dat";
964		interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>,
965			     <GIC_SPI 237 IRQ_TYPE_LEVEL_HIGH>;
966		interrupt-names = "tx", "rx";
967
968		dmas = <&main_bcdma 0 0xc501 0>, <&main_bcdma 0 0x4501 0>;
969		dma-names = "tx", "rx";
970
971		clocks = <&k3_clks 191 0>;
972		clock-names = "fck";
973		assigned-clocks = <&k3_clks 191 0>;
974		assigned-clock-parents = <&k3_clks 191 2>;
975		power-domains = <&k3_pds 191 TI_SCI_PD_EXCLUSIVE>;
976		status = "disabled";
977	};
978
979	mcasp2: audio-controller@2b20000 {
980		compatible = "ti,am33xx-mcasp-audio";
981		reg = <0x00 0x02b20000 0x00 0x2000>,
982		      <0x00 0x02b28000 0x00 0x400>;
983		reg-names = "mpu", "dat";
984		interrupts = <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>,
985			     <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
986		interrupt-names = "tx", "rx";
987
988		dmas = <&main_bcdma 0 0xc502 0>, <&main_bcdma 0 0x4502 0>;
989		dma-names = "tx", "rx";
990
991		clocks = <&k3_clks 192 0>;
992		clock-names = "fck";
993		assigned-clocks = <&k3_clks 192 0>;
994		assigned-clock-parents = <&k3_clks 192 2>;
995		power-domains = <&k3_pds 192 TI_SCI_PD_EXCLUSIVE>;
996		status = "disabled";
997	};
998
999	ti_csi2rx0: ticsi2rx@30102000 {
1000		compatible = "ti,j721e-csi2rx-shim";
1001		dmas = <&main_bcdma 0 0x4700 0>;
1002		dma-names = "rx0";
1003		reg = <0x00 0x30102000 0x00 0x1000>;
1004		power-domains = <&k3_pds 182 TI_SCI_PD_EXCLUSIVE>;
1005		#address-cells = <2>;
1006		#size-cells = <2>;
1007		ranges;
1008		status = "disabled";
1009
1010		cdns_csi2rx0: csi-bridge@30101000 {
1011			compatible = "ti,j721e-csi2rx", "cdns,csi2rx";
1012			reg = <0x00 0x30101000 0x00 0x1000>;
1013			clocks = <&k3_clks 182 0>, <&k3_clks 182 3>, <&k3_clks 182 0>,
1014				<&k3_clks 182 0>, <&k3_clks 182 4>, <&k3_clks 182 4>;
1015			clock-names = "sys_clk", "p_clk", "pixel_if0_clk",
1016				"pixel_if1_clk", "pixel_if2_clk", "pixel_if3_clk";
1017			phys = <&dphy0>;
1018			phy-names = "dphy";
1019
1020			ports {
1021				#address-cells = <1>;
1022				#size-cells = <0>;
1023
1024				csi0_port0: port@0 {
1025					reg = <0>;
1026					status = "disabled";
1027				};
1028
1029				csi0_port1: port@1 {
1030					reg = <1>;
1031					status = "disabled";
1032				};
1033
1034				csi0_port2: port@2 {
1035					reg = <2>;
1036					status = "disabled";
1037				};
1038
1039				csi0_port3: port@3 {
1040					reg = <3>;
1041					status = "disabled";
1042				};
1043
1044				csi0_port4: port@4 {
1045					reg = <4>;
1046					status = "disabled";
1047				};
1048			};
1049		};
1050	};
1051
1052	dphy0: phy@30110000 {
1053		compatible = "cdns,dphy-rx";
1054		reg = <0x00 0x30110000 0x00 0x1100>;
1055		#phy-cells = <0>;
1056		power-domains = <&k3_pds 185 TI_SCI_PD_EXCLUSIVE>;
1057		status = "disabled";
1058	};
1059
1060};
1061