OID_SRIOV_WRITE_VF_CONFIG_BLOCK
En överdrivande drivrutin utfärdar en begäran om objektidentifierare (OID) för OID_SRIOV_WRITE_VF_CONFIG_BLOCK att skriva data till ett VF-konfigurationsblock (PCIe) virtual function (PCIe).
Överdrivande drivrutiner utfärdar denna OID-uppsättningsbegäran till miniportdrivrutinen för nätverkskortets PCIe Physical Function (PF). Den här OID-metodbegäran krävs för PF-miniportdrivrutiner som stöder gränssnittet för enkel rot-I/O-virtualisering (SR-IOV).
InformationBuffer medlem i NDIS_OID_REQUEST-strukturen innehåller en pekare till en anropare allokerad buffert. Den här bufferten är formaterad så att den innehåller följande:
En NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS struktur som innehåller förskjutningen i enheter med byte från början av den här strukturen till en plats i bufferten som innehåller de data som skrivs till VF-konfigurationsblocket.
Ytterligare buffertutrymme för data som ska skrivas till det angivna VF-konfigurationsblocket.
Anmärkningar
Ett VF-konfigurationsblock används för backchannel-kommunikation mellan PF- och VF-miniportdrivrutinerna. IHV kan definiera ett eller flera VF-konfigurationsblock för miniportdrivrutinerna. Varje VF-konfigurationsblock har ett IHV-definierat format, längd och block-ID.
Note Data från varje VF-konfigurationsblock används endast av PF- och VF-miniportdrivrutinerna.
Innan den utfärdar OID-uppsättningens begäran om OID_SRIOV_WRITE_VF_CONFIG_BLOCK måste den överdrivande drivrutinen ange medlemmarna i NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS struktur på följande sätt:
Ange VFId- medlem till identifieraren för den VF som informationen ska skrivas för.
Ange BlockId medlem till identifieraren för konfigurationsblocket som informationen ska skrivas från.
Ange Längd medlem till antalet byte som ska skrivas till VF-konfigurationsblocket.
Ställ in BufferOffset medlem till förskjutningen i bufferten (refererad av InformationBuffer medlem) som innehåller de data som ska skrivas från det angivna VF-konfigurationsblocket. Den här förskjutningen anges i enheter med byte från början av NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS struktur.
När den hanterar OID-uppsättningens begäran om OID_SRIOV_WRITE_VF_CONFIG_BLOCK måste PF-miniportdrivrutinen följa dessa riktlinjer:
PF-miniportdrivrutinen måste kontrollera att den virtuella hårddisken, som anges av VFId medlem i NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS struktur, har resurser som tidigare har allokerats. PF-miniportdrivrutinen allokerar resurser för en VF under en OID-metodbegäran av OID_NIC_SWITCH_ALLOCATE_VF. Om resurser för den angivna virtuella hårddisken inte har allokerats måste drivrutinen misslyckas med OID-begäran.
PF-miniportdrivrutinen måste kontrollera att BlockId medlem i NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS-strukturen anger ett giltigt VF-konfigurationsblock. Annars måste drivrutinen misslyckas med OID-begäran.
Mer information om backchannel-kommunikation i det enda rot-I/O-virtualiseringsgränssnittet (SR-IOV) finns i SR-IOV PF/VF Backchannel Communication.
Returstatuskoder
Miniportdrivrutinen returnerar någon av följande statuskoder för OID-uppsättningens begäran för OID_SRIOV_WRITE_VF_CONFIG_BLOCK:
Statuskod | Beskrivning |
---|---|
NDIS_STATUS_SUCCESS |
OID-begäran har slutförts. |
NDIS_STATUS_NOT_SUPPORTED |
Miniportdrivrutinen stöder antingen inte det enda rot-I/O-virtualiseringsgränssnittet (SR-IOV) eller så är den inte aktiverad för att använda gränssnittet. |
NDIS_STATUS_INVALID_PARAMETER |
En eller flera av medlemmarna i NDIS_SRIOV_WRITE_VF_CONFIG_BLOCK_PARAMETERS struktur har ogiltiga värden. |
NDIS_STATUS_INVALID_LENGTH |
Informationsbufferten var för kort. NDIS anger DATA. SET_INFORMATION. BytesNeeded medlem i NDIS_OID_REQUEST struktur till den minsta buffertstorlek som krävs. |
NDIS_STATUS_FAILURE |
Begäran misslyckades av andra skäl. |
Krav
Version |
Stöds i NDIS 6.30 och senare. |
Rubrik |
Ntddndis.h (inkludera Ndis.h) |