DXGKDDI_SRIOV_INTERFACE structure (dispmprt.h)

The SRIOV device interface exposes the PCIe virtual devices.

Functions to interact with the virtual device’s (GPU partitions) configuration space are exposed along with how the device will appear in the guest (BARs, vendor ID etc.). Finally, power state control functions are exposed to enable/disable/reset VFs. This interface is exposed even for devices that do not directly support SR-IOV in hardware. In the case of no hardware SR-IOV support, the virtual functions are managed by the kernel mode driver itself and are in effect virtualized themselves.

A miniport driver must support all functions in this group.

Syntax

typedef struct _DXGKDDI_SRIOV_INTERFACE {
  IN USHORT                                    Size;
  IN USHORT                                    Version;
  OUT PVOID                                    Context;
  OUT PINTERFACE_REFERENCE                     InterfaceReference;
  OUT PINTERFACE_DEREFERENCE                   InterfaceDereference;
  OUT PDXGKDDI_READVIRTUALFUNCTIONCONFIG       DxgkDdiReadVirtualFunctionConfig;
  OUT PDXGKDDI_WRITEVIRTUALFUNCTIONCONFIG      DxgkDdiWriteVirtualFunctionConfig;
  OUT PDXGKDDI_READVIRTUALFUNCTIONCONFIGBLOCK  DxgkDdiReadVirtualFunctionConfigBlock;
  OUT PDXGKDDI_WRITEVIRTUALFUNCTIONCONFIGBLOCK DxgkDdiWriteVirtualFunctionConfigBlock;
  OUT PDXGKDDI_QUERYPROBEDBARS                 DxgkDdiQueryProbedBars;
  OUT PDXGKDDI_GETVENDORANDDEVICE              DxgkDdiGetVendorAndDevice;
  OUT PDXGKDDI_GETDEVICELOCATION               DxgkDdiGetDeviceLocation;
  OUT PDXGKDDI_RESETVIRTUALFUNCTION            DxgkDdiResetVirtualFunction;
  OUT PDXGKDDI_SETVIRTUALFUNCTIONPOWERSTATE    DxgkDdiSetVirtualFunctionPowerState;
  OUT PDXGKDDI_GETRESOURCEFORBAR               DxgkDdiGetResourceForBar;
  OUT PDXGKDDI_QUERYVIRTUALFUNCTIONLUID        DxgkDdiQueryVirtualFunctionLuid;
} DXGKDDI_SRIOV_INTERFACE, *PDXGKDDI_SRIOV_INTERFACE;

Members

Size

Size.

Version

Version.

Context

The context.

InterfaceReference

Reference.

InterfaceDereference

Deference.

DxgkDdiReadVirtualFunctionConfig

DxgkDdiReadVirtualFunctionConfig

DxgkDdiWriteVirtualFunctionConfig

DxgkDdiWriteVirtualFunctionConfig

DxgkDdiReadVirtualFunctionConfigBlock

DxgkDdiReadVirtualFunctionConfigBlock

DxgkDdiWriteVirtualFunctionConfigBlock

DxgkDdiWriteVirtualFunctionConfigBlock

DxgkDdiQueryProbedBars

DxgkDdiQueryProbedBars

DxgkDdiGetVendorAndDevice

DxgkDdiGetVendorAndDevice

DxgkDdiGetDeviceLocation

DxgkDdiGetDeviceLocation

DxgkDdiResetVirtualFunction

DxgkDdiResetVirtualFunction

DxgkDdiSetVirtualFunctionPowerState

DxgkDdiSetVirtualFunctionPowerState

DxgkDdiGetResourceForBar

DxgkDdiGetResourceForBar

DxgkDdiQueryVirtualFunctionLuid

DxgkDdiQueryVirtualFunctionLuid

Requirements

Requirement Value
Header dispmprt.h