Funzione NdisMReadConfigBlock (ndis.h)
Un driver miniport per una funzione virtuale PCI Express (PCIe) chiama la funzione NdisMReadConfigBlock per leggere i dati da un blocco di configurazione VF. Le operazioni di lettura per un blocco di configurazione VF vengono gestite dal driver miniport della funzione fisica PCIe (PF) della scheda di rete.
Sintassi
NDIS_STATUS NdisMReadConfigBlock(
[in] NDIS_HANDLE NdisMiniportHandle,
[in] ULONG BlockId,
[out] PVOID Buffer,
[in] ULONG Length
);
Parametri
[in] NdisMiniportHandle
La scheda di rete gestisce l'NDIS passata al parametro MiniportAdapterHandle di MiniportInitializeEx.
[in] BlockId
Valore ULONG che specifica l'identificatore del blocco di configurazione VF da leggere. Questo identificatore è proprietario del fornitore hardware indipendente (IHV) e viene usato solo dai driver PF e miniport VF.
[out] Buffer
Puntatore a un buffer allocato dal chiamante che conterrà i dati di configurazione richiesti.
[in] Length
Numero di byte da leggere dal blocco di configurazione VF.
Valore restituito
NdisMReadConfigBlock può restituire uno dei valori di stato seguenti:
Codice restituito | Descrizione |
---|---|
|
Operazione di query completata. |
|
Operazione di query non riuscita. |
Commenti
Il driver miniport VF chiama NdisMReadConfigBlock per avviare una richiesta di lettura backchannel dei dati di configurazione VF dal driver miniport PF. Dopo la notifica di questa richiesta, il driver PF restituisce i dati dal blocco di configurazione VF specificato.
Viene usato un blocco di configurazione VF per la comunicazione backchannel tra i driver miniport PF e 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.
Per altre informazioni sull'interfaccia SR-IOV, vedere Panoramica di Single Root I/O Virtualization (SR-IOV).For more information about the SR-IOV interface, see Overview of Single Root I/O Virtualization (SR-IOV).
Interfaccia con un driver del bus virtuale
Se un fornitore di hardware indipendente (IHV) fornisce un driver bus virtuale (VBD) come parte del pacchetto driver SR-IOV, il driver miniport non deve chiamare NdisMReadConfigBlock. Al contrario, il driver deve interfacciarsi con VBD tramite un canale di comunicazione privato e richiedere che la chiamata VBD ReadVfConfigBlock. Questa funzione viene esposta dall'interfaccia GUID_VPCI_INTERFACE_STANDARD supportata dal driver bus PCI (VPCI) virtuale sottostante.Il VBD eseguito nel sistema operativo guest di una partizione figlio Hyper-V può eseguire una query sull'interfaccia GUID_VPCI_INTERFACE_STANDARD inviando 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 | Supportato in NDIS 6.30 e versioni successive. |
Piattaforma di destinazione | Universale |
Intestazione | ndis.h (include Ndis.h) |
Libreria | Ndis.lib |
IRQL | <= APC_LEVEL |
Vedi anche