guest_msi_register_range()

Add a memory address range to be decoded by a controller

Synopsis:

#include <qvm/guest.h>
void guest_msi_register_range(const char* name,
                              uint64_t addr,
                              uint64_t mask,
                              uint32_t rangeid)

Arguments:

name
A string containing the name of the controller.
addr
The base address that the controller can decode.
mask
A mask to apply when looking at an address.
rangeid
The caller-provided ID passed to the interrupt delivery (guest_msi_deliver_cb_t) callback.

Description:

After creating an MSI controller with guest_msi_ctlr_create(), call guest_msi_register_range() to define a memory address range that the controller can decode. You can call this function multiple times to define all the address ranges that you need for the controller.

Page updated: