Condividi tramite


Funzione NdisMWriteConfigBlock (ndis.h)

Un driver miniport per una funzione virtuale PCI Express (PCIe) chiama la funzione NdisMWriteConfigBlock per scrivere dati in un blocco di configurazione VF. Le operazioni di scrittura in un blocco di configurazione VF vengono gestite dal driver miniport della funzione fisica PCIe (PF).

NotaNdisMWriteConfigBlock deve essere chiamato solo dal driver miniport per il VF di una scheda di rete.
 

Sintassi

NDIS_STATUS NdisMWriteConfigBlock(
  [in] NDIS_HANDLE NdisMiniportHandle,
  [in] ULONG       BlockId,
  [in] PVOID       Buffer,
  [in] ULONG       Length
);

Parametri

[in] NdisMiniportHandle

L'handle della scheda di rete passato al parametro MiniportAdapterHandle di MiniportInitializeEx.

[in] BlockId

Valore ULONG che specifica l'identificatore del blocco di configurazione da scrivere in. Questo identificatore è proprietario del fornitore hardware indipendente (IHV) e viene usato solo dai driver miniport per pf e VF nella scheda di rete.

[in] Buffer

Puntatore a un buffer allocato del chiamante che contiene i dati di configurazione da scrivere.

[in] Length

Numero di byte da scrivere nel blocco di configurazione.

Valore restituito

NdisMWriteConfigBlock può restituire uno dei valori di stato seguenti.

Codice restituito Descrizione
NDIS_STATUS_SUCCESS
Operazione di scrittura completata correttamente.
NDIS_STATUS_FAILURE
Operazione di scrittura non riuscita.

Commenti

Il driver miniport VF chiama NdisMWriteConfigBlock per avviare una richiesta di scrittura backchannel dei dati di configurazione VF dal driver miniport PF. Una volta notificata questa richiesta, il driver PF scrive i dati nel blocco di configurazione VF specificato.

Un blocco di configurazione VF viene usato per la comunicazione backchannel tra i driver PF e miniport VF. L'IHV può definire uno o più blocchi di configurazione VF per il dispositivo. Ogni blocco di configurazione VF ha un formato, una lunghezza e un ID blocco definiti dall'IHV.

Nota I dati di ogni blocco di configurazione VF vengono usati solo dai driver PF e miniport VF.
 
Per altre informazioni sulla comunicazione backchannel all'interno dell'interfaccia di virtualizzazione I/O radice singola ( SR-IOV), vedere SR-IOV PF/VF Backchannel Communication.

Interfaccia a un driver del bus virtuale

Se un fornitore di hardware indipendente (IHV) fornisce un driver del bus virtuale (VBD) come parte del pacchetto driver SR-IOV, il driver miniport non deve chiamare NdisMWriteConfigBlock. Il driver deve invece interfacciarsi con VBD tramite un canale di comunicazione privato e richiedere che la chiamata VBD WriteVfConfigBlock. Questa funzione viene esposta dall'interfaccia GUID_VPCI_INTERFACE_STANDARD supportata dal driver del bus PCI (VPCI) sottostante.

Il VBD eseguito in un sistema operativo guest di una partizione figlio Hyper-V può eseguire query sull'interfaccia GUID_VPCI_INTERFACE_STANDARD eseguendo una richiesta di IRP_MN_QUERY_INTERFACE al relativo oggetto dispositivo fisico (PDO) nel bus VPCI. Questa richiesta deve essere effettuata da IRQL = PASSIVE_LEVEL. In questa richiesta, il driver deve impostare il parametro InterfaceType su GUID_VPCI_INTERFACE_STANDARD.

Requisiti

Requisito Valore
Client minimo supportato Nessuna supportata, supportata in NDIS 6.30 e versioni successive.
Server minimo supportato Windows Server 2012
Piattaforma di destinazione Universale
Intestazione ndis.h (includere Ndis.h)
Libreria Ndis.lib
IRQL <= APC_LEVEL

Vedi anche

GUID_VPCI_INTERFACE_STANDARD

WriteVfConfigBlock