VPCI_INTERFACE_STANDARD structure (vpci.h)
The VPCI_INTERFACE_STANDARD interface structure enables device drivers to access blocks of configuration data that is specific to a PCI Express (PCIe) virtual function (VF) of devices that support the single root I/O virtualization (SR-IOV) interface.
This structure describes the GUID_VPCI_INTERFACE_STANDARD interface.
Note
The location of the VF configuration block and the format of the configuration data are defined by the independent hardware vendor (IHV) of the device. They are used only by the drivers of the PCIe physical function (PF) and the VF.
Syntax
typedef struct _VPCI_INTERFACE_STANDARD {
USHORT Size;
USHORT Version;
PVOID Context;
PINTERFACE_REFERENCE InterfaceReference;
PINTERFACE_DEREFERENCE InterfaceDereference;
PVPCI_WRITE_BLOCK WriteVfConfigBlock;
PVPCI_READ_BLOCK ReadVfConfigBlock;
UINT32 SerialNumber;
} VPCI_INTERFACE_STANDARD, *PVPCI_INTERFACE_STANDARD;
Members
Size
The size, in bytes, of this structure.
Version
The driver-defined interface version.
Context
A pointer to interface-specific context information.
InterfaceReference
A pointer to an InterfaceReference routine that increments the interface's reference count.
InterfaceDereference
A pointer to an InterfaceDereference routine that decrements the interface's reference count.
WriteVfConfigBlock
A pointer to a WriteVfConfigBlock routine that writes a block of configuration data for a PCIe VF.
ReadVfConfigBlock
A pointer to a ReadVfConfigBlock routine that reads a block of configuration data for a PCIe VF.
SerialNumber
A UINT32 value that contains the serial number for the PCIe VF on the device. The virtualization stack generates a unique serial number for each VF that is exposed on the device.
Remarks
The GUID_VPCI_INTERFACE_STANDARD interface is provided by the virtual PCI (VPCI) bus driver that creates the physical device objects (PDOs) that are layered below the loaded drivers for the VFs. These drivers are loaded in the guest operating system that runs in a Hyper-V child partition.
A driver obtains a pointer to the VPCI_INTERFACE_STANDARD structure by sending an IRP_MN_QUERY_INTERFACE IRP to its bus driver with InterfaceType set to GUID_VPCI_INTERFACE_STANDARD.
Requirements
Requirement | Value |
---|---|
Minimum supported server | Windows Server 2012 |
Header | vpci.h |