vdev_pic_functions
Extra information for PIC vdevs
Synopsis:
#include <qvm/vdev-core.h>
struct vdev_pic_functions {
unsigned flags;
unsigned pnum_mask;
int (*signal)(const guest_intr_t *gip, guest_intr_state_t gis);
void (*notify)(const guest_intr_t *gip, guest_intr_notifications_t gin);
const char* (*parse)(guest_intr_t *gip, const char *name);
size_t (*string)(const guest_intr_t *gip, char *buf, size_t buf_len);
ssize_t (*table_spec)(const guest_intr_t *gip,
fw_table_payload_fmt_t payload_fmt, void *buf, size_t buf_len);
ssize_t (*table_decode)(const void* buf,
size_t buf_len, fw_table_payload_fmt_t payload_fmt, guest_intr_t *gip);
};Data:
- unsigned flags
- PIC-specific flags.
- unsigned pnum_mask
- The param mask that isolates the pin index number.
- int (*signal)(const guest_intr_t *gip, guest_intr_state_t gis)
- Assert or de-assert an interrupt pin.
- void (*notify)(const guest_intr_t *gip, guest_intr_notifications_t gin)
- Indicate which operations should call guest_pic_intr_notify().
- const char* (*parse)(guest_intr_t *gip, const char *name)
- Parse a string into a gip->param value (see guest_intr_t).
- size_t (*string)(const guest_intr_t *gip, char *buf, size_t buf_len)
- Convert a gip->param value back into a string (see guest_intr_t).
- ssize_t (*table_spec)(const guest_intr_t *gip, fw_table_payload_fmt_t payload_fmt, void *buf, size_t buf_len)
- Convert *gip into the format required by a firmware table.
- ssize_t (*table_decode)(const void* buf, size_t buf_len, fw_table_payload_fmt_t payload_fmt, guest_intr_t *gip)
- Convert firmware table data into a guest_intr_t.
Page updated:
