[zion] Add a method for duplicating and scoping down VMMOs.
Use the AHCI section of the PCI config as an example POC of this. We can now pass a memory capability instead of just the physical address.
This commit is contained in:
parent
8f84f8c3ca
commit
48c6e5b3a4
12 changed files with 62 additions and 18 deletions
|
|
@ -107,6 +107,9 @@ SYS3(MemoryObjectCreatePhysical, uint64_t, paddr, uint64_t, size, z_cap_t*,
|
|||
SYS3(MemoryObjectCreateContiguous, uint64_t, size, z_cap_t*, vmmo_cap,
|
||||
uint64_t*, paddr);
|
||||
|
||||
SYS4(MemoryObjectDuplicate, z_cap_t, vmmo_cap, uint64_t, base_offset, uint64_t,
|
||||
length, z_cap_t*, new_vmmo_cap);
|
||||
|
||||
SYS2(ChannelCreate, z_cap_t*, channel1, z_cap_t*, channel2);
|
||||
SYS5(ChannelSend, z_cap_t, chan_cap, uint64_t, num_bytes, const void*, data,
|
||||
uint64_t, num_caps, z_cap_t*, caps);
|
||||
|
|
|
|||
|
|
@ -27,6 +27,8 @@ const uint64_t kZionMemoryObjectCreate = 0x30;
|
|||
const uint64_t kZionMemoryObjectCreatePhysical = 0x31;
|
||||
const uint64_t kZionMemoryObjectCreateContiguous = 0x32;
|
||||
|
||||
const uint64_t kZionMemoryObjectDuplicate = 0x38;
|
||||
|
||||
// IPC Calls
|
||||
const uint64_t kZionChannelCreate = 0x40;
|
||||
const uint64_t kZionChannelSend = 0x41;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue