xref: /linux/scripts/dtc/include-prefixes/arm64/ti/k3-j721s2-ti-ipc-firmware.dtsi (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
1*e2581d3eSBeleswar Padhi// SPDX-License-Identifier: GPL-2.0-only OR MIT
2*e2581d3eSBeleswar Padhi/**
3*e2581d3eSBeleswar Padhi * Device Tree Source for enabling IPC using TI SDK firmware on J721S2 SoCs
4*e2581d3eSBeleswar Padhi *
5*e2581d3eSBeleswar Padhi * Copyright (C) 2021-2025 Texas Instruments Incorporated - https://www.ti.com/
6*e2581d3eSBeleswar Padhi */
7*e2581d3eSBeleswar Padhi
8*e2581d3eSBeleswar Padhi&reserved_memory {
9*e2581d3eSBeleswar Padhi	mcu_r5fss0_core1_dma_memory_region: memory@a1000000 {
10*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
11*e2581d3eSBeleswar Padhi		reg = <0x00 0xa1000000 0x00 0x100000>;
12*e2581d3eSBeleswar Padhi		no-map;
13*e2581d3eSBeleswar Padhi	};
14*e2581d3eSBeleswar Padhi
15*e2581d3eSBeleswar Padhi	mcu_r5fss0_core1_memory_region: memory@a1100000 {
16*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
17*e2581d3eSBeleswar Padhi		reg = <0x00 0xa1100000 0x00 0xf00000>;
18*e2581d3eSBeleswar Padhi		no-map;
19*e2581d3eSBeleswar Padhi	};
20*e2581d3eSBeleswar Padhi
21*e2581d3eSBeleswar Padhi	main_r5fss0_core0_dma_memory_region: memory@a2000000 {
22*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
23*e2581d3eSBeleswar Padhi		reg = <0x00 0xa2000000 0x00 0x100000>;
24*e2581d3eSBeleswar Padhi		no-map;
25*e2581d3eSBeleswar Padhi	};
26*e2581d3eSBeleswar Padhi
27*e2581d3eSBeleswar Padhi	main_r5fss0_core0_memory_region: memory@a2100000 {
28*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
29*e2581d3eSBeleswar Padhi		reg = <0x00 0xa2100000 0x00 0xf00000>;
30*e2581d3eSBeleswar Padhi		no-map;
31*e2581d3eSBeleswar Padhi	};
32*e2581d3eSBeleswar Padhi
33*e2581d3eSBeleswar Padhi	main_r5fss0_core1_dma_memory_region: memory@a3000000 {
34*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
35*e2581d3eSBeleswar Padhi		reg = <0x00 0xa3000000 0x00 0x100000>;
36*e2581d3eSBeleswar Padhi		no-map;
37*e2581d3eSBeleswar Padhi	};
38*e2581d3eSBeleswar Padhi
39*e2581d3eSBeleswar Padhi	main_r5fss0_core1_memory_region: memory@a3100000 {
40*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
41*e2581d3eSBeleswar Padhi		reg = <0x00 0xa3100000 0x00 0xf00000>;
42*e2581d3eSBeleswar Padhi		no-map;
43*e2581d3eSBeleswar Padhi	};
44*e2581d3eSBeleswar Padhi
45*e2581d3eSBeleswar Padhi	main_r5fss1_core0_dma_memory_region: memory@a4000000 {
46*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
47*e2581d3eSBeleswar Padhi		reg = <0x00 0xa4000000 0x00 0x100000>;
48*e2581d3eSBeleswar Padhi		no-map;
49*e2581d3eSBeleswar Padhi	};
50*e2581d3eSBeleswar Padhi
51*e2581d3eSBeleswar Padhi	main_r5fss1_core0_memory_region: memory@a4100000 {
52*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
53*e2581d3eSBeleswar Padhi		reg = <0x00 0xa4100000 0x00 0xf00000>;
54*e2581d3eSBeleswar Padhi		no-map;
55*e2581d3eSBeleswar Padhi	};
56*e2581d3eSBeleswar Padhi
57*e2581d3eSBeleswar Padhi	main_r5fss1_core1_dma_memory_region: memory@a5000000 {
58*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
59*e2581d3eSBeleswar Padhi		reg = <0x00 0xa5000000 0x00 0x100000>;
60*e2581d3eSBeleswar Padhi		no-map;
61*e2581d3eSBeleswar Padhi	};
62*e2581d3eSBeleswar Padhi
63*e2581d3eSBeleswar Padhi	main_r5fss1_core1_memory_region: memory@a5100000 {
64*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
65*e2581d3eSBeleswar Padhi		reg = <0x00 0xa5100000 0x00 0xf00000>;
66*e2581d3eSBeleswar Padhi		no-map;
67*e2581d3eSBeleswar Padhi	};
68*e2581d3eSBeleswar Padhi
69*e2581d3eSBeleswar Padhi	c71_0_dma_memory_region: memory@a6000000 {
70*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
71*e2581d3eSBeleswar Padhi		reg = <0x00 0xa6000000 0x00 0x100000>;
72*e2581d3eSBeleswar Padhi		no-map;
73*e2581d3eSBeleswar Padhi	};
74*e2581d3eSBeleswar Padhi
75*e2581d3eSBeleswar Padhi	c71_0_memory_region: memory@a6100000 {
76*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
77*e2581d3eSBeleswar Padhi		reg = <0x00 0xa6100000 0x00 0xf00000>;
78*e2581d3eSBeleswar Padhi		no-map;
79*e2581d3eSBeleswar Padhi	};
80*e2581d3eSBeleswar Padhi
81*e2581d3eSBeleswar Padhi	c71_1_dma_memory_region: memory@a7000000 {
82*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
83*e2581d3eSBeleswar Padhi		reg = <0x00 0xa7000000 0x00 0x100000>;
84*e2581d3eSBeleswar Padhi		no-map;
85*e2581d3eSBeleswar Padhi	};
86*e2581d3eSBeleswar Padhi
87*e2581d3eSBeleswar Padhi	c71_1_memory_region: memory@a7100000 {
88*e2581d3eSBeleswar Padhi		compatible = "shared-dma-pool";
89*e2581d3eSBeleswar Padhi		reg = <0x00 0xa7100000 0x00 0xf00000>;
90*e2581d3eSBeleswar Padhi		no-map;
91*e2581d3eSBeleswar Padhi	};
92*e2581d3eSBeleswar Padhi
93*e2581d3eSBeleswar Padhi	rtos_ipc_memory_region: memory@a8000000 {
94*e2581d3eSBeleswar Padhi		reg = <0x00 0xa8000000 0x00 0x01c00000>;
95*e2581d3eSBeleswar Padhi		alignment = <0x1000>;
96*e2581d3eSBeleswar Padhi		no-map;
97*e2581d3eSBeleswar Padhi	};
98*e2581d3eSBeleswar Padhi};
99*e2581d3eSBeleswar Padhi
100*e2581d3eSBeleswar Padhi&mailbox0_cluster0 {
101*e2581d3eSBeleswar Padhi	status = "okay";
102*e2581d3eSBeleswar Padhi	interrupts = <436>;
103*e2581d3eSBeleswar Padhi
104*e2581d3eSBeleswar Padhi	mbox_mcu_r5fss0_core0: mbox-mcu-r5fss0-core0 {
105*e2581d3eSBeleswar Padhi		ti,mbox-rx = <0 0 0>;
106*e2581d3eSBeleswar Padhi		ti,mbox-tx = <1 0 0>;
107*e2581d3eSBeleswar Padhi	};
108*e2581d3eSBeleswar Padhi
109*e2581d3eSBeleswar Padhi	mbox_mcu_r5fss0_core1: mbox-mcu-r5fss0-core1 {
110*e2581d3eSBeleswar Padhi		ti,mbox-rx = <2 0 0>;
111*e2581d3eSBeleswar Padhi		ti,mbox-tx = <3 0 0>;
112*e2581d3eSBeleswar Padhi	};
113*e2581d3eSBeleswar Padhi};
114*e2581d3eSBeleswar Padhi
115*e2581d3eSBeleswar Padhi&mailbox0_cluster1 {
116*e2581d3eSBeleswar Padhi	status = "okay";
117*e2581d3eSBeleswar Padhi	interrupts = <432>;
118*e2581d3eSBeleswar Padhi
119*e2581d3eSBeleswar Padhi	mbox_main_r5fss0_core0: mbox-main-r5fss0-core0 {
120*e2581d3eSBeleswar Padhi		ti,mbox-rx = <0 0 0>;
121*e2581d3eSBeleswar Padhi		ti,mbox-tx = <1 0 0>;
122*e2581d3eSBeleswar Padhi	};
123*e2581d3eSBeleswar Padhi
124*e2581d3eSBeleswar Padhi	mbox_main_r5fss0_core1: mbox-main-r5fss0-core1 {
125*e2581d3eSBeleswar Padhi		ti,mbox-rx = <2 0 0>;
126*e2581d3eSBeleswar Padhi		ti,mbox-tx = <3 0 0>;
127*e2581d3eSBeleswar Padhi	};
128*e2581d3eSBeleswar Padhi};
129*e2581d3eSBeleswar Padhi
130*e2581d3eSBeleswar Padhi&mailbox0_cluster2 {
131*e2581d3eSBeleswar Padhi	status = "okay";
132*e2581d3eSBeleswar Padhi	interrupts = <428>;
133*e2581d3eSBeleswar Padhi
134*e2581d3eSBeleswar Padhi	mbox_main_r5fss1_core0: mbox-main-r5fss1-core0 {
135*e2581d3eSBeleswar Padhi		ti,mbox-rx = <0 0 0>;
136*e2581d3eSBeleswar Padhi		ti,mbox-tx = <1 0 0>;
137*e2581d3eSBeleswar Padhi	};
138*e2581d3eSBeleswar Padhi
139*e2581d3eSBeleswar Padhi	mbox_main_r5fss1_core1: mbox-main-r5fss1-core1 {
140*e2581d3eSBeleswar Padhi		ti,mbox-rx = <2 0 0>;
141*e2581d3eSBeleswar Padhi		ti,mbox-tx = <3 0 0>;
142*e2581d3eSBeleswar Padhi	};
143*e2581d3eSBeleswar Padhi};
144*e2581d3eSBeleswar Padhi
145*e2581d3eSBeleswar Padhi&mailbox0_cluster4 {
146*e2581d3eSBeleswar Padhi	status = "okay";
147*e2581d3eSBeleswar Padhi	interrupts = <420>;
148*e2581d3eSBeleswar Padhi
149*e2581d3eSBeleswar Padhi	mbox_c71_0: mbox-c71-0 {
150*e2581d3eSBeleswar Padhi		ti,mbox-rx = <0 0 0>;
151*e2581d3eSBeleswar Padhi		ti,mbox-tx = <1 0 0>;
152*e2581d3eSBeleswar Padhi	};
153*e2581d3eSBeleswar Padhi
154*e2581d3eSBeleswar Padhi	mbox_c71_1: mbox-c71-1 {
155*e2581d3eSBeleswar Padhi		ti,mbox-rx = <2 0 0>;
156*e2581d3eSBeleswar Padhi		ti,mbox-tx = <3 0 0>;
157*e2581d3eSBeleswar Padhi	};
158*e2581d3eSBeleswar Padhi};
159*e2581d3eSBeleswar Padhi
160*e2581d3eSBeleswar Padhi/* Timers are used by Remoteproc firmware */
161*e2581d3eSBeleswar Padhi&main_timer0 {
162*e2581d3eSBeleswar Padhi	status = "reserved";
163*e2581d3eSBeleswar Padhi};
164*e2581d3eSBeleswar Padhi
165*e2581d3eSBeleswar Padhi&main_timer1 {
166*e2581d3eSBeleswar Padhi	status = "reserved";
167*e2581d3eSBeleswar Padhi};
168*e2581d3eSBeleswar Padhi
169*e2581d3eSBeleswar Padhi&main_timer2 {
170*e2581d3eSBeleswar Padhi	status = "reserved";
171*e2581d3eSBeleswar Padhi};
172*e2581d3eSBeleswar Padhi
173*e2581d3eSBeleswar Padhi&main_timer3 {
174*e2581d3eSBeleswar Padhi	status = "reserved";
175*e2581d3eSBeleswar Padhi};
176*e2581d3eSBeleswar Padhi
177*e2581d3eSBeleswar Padhi&main_timer4 {
178*e2581d3eSBeleswar Padhi	status = "reserved";
179*e2581d3eSBeleswar Padhi};
180*e2581d3eSBeleswar Padhi
181*e2581d3eSBeleswar Padhi&main_timer5 {
182*e2581d3eSBeleswar Padhi	status = "reserved";
183*e2581d3eSBeleswar Padhi};
184*e2581d3eSBeleswar Padhi
185*e2581d3eSBeleswar Padhi&mcu_r5fss0 {
186*e2581d3eSBeleswar Padhi	status = "okay";
187*e2581d3eSBeleswar Padhi};
188*e2581d3eSBeleswar Padhi
189*e2581d3eSBeleswar Padhi&mcu_r5fss0_core0 {
190*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster0 &mbox_mcu_r5fss0_core0>;
191*e2581d3eSBeleswar Padhi	memory-region = <&mcu_r5fss0_core0_dma_memory_region>,
192*e2581d3eSBeleswar Padhi			<&mcu_r5fss0_core0_memory_region>;
193*e2581d3eSBeleswar Padhi	status = "okay";
194*e2581d3eSBeleswar Padhi};
195*e2581d3eSBeleswar Padhi
196*e2581d3eSBeleswar Padhi&mcu_r5fss0_core1 {
197*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster0 &mbox_mcu_r5fss0_core1>;
198*e2581d3eSBeleswar Padhi	memory-region = <&mcu_r5fss0_core1_dma_memory_region>,
199*e2581d3eSBeleswar Padhi			<&mcu_r5fss0_core1_memory_region>;
200*e2581d3eSBeleswar Padhi	status = "okay";
201*e2581d3eSBeleswar Padhi};
202*e2581d3eSBeleswar Padhi
203*e2581d3eSBeleswar Padhi&main_r5fss0 {
204*e2581d3eSBeleswar Padhi	ti,cluster-mode = <0>;
205*e2581d3eSBeleswar Padhi	status = "okay";
206*e2581d3eSBeleswar Padhi};
207*e2581d3eSBeleswar Padhi
208*e2581d3eSBeleswar Padhi&main_r5fss0_core0 {
209*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster1 &mbox_main_r5fss0_core0>;
210*e2581d3eSBeleswar Padhi	memory-region = <&main_r5fss0_core0_dma_memory_region>,
211*e2581d3eSBeleswar Padhi			<&main_r5fss0_core0_memory_region>;
212*e2581d3eSBeleswar Padhi	status = "okay";
213*e2581d3eSBeleswar Padhi};
214*e2581d3eSBeleswar Padhi
215*e2581d3eSBeleswar Padhi&main_r5fss0_core1 {
216*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster1 &mbox_main_r5fss0_core1>;
217*e2581d3eSBeleswar Padhi	memory-region = <&main_r5fss0_core1_dma_memory_region>,
218*e2581d3eSBeleswar Padhi			<&main_r5fss0_core1_memory_region>;
219*e2581d3eSBeleswar Padhi	status = "okay";
220*e2581d3eSBeleswar Padhi};
221*e2581d3eSBeleswar Padhi
222*e2581d3eSBeleswar Padhi&main_r5fss1 {
223*e2581d3eSBeleswar Padhi	ti,cluster-mode = <0>;
224*e2581d3eSBeleswar Padhi	status = "okay";
225*e2581d3eSBeleswar Padhi};
226*e2581d3eSBeleswar Padhi
227*e2581d3eSBeleswar Padhi&main_r5fss1_core0 {
228*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster2 &mbox_main_r5fss1_core0>;
229*e2581d3eSBeleswar Padhi	memory-region = <&main_r5fss1_core0_dma_memory_region>,
230*e2581d3eSBeleswar Padhi			<&main_r5fss1_core0_memory_region>;
231*e2581d3eSBeleswar Padhi	status = "okay";
232*e2581d3eSBeleswar Padhi};
233*e2581d3eSBeleswar Padhi
234*e2581d3eSBeleswar Padhi&main_r5fss1_core1 {
235*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster2 &mbox_main_r5fss1_core1>;
236*e2581d3eSBeleswar Padhi	memory-region = <&main_r5fss1_core1_dma_memory_region>,
237*e2581d3eSBeleswar Padhi			<&main_r5fss1_core1_memory_region>;
238*e2581d3eSBeleswar Padhi	status = "okay";
239*e2581d3eSBeleswar Padhi};
240*e2581d3eSBeleswar Padhi
241*e2581d3eSBeleswar Padhi&c71_0 {
242*e2581d3eSBeleswar Padhi	status = "okay";
243*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster4 &mbox_c71_0>;
244*e2581d3eSBeleswar Padhi	memory-region = <&c71_0_dma_memory_region>,
245*e2581d3eSBeleswar Padhi			<&c71_0_memory_region>;
246*e2581d3eSBeleswar Padhi};
247*e2581d3eSBeleswar Padhi
248*e2581d3eSBeleswar Padhi&c71_1 {
249*e2581d3eSBeleswar Padhi	status = "okay";
250*e2581d3eSBeleswar Padhi	mboxes = <&mailbox0_cluster4 &mbox_c71_1>;
251*e2581d3eSBeleswar Padhi	memory-region = <&c71_1_dma_memory_region>,
252*e2581d3eSBeleswar Padhi			<&c71_1_memory_region>;
253*e2581d3eSBeleswar Padhi};
254