| /* | |
| * Copyright 2020, Data61, CSIRO (ABN 41 687 119 230) | |
| * | |
| * SPDX-License-Identifier: BSD-2-Clause | |
| */ | |
| arch arm11 | |
| objects { | |
| rm_ut = ut { | |
| rm_tcb = tcb (init: [10], dom: 5, fault_ep: 0xF) | |
| something = ut (8 bits) { | |
| rm_cn = cnode (10 bits) | |
| } | |
| rm_pd = pd | |
| rm_ap = asid_pool (asid_high: 0x1) | |
| linux_pd = pd | |
| rm_ut_small[50] = ut (12 bits) | |
| rm_ut_big[100] = ut (20 bits) | |
| frame_nic1[64] = frame (4k) | |
| -- io space?? | |
| frame_nic2[64] = frame (4k) | |
| -- io space?? | |
| frame_nic3[4] = frame (4k) | |
| -- io space?? | |
| timer = notification | |
| control = ep | |
| test[5] = cnode (8 bits) | |
| } | |
| rm_ut_small[0] = ut { | |
| name_b | |
| } | |
| rm_ut_small[0]/g = tcb | |
| irq_handler[3] = irq | |
| nic1_notification = notification | |
| cnode_booter = cnode (8 bits) | |
| name_b/name = ut (8 bits) { y[..2], z, a, b } | |
| name_b = ut (10 bits) | |
| name/name2/name3/x = tcb | |
| name/a = tcb | |
| name/b = tcb | |
| y[5] = ep | |
| z = ep | |
| } caps { | |
| rm_cn { | |
| 001: rm_tcb | |
| 002: rm_cn (guard: 0, guard_size: 0) | |
| 003: rm_pd (asid: (0x1, 0x1)) | |
| 006: rm_ap | |
| 0x00b: linux_pd; | |
| 0x00c: rm_ut_small[3..5]; | |
| 0x00f: rm_ut_small[7..20, 23, 27..]; | |
| 0x03e: rm_ut_big[]; | |
| 0x0a3: irq_handler[0]; | |
| 0x0a4: name[] = frame_nic1[]; | |
| 0x0e5: irq_handler[1]; | |
| 0x0e6: frame_nic2[] (RW, asid: (0x1, 0x1)); | |
| -- 126: iospace | |
| 0x127: irq_handler[2]; | |
| 0x128: frame_nic3[]; | |
| -- 12c: iospace | |
| 0x12d: timer (G) | |
| 0x12e: control (badge: 10) | |
| 0x12f: name2 = <cap_name> (masked: R); | |
| 304: test[0] | |
| 305: test[1] | |
| 306: test[1,2] | |
| 308: <name3> | |
| 0x200: <name2> - child_of name2 | |
| 0x201: <name2> - child_of (rm_cn, 0x12f) | |
| 0x202: <name[]> | |
| } | |
| rm_tcb { | |
| vspace: rm_pd | |
| cspace: rm_cn | |
| } | |
| cap_name = (rm_tcb, cspace) | |
| cap_name2 = (irq_table, 0) | |
| cnode_booter { | |
| 001: rm_ut | |
| sched_control (core: 0) | |
| } | |
| test[2..] { | |
| 001: name3 = name_b | |
| 0x200: rm_cn | |
| } | |
| test[1] { | |
| 001: name_b | |
| 2: g (reply) | |
| 0x200: rm_cn | |
| } | |
| cap_test = (test[1],0x200) | |
| test[0] { | |
| 1: <cap_test> | |
| } | |
| rm_ap { | |
| 1: rm_pd | |
| } | |
| } irq maps { | |
| irq_handler[] | |
| } cdt { | |
| (cnode_booter, 1) { | |
| (rm_cn, 0x12d) | |
| } | |
| cap_test { | |
| (rm_cn, 0x12e) | |
| } | |
| } |