NDIS_MAKE_RID Makro (ndis.h)
Das NDIS_MAKE_RID Makro erstellt einen NDIS_VF_RID Wert aus pci Express (PCIe)-Segmenten, Bus-, Geräte- und Funktionsnummern. Der Miniporttreiber verwendet diesen Wert als PCIe Requestor ID (RID) für die PCIe Virtual Function (VF) eines Netzwerkadapters.
Syntax
void NDIS_MAKE_RID(
_Segment,
_Bus,
_Function
);
Parameter
_Segment
Die PCIe-Segmentnummer für die Gruppe von PCIe-Bussen, auf denen das Gerät angeschlossen ist. Ein PCIe-Segment ist eine Reihe von PCIe-Bussen, die Konfigurationsraum gemeinsam nutzen.
_Bus
Die PCIe-Busnummer des Busses, an dem der Netzwerkadapter angeschlossen ist.
_Function
Die Funktionsnummer eines logischen Geräts auf dem Netzwerkadapter.
Rückgabewert
NDIS_MAKE_RID gibt einen NDIS_VF_RID Wert zurück, der aus den Parametern erstellt wird.
Bemerkungen
Beim Behandeln einer OID-Anforderung von OID_NIC_SWITCH_ALLOCATE_VFverwendet der Miniporttreiber für die PCIe Physical Function (PF) das NDIS_MAKE_RID Makro, um einen PCIe Requestor ID (RID)-Wert für den VF zu erstellen. Der Treiber ruft die PCIe-Segment-, Bus-, Geräte- und Funktionsnummern für den VF ab, indem NdisMGetVirtualFunctionLocationaufgerufen wird.
Anmerkung
Wenn ein unabhängiger Hardwareanbieter (IHV) einen virtuellen Bustreiber (VBD) als Teil seines SR-IOV Treiberpaketsbereitstellt, darf sein PF-Miniporttreiber nicht NdisMGetVirtualFunctionLocationaufrufen. Stattdessen muss der Treiber über einen privaten Kommunikationskanal mit dem VBD kommunizieren und anfordern, dass der VBD-Aufruf GetLocation-. Diese Funktion wird von der GUID_PCI_VIRTUALIZATION_INTERFACE Schnittstelle verfügbar gemacht, die vom zugrunde liegenden PCI-Bustreiber unterstützt wird.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in NDIS 6.30 und höher. |
Zielplattform- | Desktop |
Header- | ndis.h |