90cb017abf04949dd6a5532ddf248799549ad9a3
1 /*
2 * K3 System Firmware Resource Management Configuration Data
3 *
4 * Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/
5 * Andreas Dannenberg <dannenberg@ti.com>
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 *
11 * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 *
14 * Redistributions in binary form must reproduce the above copyright
15 * notice, this list of conditions and the following disclaimer in the
16 * documentation and/or other materials provided with the
17 * distribution.
18 *
19 * Neither the name of Texas Instruments Incorporated nor the names of
20 * its contributors may be used to endorse or promote products derived
21 * from this software without specific prior written permission.
22 *
23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34 */
36 #include "common.h"
38 const struct am65_boardcfg_rm_local am65_boardcfg_rm_data = {
39 .rm_boardcfg = {
40 /* boardcfg_abi_rev */
41 .rev = {
42 .boardcfg_abi_maj = 0x0,
43 .boardcfg_abi_min = 0x1,
44 },
46 /* boardcfg_rm_host_cfg */
47 .host_cfg = {
48 .subhdr = {
49 .magic = BOARDCFG_RM_HOST_CFG_MAGIC_NUM,
50 .size = sizeof(struct boardcfg_rm_host_cfg),
51 },
52 .host_cfg_entries = {{ 0 } },
53 },
55 /* boardcfg_rm_resasg */
56 .resasg = {
57 .subhdr = {
58 .magic = BOARDCFG_RM_RESASG_MAGIC_NUM,
59 .size = sizeof(struct boardcfg_rm_resasg),
60 },
61 .resasg_entries_size = AM65_BOARDCFG_RM_RESASG_ENTRIES *
62 sizeof(struct boardcfg_rm_resasg_entry),
63 .reserved = 0,
64 /* .resasg_entries is set via k3_boardcfg_rm_local */
65 },
66 },
68 /* This is actually part of .resasg */
69 .resasg_entries = {
70 {
71 .start_resource = 16,
72 .num_resource = 240,
73 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMASS_IA0,
74 RESASG_SUBTYPE_MAIN_NAV_UDMASS_IA0_VINT),
75 .host_id = HOST_ID_A53_2,
76 },
77 {
78 .start_resource = 16,
79 .num_resource = 4592,
80 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMASS_IA0,
81 RESASG_SUBTYPE_MAIN_NAV_UDMASS_IA0_SEVI),
82 .host_id = HOST_ID_A53_2,
83 },
84 {
85 .start_resource = 32768,
86 .num_resource = 512,
87 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMASS_IA0,
88 RESASG_SUBTYPE_MAIN_NAV_UDMASS_IA0_MEVI),
89 .host_id = HOST_ID_A53_2,
90 },
91 {
92 .start_resource = 36864,
93 .num_resource = 512,
94 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMASS_IA0,
95 RESASG_SUBTYPE_MAIN_NAV_UDMASS_IA0_GEVI),
96 .host_id = HOST_ID_A53_2,
97 },
98 {
99 .start_resource = 0,
100 .num_resource = 64,
101 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_MODSS_IA0,
102 RESASG_SUBTYPE_MAIN_NAV_MODSS_IA0_VINT),
103 .host_id = HOST_ID_A53_2,
104 },
105 {
106 .start_resource = 20480,
107 .num_resource = 1024,
108 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_MODSS_IA0,
109 RESASG_SUBTYPE_MAIN_NAV_MODSS_IA0_SEVI),
110 .host_id = HOST_ID_A53_2,
111 },
112 {
113 .start_resource = 0,
114 .num_resource = 64,
115 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_MODSS_IA1,
116 RESASG_SUBTYPE_MAIN_NAV_MODSS_IA1_VINT),
117 .host_id = HOST_ID_A53_2,
118 },
119 {
120 .start_resource = 22528,
121 .num_resource = 1024,
122 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_MODSS_IA1,
123 RESASG_SUBTYPE_MAIN_NAV_MODSS_IA1_SEVI),
124 .host_id = HOST_ID_A53_2,
125 },
126 {
127 .start_resource = 8,
128 .num_resource = 248,
129 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMASS_IA0,
130 RESASG_SUBTYPE_MCU_NAV_UDMASS_IA0_VINT),
131 .host_id = HOST_ID_R5_0,
132 },
133 {
134 .start_resource = 16392,
135 .num_resource = 992,
136 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMASS_IA0,
137 RESASG_SUBTYPE_MCU_NAV_UDMASS_IA0_SEVI),
138 .host_id = HOST_ID_R5_0,
139 },
140 {
141 .start_resource = 17384,
142 .num_resource = 536,
143 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMASS_IA0,
144 RESASG_SUBTYPE_MCU_NAV_UDMASS_IA0_SEVI),
145 .host_id = HOST_ID_R5_0,
146 },
147 {
148 .start_resource = 34816,
149 .num_resource = 128,
150 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMASS_IA0,
151 RESASG_SUBTYPE_MCU_NAV_UDMASS_IA0_MEVI),
152 .host_id = HOST_ID_R5_0,
153 },
154 {
155 .start_resource = 39936,
156 .num_resource = 256,
157 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMASS_IA0,
158 RESASG_SUBTYPE_MCU_NAV_UDMASS_IA0_GEVI),
159 .host_id = HOST_ID_R5_0,
160 },
161 {
162 .start_resource = 43008,
163 .num_resource = 4,
164 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_MCRC,
165 RESASG_SUBTYPE_MAIN_NAV_MCRC_LEVI),
166 .host_id = HOST_ID_R5_0,
167 },
168 {
169 .start_resource = 43136,
170 .num_resource = 4,
171 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_MCRC,
172 RESASG_SUBTYPE_MCU_NAV_MCRC_LEVI),
173 .host_id = HOST_ID_R5_0,
174 },
175 {
176 .start_resource = 49152,
177 .num_resource = 1024,
178 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
179 RESASG_SUBTYPE_MAIN_NAV_UDMAP_TRIGGER),
180 .host_id = HOST_ID_A53_2,
181 },
182 {
183 .start_resource = 1,
184 .num_resource = 7,
185 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
186 RESASG_SUBTYPE_MAIN_NAV_UDMAP_TX_HCHAN),
187 .host_id = HOST_ID_A53_2,
188 },
189 {
190 .start_resource = 8,
191 .num_resource = 112,
192 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
193 RESASG_SUBTYPE_MAIN_NAV_UDMAP_TX_CHAN),
194 .host_id = HOST_ID_A53_2,
195 },
196 {
197 .start_resource = 120,
198 .num_resource = 32,
199 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
200 RESASG_SUBTYPE_MAIN_NAV_UDMAP_TX_ECHAN),
201 .host_id = HOST_ID_A53_2,
202 },
203 {
204 .start_resource = 2,
205 .num_resource = 6,
206 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
207 RESASG_SUBTYPE_MAIN_NAV_UDMAP_RX_HCHAN),
208 .host_id = HOST_ID_A53_2,
209 },
210 {
211 .start_resource = 8,
212 .num_resource = 142,
213 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
214 RESASG_SUBTYPE_MAIN_NAV_UDMAP_RX_CHAN),
215 .host_id = HOST_ID_A53_2,
216 },
217 {
218 .start_resource = 150,
219 .num_resource = 150,
220 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
221 RESASG_SUBTYPE_MAIN_NAV_UDMAP_RX_FLOW_COMMON),
222 .host_id = HOST_ID_A53_2,
223 },
224 {
225 .start_resource = 0,
226 .num_resource = 1,
227 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_UDMAP,
228 RESASG_SUBTYPE_MAIN_NAV_UDMAP_INVALID_FLOW_OES),
229 .host_id = HOST_ID_A53_2,
230 },
231 {
232 .start_resource = 56320,
233 .num_resource = 256,
234 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
235 RESASG_SUBTYPE_MCU_NAV_UDMAP_TRIGGER),
236 .host_id = HOST_ID_A53_2,
237 },
238 {
239 .start_resource = 0,
240 .num_resource = 2,
241 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
242 RESASG_SUBTYPE_MCU_NAV_UDMAP_TX_HCHAN),
243 .host_id = HOST_ID_A53_2,
244 },
245 {
246 .start_resource = 2,
247 .num_resource = 46,
248 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
249 RESASG_SUBTYPE_MCU_NAV_UDMAP_TX_CHAN),
250 .host_id = HOST_ID_A53_2,
251 },
252 {
253 .start_resource = 0,
254 .num_resource = 2,
255 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
256 RESASG_SUBTYPE_MCU_NAV_UDMAP_RX_HCHAN),
257 .host_id = HOST_ID_A53_2,
258 },
259 {
260 .start_resource = 2,
261 .num_resource = 46,
262 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
263 RESASG_SUBTYPE_MCU_NAV_UDMAP_RX_CHAN),
264 .host_id = HOST_ID_A53_2,
265 },
266 {
267 .start_resource = 48,
268 .num_resource = 48,
269 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
270 RESASG_SUBTYPE_MCU_NAV_UDMAP_RX_FLOW_COMMON),
271 .host_id = HOST_ID_A53_2,
272 },
273 {
274 .start_resource = 0,
275 .num_resource = 1,
276 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_UDMAP,
277 RESASG_SUBTYPE_MCU_NAV_UDMAP_INVALID_FLOW_OES),
278 .host_id = HOST_ID_A53_2,
279 },
280 {
281 .start_resource = 61440,
282 .num_resource = 64,
283 .type = RESASG_UTYPE(RESASG_TYPE_MSMC,
284 RESASG_SUBTYPE_MSMC_DRU),
285 .host_id = HOST_ID_A53_2,
286 },
287 {
288 .start_resource = 1,
289 .num_resource = 151,
290 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_RA,
291 RESASG_SUBTYPE_MAIN_NAV_RA_RING_UDMAP_TX),
292 .host_id = HOST_ID_A53_2,
293 },
294 {
295 .start_resource = 153,
296 .num_resource = 149,
297 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_RA,
298 RESASG_SUBTYPE_MAIN_NAV_RA_RING_UDMAP_RX),
299 .host_id = HOST_ID_A53_2,
300 },
301 {
302 .start_resource = 304,
303 .num_resource = 464,
304 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_RA,
305 RESASG_SUBTYPE_MAIN_NAV_RA_RING_GP),
306 .host_id = HOST_ID_A53_2,
307 },
308 {
309 .start_resource = 0,
310 .num_resource = 1,
311 .type = RESASG_UTYPE(RESASG_TYPE_MAIN_NAV_RA,
312 RESASG_SUBTYPE_MAIN_NAV_RA_ERROR_OES),
313 .host_id = HOST_ID_A53_2,
314 },
315 {
316 .start_resource = 0,
317 .num_resource = 48,
318 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_RA,
319 RESASG_SUBTYPE_MCU_NAV_RA_RING_UDMAP_TX),
320 .host_id = HOST_ID_A53_2,
321 },
322 {
323 .start_resource = 48,
324 .num_resource = 48,
325 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_RA,
326 RESASG_SUBTYPE_MCU_NAV_RA_RING_UDMAP_RX),
327 .host_id = HOST_ID_A53_2,
328 },
329 {
330 .start_resource = 96,
331 .num_resource = 160,
332 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_RA,
333 RESASG_SUBTYPE_MCU_NAV_RA_RING_GP),
334 .host_id = HOST_ID_A53_2,
335 },
336 {
337 .start_resource = 0,
338 .num_resource = 1,
339 .type = RESASG_UTYPE(RESASG_TYPE_MCU_NAV_RA,
340 RESASG_SUBTYPE_MCU_NAV_RA_ERROR_OES),
341 .host_id = HOST_ID_A53_2,
342 },
343 {
344 .start_resource = 80,
345 .num_resource = 48,
346 .type = RESASG_UTYPE(RESASG_TYPE_GIC_IRQ,
347 RESASG_SUBTYPE_GIC_IRQ_MAIN_NAV_SET0),
348 .host_id = HOST_ID_A53_2,
349 },
350 {
351 .start_resource = 392,
352 .num_resource = 32,
353 .type = RESASG_UTYPE(RESASG_TYPE_GIC_IRQ,
354 RESASG_SUBTYPE_GIC_IRQ_MAIN_GPIO),
355 .host_id = HOST_ID_A53_2,
356 },
357 {
358 .start_resource = 448,
359 .num_resource = 50,
360 .type = RESASG_UTYPE(RESASG_TYPE_GIC_IRQ,
361 RESASG_SUBTYPE_GIC_IRQ_MAIN_NAV_SET1),
362 .host_id = HOST_ID_A53_2,
363 },
364 {
365 .start_resource = 498,
366 .num_resource = 6,
367 .type = RESASG_UTYPE(RESASG_TYPE_GIC_IRQ,
368 RESASG_SUBTYPE_GIC_IRQ_MAIN_NAV_SET1),
369 .host_id = HOST_ID_A53_2,
370 },
371 {
372 .start_resource = 544,
373 .num_resource = 16,
374 .type = RESASG_UTYPE(RESASG_TYPE_GIC_IRQ,
375 RESASG_SUBTYPE_GIC_IRQ_COMP_EVT),
376 .host_id = HOST_ID_A53_2,
377 },
378 {
379 .start_resource = 712,
380 .num_resource = 16,
381 .type = RESASG_UTYPE(RESASG_TYPE_GIC_IRQ,
382 RESASG_SUBTYPE_GIC_IRQ_WKUP_GPIO),
383 .host_id = HOST_ID_A53_2,
384 },
385 {
386 .start_resource = 68,
387 .num_resource = 28,
388 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C0_IRQ,
389 RESASG_SUBTYPE_PULSAR_C0_IRQ_MCU_NAV),
390 .host_id = HOST_ID_R5_0,
391 },
392 {
393 .start_resource = 124,
394 .num_resource = 16,
395 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C0_IRQ,
396 RESASG_SUBTYPE_PULSAR_C0_IRQ_WKUP_GPIO),
397 .host_id = HOST_ID_R5_0,
398 },
399 {
400 .start_resource = 160,
401 .num_resource = 64,
402 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C0_IRQ,
403 RESASG_SUBTYPE_PULSAR_C0_IRQ_MAIN2MCU_LVL),
404 .host_id = HOST_ID_R5_0,
405 },
406 {
407 .start_resource = 224,
408 .num_resource = 48,
409 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C0_IRQ,
410 RESASG_SUBTYPE_PULSAR_C0_IRQ_MAIN2MCU_PLS),
411 .host_id = HOST_ID_R5_0,
412 },
413 {
414 .start_resource = 68,
415 .num_resource = 28,
416 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C1_IRQ,
417 RESASG_SUBTYPE_PULSAR_C1_IRQ_MCU_NAV),
418 .host_id = HOST_ID_R5_0,
419 },
420 {
421 .start_resource = 124,
422 .num_resource = 16,
423 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C1_IRQ,
424 RESASG_SUBTYPE_PULSAR_C1_IRQ_WKUP_GPIO),
425 .host_id = HOST_ID_R5_0,
426 },
427 {
428 .start_resource = 160,
429 .num_resource = 64,
430 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C1_IRQ,
431 RESASG_SUBTYPE_PULSAR_C1_IRQ_MAIN2MCU_LVL),
432 .host_id = HOST_ID_R5_0,
433 },
434 {
435 .start_resource = 224,
436 .num_resource = 48,
437 .type = RESASG_UTYPE(RESASG_TYPE_PULSAR_C1_IRQ,
438 RESASG_SUBTYPE_PULSAR_C1_IRQ_MAIN2MCU_PLS),
439 .host_id = HOST_ID_R5_0,
440 },
441 {
442 .start_resource = 46,
443 .num_resource = 8,
444 .type = RESASG_UTYPE(RESASG_TYPE_ICSSG0_IRQ,
445 RESASG_SUBTYPE_ICSSG0_IRQ_MAIN_NAV),
446 .host_id = HOST_ID_ICSSG_0,
447 },
448 {
449 .start_resource = 88,
450 .num_resource = 8,
451 .type = RESASG_UTYPE(RESASG_TYPE_ICSSG0_IRQ,
452 RESASG_SUBTYPE_ICSSG0_IRQ_MAIN_GPIO),
453 .host_id = HOST_ID_ICSSG_0,
454 },
455 {
456 .start_resource = 46,
457 .num_resource = 8,
458 .type = RESASG_UTYPE(RESASG_TYPE_ICSSG1_IRQ,
459 RESASG_SUBTYPE_ICSSG1_IRQ_MAIN_NAV),
460 .host_id = HOST_ID_ICSSG_1,
461 },
462 {
463 .start_resource = 88,
464 .num_resource = 8,
465 .type = RESASG_UTYPE(RESASG_TYPE_ICSSG1_IRQ,
466 RESASG_SUBTYPE_ICSSG1_IRQ_MAIN_GPIO),
467 .host_id = HOST_ID_ICSSG_1,
468 },
469 {
470 .start_resource = 46,
471 .num_resource = 8,
472 .type = RESASG_UTYPE(RESASG_TYPE_ICSSG2_IRQ,
473 RESASG_SUBTYPE_ICSSG2_IRQ_MAIN_NAV),
474 .host_id = HOST_ID_ICSSG_2,
475 },
476 {
477 .start_resource = 88,
478 .num_resource = 8,
479 .type = RESASG_UTYPE(RESASG_TYPE_ICSSG2_IRQ,
480 RESASG_SUBTYPE_ICSSG2_IRQ_MAIN_GPIO),
481 .host_id = HOST_ID_ICSSG_2,
482 },
483 },
484 };