Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Stores function pointers to callback functions implemented by the physical function (PF) driver in the device stack for the of the SR-IOV device. This is an extended version of SRIOV_DEVICE_INTERFACE_STANDARD.
Syntax
typedef struct _SRIOV_DEVICE_INTERFACE_STANDARD_2 {
USHORT Size;
USHORT Version;
PVOID Context;
PINTERFACE_REFERENCE InterfaceReference;
PINTERFACE_REFERENCE InterfaceDereference;
PSRIOV_READ_CONFIG ReadVfConfig;
PSRIOV_WRITE_CONFIG WriteVfConfig;
PSRIOV_READ_BLOCK ReadVfConfigBlock;
PSRIOV_WRITE_BLOCK WriteVfConfigBlock;
PSRIOV_QUERY_PROBED_BARS QueryProbedBars;
PSRIOV_GET_VENDOR_AND_DEVICE_IDS GetVendorAndDevice;
PSRIOV_GET_DEVICE_LOCATION GetDeviceLocation;
PSRIOV_RESET_FUNCTION ResetVf;
PSRIOV_SET_POWER_STATE SetVfPowerState;
PSRIOV_GET_RESOURCE_FOR_BAR GetResourceForBar;
PSRIOV_QUERY_LUID QueryLuid;
PSRIOV_QUERY_PROBED_BARS_2 QueryProbedBars_2;
PSRIOV_QUERY_VF_LUID QueryVfLuid;
PSRIOV_QUERY_LUID_VF QueryLuidVf;
} SRIOV_DEVICE_INTERFACE_STANDARD_2, SRIOV_DEVICE_INTERFACE_STANDARD_2;
Members
Size
Size of this structure.
Version
Version of this structure
Context
Driver-defined context passed by the driver.
InterfaceReference
Pointer to a routine that increments the number of references to this interface. For more information about this routine, see InterfaceReference.
InterfaceDereference
Pointer to a routine that decrements the number of references to this interface. For more information about this routine, see InterfaceDereference.
ReadVfConfig
Pointer to the driver's implementation of the SRIOV_READ_CONFIG callback function that serves as a handler for reading the VF’s configurations space from the non-privileged VM.
WriteVfConfig
Pointer to the driver's implementation of the SRIOV_WRITE_CONFIG callback function that serves as a handler for writing the VF’s configuration space from the non-privileged VM.
ReadVfConfigBlock
Pointer to the driver's implementation of the SRIOV_READ_BLOCK callback function that serves as a handler for reading blocks of configuration data from the non-privileged VM.
WriteVfConfigBlock
Pointer to the driver's implementation of the SRIOV_WRITE_BLOCK callback function that serves as a handler for writing blocks of configuration data from the non-privileged VM..
QueryProbedBars
Pointer to the driver's implementation of the SRIOV_QUERY_PROBED_BARS callback function that allows a non-privileged VM to determine the value of the VF’s Base Address Registers if the value of -1 previously is written.
GetVendorAndDevice
Pointer to the driver's implementation of the SRIOV_GET_VENDOR_AND_DEVICE_IDS callback function that supplies the values from which the Plug and Play IDs for device is derived.
GetDeviceLocation
Pointer to the driver's implementation of the SRIOV_GET_DEVICE_LOCATION callback function that allows a non-privileged VM to determine the bus to which the device is attached.
ResetVf
Pointer to the driver's implementation of the SRIOV_RESET_FUNCTION callback function that causes the VF to be reset.
SetVfPowerState
Pointer to the driver's implementation of the SRIOV_SET_POWER_STATE callback function that serves as a handle for changing the device’s power state from the non-privileged VM.
GetResourceForBar
Pointer to the driver's implementation of the SRIOV_GET_RESOURCE_FOR_BAR callback function that gets the translated resource for a specific BAR.
QueryLuid
Pointer to the driver's implementation of the SRIOV_QUERY_LUID callback function that gets the unique identifier of the VF.
QueryProbedBars_2
Pointer to the driver's implementation of the SRIOV_QUERY_PROBED_BARS_2 callback function.
QueryVfLuid
Pointer to the driver's implementation of the SRIOV_QUERY_VF_LUID callback function that gets the unique identifier of the VF.
QueryLuidVf
Pointer to the driver's implementation of the SRIOV_QUERY_LUID_VF callback function that gets VF index for the specified unique identifier.
Requirements
Requirement | Value |
---|---|
Header | pcivirt.h |