Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Een overliggend stuurprogramma geeft een OID-setaanvraag (object-id) van OID_SRIOV_WRITE_VF_CONFIG_BLOCK voor het schrijven van gegevens naar een CONFIGURATIEblok van PCI Express (PCIe) Virtual Function (VF).
Bij het overliggen van stuurprogramma's wordt deze OID-setaanvraag verzonden naar het minipoortstuurprogramma voor de PCIe Physical Function (PF) van de netwerkadapter. Deze OID-methodeaanvraag is vereist voor PF-minipoortstuurprogramma's die ondersteuning bieden voor de I/O-interface met één hoofdmap (SR-IOV).
De InformationBuffer lid van de NDIS_OID_REQUEST structuur bevat een aanwijzer naar een aanroeper toegewezen buffer. Deze buffer is opgemaakt om het volgende te bevatten:
Een NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS structuur met de offset, in eenheden van bytes, van het begin van deze structuur tot een locatie binnen de buffer die de gegevens bevat die naar het VF-configuratieblok worden geschreven.
Extra bufferruimte voor de gegevens die naar het opgegeven VF-configuratieblok moeten worden geschreven.
Opmerkingen
Er wordt een VF-configuratieblok gebruikt voor backchannelcommunicatie tussen de PF- en VF-minipoortstuurprogramma's. De IHV kan een of meer VF-configuratieblokken definiëren voor de minipoortstuurprogramma's. Elk VF-configuratieblok heeft een door IHV gedefinieerde indeling, lengte en blok-id.
Opmerking Gegevens uit elk VF-configuratieblok alleen worden gebruikt door de PF- en VF-minipoortstuurprogramma's.
Voordat de OID-setaanvraag van OID_SRIOV_WRITE_VF_CONFIG_BLOCK wordt opgegeven, moet het bovenliggende stuurprogramma de leden van NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS structuur op de volgende manier instellen:
Stel de VFId lid in op de id van de VF waarvoor de informatie moet worden geschreven.
Stel de BlockId lid in op de id van het configuratieblok waaruit de informatie moet worden geschreven.
Stel het Lengte lid in op het aantal bytes dat moet worden geschreven naar het VF-configuratieblok.
Stel de BufferOffset lid in op de offset binnen de buffer (waarnaar wordt verwezen door InformationBuffer lid) die de gegevens bevat die moeten worden geschreven uit het opgegeven VF-configuratieblok. Deze offset wordt opgegeven in eenheden van bytes vanaf het begin van de NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS structuur.
Wanneer de aanvraag van de OID-set van OID_SRIOV_WRITE_VF_CONFIG_BLOCK wordt verwerkt, moet het PF-minipoortstuurprogramma de volgende richtlijnen volgen:
Het PF-minipoortstuurprogramma moet controleren of de VF, die is opgegeven door de VFId lid van de NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS-structuur, resources bevat die eerder zijn toegewezen. Het PF-minipoortstuurprogramma wijst resources toe voor een VF tijdens een OID-methodeaanvraag van OID_NIC_SWITCH_ALLOCATE_VF. Als resources voor de opgegeven VF niet zijn toegewezen, moet het stuurprogramma de OID-aanvraag mislukken.
Het PF-minipoortstuurprogramma moet controleren of de BlockId lid van de NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS-structuur een geldig VF-configuratieblok aangeeft. Zo niet, dan moet het stuurprogramma de OID-aanvraag mislukken.
Zie SR-IOV PF/VF Backchannel Communicationvoor meer informatie over backchannelcommunicatie binnen de I/O-interface (SR-IOV).
Statuscodes retourneren
Het minipoortstuurprogramma retourneert een van de volgende statuscodes voor de OID-setaanvraag van OID_SRIOV_WRITE_VF_CONFIG_BLOCK:
Statuscode | Beschrijving |
---|---|
NDIS_STATUS_SUCCESS |
De OID-aanvraag is voltooid. |
NDIS_STATUS_NOT_SUPPORTED |
Het minipoortstuurprogramma biedt geen ondersteuning voor de I/O-interface met één hoofdmap (SR-IOV) of is niet ingeschakeld voor het gebruik van de interface. |
NDIS_STATUS_INVALID_PARAMETER |
Een of meer leden van de NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS structuur hebben ongeldige waarden. |
NDIS_STATUS_INVALID_LENGTH |
De informatiebuffer was te kort. NDIS stelt de DATA in. SET_INFORMATION. BytesNeeded lid in de NDIS_OID_REQUEST structuur tot de minimale buffergrootte die is vereist. |
NDIS_STATUS_FAILURE |
De aanvraag is om andere redenen mislukt. |
Eisen
Versie |
Ondersteund in NDIS 6.30 en hoger. |
Rubriek |
Ntddndis.h (inclusief Ndis.h) |