OID_SRIOV_BAR_RESOURCES
NDIS gibt eine OID-Methodenanforderung (Object Identifier) von OID_SRIOV_BAR_RESOURCES aus, um die Speicherressourcen zu bestimmen, die einem PCI Express (PCIe) Base Address Register (BAR) einer PCIe Virtual Function (VF) zugeordnet wurden.
NDIS gibt diese OID-Methodenanforderung an den Miniporttreiber für die PCIe Physical Function (PF) des Netzwerkadapters aus. Diese OID-Methodenanforderung ist für PF-Miniporttreiber erforderlich, die die einzelne I/O-Virtualisierungsschnittstelle (SR-IOV) unterstützen.
Das InformationBuffer Member der NDIS_OID_REQUEST-Struktur enthält einen Zeiger auf einen Puffer. Dieser Puffer enthält die folgenden Strukturen:
Eine NDIS_SRIOV_BAR_RESOURCES_INFO Struktur, die den VF und den BAR angibt, für den der PF-Miniporttreiber Ressourceninformationen zurückgibt.
Eine CM_PARTIAL_RESOURCE_DESCRIPTOR Struktur, die auf die NDIS_SRIOV_BAR_RESOURCES_INFO Struktur folgt. Die CM_PARTIAL_RESOURCE_DESCRIPTOR-Struktur enthält Informationen zu den Speicherressourcen, die der angegebenen LEISTE zugeordnet wurden.
Bemerkungen
NDIS gibt eine OID-Methodenanforderung von OID_SRIOV_BAR_RESOURCES aus, um die physische Systemadresse und die Länge der Speicherressourcen abzurufen, die einem VF BAR zugeordnet wurden. Bevor sie die OID-Methodenanforderung ausgibt, formatiert NDIS die NDIS_SRIOV_BAR_RESOURCES_INFO Struktur wie folgt:
NDIS legt die VFId Member der NDIS_SRIOV_BAR_RESOURCES_INFO Struktur auf den Bezeichner fest, der dem VF zugeordnet ist.
NDIS legt den BarIndex Member der NDIS_SRIOV_BAR_RESOURCES_INFO Struktur auf den BAR-Index für den angegebenen VF fest. Der BAR-Index ist der Offset des Registers innerhalb der Tabelle der BARs im PCI-Konfigurationsraum.
NDIS legt den BarResourcesOffset Element der NDIS_SRIOV_BAR_RESOURCES_INFO Struktur auf den Offset (in Byteeinheiten) vom Anfang der NDIS_SRIOV_BAR_RESOURCES_INFO Struktur auf eine CM_PARTIAL_RESOURCE_DESCRIPTOR Struktur fest.
Hinweis Überlying-Treiber, z. B. Protokoll- oder Filtertreiber, keine OID-Methodenanforderungen von OID_SRIOV_BAR_RESOURCES an den PF-Miniporttreiber ausstellen können.
Wenn der PF-Miniport-Treiber die OID-Methodenanforderung empfängt, gibt der Treiber die Ressourcen für den angegebenen BALKEN zurück, indem die CM_PARTIAL_RESOURCE_DESCRIPTOR Struktur innerhalb des InformationBuffer Member der NDIS_OID_REQUEST Struktur formatiert wird. Der Treiber formatiert die CM_PARTIAL_RESOURCE_DESCRIPTOR Struktur mit den Systemhardwareressourcen, die der BAR für den angegebenen VF zugeordnet sind.
Hinweis Der Treiber muss die Struktur für einen Ressourcentyp CmResourceTypeMemoryformatieren.
Rückgabestatuscodes
Der PF-Miniport-Treiber gibt einen der folgenden Statuscodes für die Methodenanforderung von OID_SRIOV_BAR_RESOURCES zurück.
Statuscode | Beschreibung |
---|---|
NDIS_STATUS_SUCCESS |
Die OID-Anforderung wurde erfolgreich abgeschlossen. |
NDIS_STATUS_NOT_SUPPORTED |
Der PF-Miniporttreiber unterstützt weder die einzelne I/O-Virtualisierungsschnittstelle (SR-IOV) noch ist die Verwendung der Schnittstelle aktiviert. |
NDIS_STATUS_INVALID_PARAMETER |
Mindestens ein Element der NDIS_SRIOV_BAR_RESOURCES_INFO-Struktur hat ungültige Werte. |
NDIS_STATUS_INVALID_LENGTH |
Der Informationspuffer ist kleiner als (Sizeof(NDIS_SRIOV_BAR_RESOURCES_INFO) + sizeof(CM_PARTIAL_RESOURCE_DESCRIPTOR). Der PF-Miniporttreiber muss die DATA festlegen. METHOD_INFORMATION. BytesNeededed Member in der NDIS_OID_REQUEST Struktur auf die erforderliche Mindestpuffergröße. |
NDIS_STATUS_FAILURE |
Fehler bei der Anforderung aus anderen Gründen. |
Anforderungen
Version |
Unterstützt in NDIS 6.30 und höher. |
Kopfball |
Ntddndis.h (include Ndis.h) |