OID_NIC_SWITCH_VF_PARAMETERS
An overlying driver or user-mode application issues an object identifier (OID) method request of OID_NIC_SWITCH_VF_PARAMETERS to obtain the current configuration parameters of a PCI Express (PCIe) Virtual Function (VF) on a network adapter. Only VFs that have resources allocated through an OID method request of OID_NIC_SWITCH_ALLOCATE_VF can be queried through an OID method request of OID_NIC_SWITCH_VF_PARAMETERS.
NDIS handles the OID method request of OID_NIC_SWITCH_VF_PARAMETERS for miniport drivers.
When the OID method request is made, the InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to an NDIS_NIC_SWITCH_VF_PARAMETERS structure.
Remarks
The overlying driver or user-mode application specifies the VF to query by setting the VFId member of the NDIS_NIC_SWITCH_VF_PARAMETERS structure to the identifier of the VF. The overlying driver or application obtains the VF identifier through one of the following ways:
By issuing an OID method request of OID_NIC_SWITCH_ENUM_VFS.
If this OID request is completed successfully, the overlying driver or user-mode application receives a list of all VFs allocated on the network adapter. Each element within the list is an NDIS_NIC_SWITCH_VF_INFO structure, with the VF identifier specified by the VFId member.
By issuing an OID method request of OID_NIC_SWITCH_ALLOCATE_VF.
If this OID request is completed successfully, the overlying driver receives the identifier of the newly created VF in the VFId member of the returned NDIS_NIC_SWITCH_VF_PARAMETERS structure.
Note Only overlying drivers can obtain the VF identifier in this manner.
After a successful return from the OID method request, the InformationBuffer member of the NDIS_OID_REQUEST structure contains a pointer to an NDIS_NIC_SWITCH_VF_PARAMETERS structure. This structure contains the configuration parameters for the specified VF.
Return Status Codes
NDIS handles the OID method request of OID_NIC_SWITCH_VF_PARAMETERS for miniport drivers, and returns the following status code for OID method requests of OID_NIC_SWITCH_VF_PARAMETERS.
Status Code | Description |
---|---|
NDIS_STATUS_SUCCESS |
The request completed successfully. The InformationBuffer member points to an NDIS_NIC_SWITCH_VF_PARAMETERS structure. |
NDIS_STATUS_NOT_SUPPORTED |
The miniport driver either does not support the single root I/O virtualization (SR-IOV) interface or is not enabled to use the interface. |
NDIS_STATUS_INVALID_PARAMETER |
One or more of the members of the NDIS_NIC_SWITCH_VF_PARAMETERS structure have invalid values. |
NDIS_STATUS_INVALID_LENGTH |
The length of the information buffer is less than sizeof(NDIS_NIC_SWITCH_VF_PARAMETERS). NDIS sets the DATA.METHOD_INFORMATION.BytesNeeded member in the NDIS_OID_REQUEST structure to the minimum buffer size that is required. |
NDIS_STATUS_INVALID_LENGTH |
The information buffer was too short. NDIS sets the DATA.METHOD_INFORMATION.BytesNeeded member in the NDIS_OID_REQUEST structure to the minimum buffer size that is required. |
NDIS_STATUS_FAILURE |
The request failed for other reasons. |
Requirements
Version |
Supported in NDIS 6.30 and later. |
Header |
Ntddndis.h (include Ndis.h) |