Definitions in vio.h

Preprocessor macro definitions for the vio.h header file

Definitions:

#include <qvm/vio.h>
#define VIO_MAX_FEATURE_WORDS 4U

The maximum number of feature words that the hypervisor supports.

#define VIO_OPTION_VENDOR_FEATURES "vendor-features"

The name of the option that virtio-* vdevs can use to accept vendor-specific features at user-configurable bits.

#define VIO_VENDOR_FEATURES_BOUNDARY (VIO_MAX_FEATURE_WORDS * sizeof(uint32_t) * ((size_t) CHAR_BIT))

The upper limit to the supported vendor-specific feature bits.

#define VVF_NONE ((vio_iov_flags_t)0x00u)

A host-physical address is not required.

#define VVF_PHYSICAL ((vio_iov_flags_t)0x01u)

A host-physical address is required.

#define VVF_PUBLIC_MASK ((vio_iov_flags_t)0xffu)

A mask that indicates which flags are part of the public API and which are internal.

#define VIOREF_CLASS_NOP 0x00000u

A return value from the vio_read() and vio_write() functions that indicates there is nothing to do.

#define VIOREF_CLASS_NOTIFY 0x10000u

The driver has notified the device about a queue update; the index is in the low bits.

#define VIOREF_CLASS_ENABLED 0x20000u

The driver has enabled a queue; the index is in the low bits.

#define VIOREF_CLASS_RESET 0x30000u

The driver has requested a device reset.

#define VIOREF_CLASS_STATUS 0x40000u

The driver has turned on new device status bits; the new flags are in the low bits.

#define VIOREF_CLASS_DEVCFG 0x50000u

The driver has read or written device-specific configuration; the configuration offset is in the low bits.

#define VIOREF_CLASS_BUS_ERROR 0x60000u

An exception needs to be sent to the guest.

#define VIOREF_CLASS_ERRNO 0x70000u

An error occurred; the code is in the low bits.

#define VIOREF_CLASS_MASK 0xf0000u

A mask to isolate the return class type.

Page updated: