libvmm

class sdfgen.Vmm(sdf: SystemDescription, vmm: ProtectionDomain, vm: VirtualMachine, dtb: DeviceTree, *, one_to_one_ram: bool = False)
add_passthrough_device(device: Node, *, regions: List[int] | None = None, irqs: List[int] | None = None)

Add pass-through access to a particular device based on its DTB node. :param regions: list of indices into the ‘reg’ field of the device to be mapped in. If None

then every region passed through.

Parameters:

irqs – list of indices into the ‘interrupts’ field of the device to be created. If None then every IRQ is passed through.

add_passthrough_irq(irq: Irq)
add_virtio_mmio_blk(device: Node, blk: Blk, *, partition: int)
add_virtio_mmio_console(device: Node, serial: Serial)
add_virtio_mmio_net(device: Node, net: Net, copier: ProtectionDomain, *, mac_addr: str | None = None)
connect() bool
serialise_config(output_dir: str) bool