OID_SRIOV_BAR_RESOURCES
NDIS genera una richiesta di metodo OID (Object Identifier) di OID_SRIOV_BAR_RESOURCES per determinare le risorse di memoria allocate a un registro indirizzi di base PCI Express (PCIe) di una funzione virtuale PCIe (VF).
NDIS genera questa richiesta di metodo OID al driver miniport per la funzione fisica PCIe della scheda di rete. Questa richiesta di metodo OID è necessaria per i driver miniport PF che supportano l'interfaccia di virtualizzazione I/O (SR-IOV) singola.
Il membro InformationBuffer della struttura NDIS_OID_REQUEST contiene un puntatore a un buffer. Questo buffer contiene le strutture seguenti:
Struttura NDIS_SRIOV_BAR_RESOURCES_INFO che specifica il driver VF e BAR per cui il driver miniport PF restituisce le informazioni sulle risorse.
Struttura CM_PARTIAL_RESOURCE_DESCRIPTOR che segue la struttura NDIS_SRIOV_BAR_RESOURCES_INFO . La struttura CM_PARTIAL_RESOURCE_DESCRIPTOR contiene informazioni sulle risorse di memoria allocate alla barra specificata.
Commenti
NDIS genera una richiesta di metodo OID di OID_SRIOV_BAR_RESOURCES per ottenere l'indirizzo fisico del sistema e la lunghezza delle risorse di memoria allocate a un bar VF. Prima di eseguire la richiesta del metodo OID, NDIS formatta la struttura NDIS_SRIOV_BAR_RESOURCES_INFO nel modo seguente:
NDIS imposta il membro VFId della struttura NDIS_SRIOV_BAR_RESOURCES_INFO sull'identificatore associato al VF.
NDIS imposta il membro BarIndex della struttura NDIS_SRIOV_BAR_RESOURCES_INFO sull'indice BAR per il VF specificato. L'indice BAR è l'offset del registro all'interno della tabella delle barre nello spazio di configurazione PCI.
NDIS imposta il membro BarResourcesOffset della struttura NDIS_SRIOV_BAR_RESOURCES_INFO sull'offset, in unità di byte, dall'inizio della struttura NDIS_SRIOV_BAR_RESOURCES_INFO a una strutturaCM_PARTIAL_RESOURCE_DESCRIPTOR .
Nota I driver overlying, ad esempio il protocollo o i driver di filtro, non possono inviare richieste di metodo OID di OID_SRIOV_BAR_RESOURCES al driver miniport PF.
Quando il driver miniport PF riceve la richiesta del metodo OID, il driver restituisce le risorse per la barra specificata formattando la strutturadi CM_PARTIAL_RESOURCE_DESCRIPTOR all'interno del membro InformationBuffer della struttura NDIS_OID_REQUEST. Il driver formatta la struttura CM_PARTIAL_RESOURCE_DESCRIPTOR con le risorse hardware di sistema associate alla BARRA per il VF specificato.
Nota Il driver deve formattare la struttura per un tipo di risorsa cmResourceTypeMemory.
Codici di stato restituiti
Il driver miniport PF restituisce uno dei codici di stato seguenti per la richiesta di metodo di OID_SRIOV_BAR_RESOURCES.
Codice di stato | Descrizione |
---|---|
NDIS_STATUS_SUCCESS |
La richiesta OID è stata completata correttamente. |
NDIS_STATUS_NOT_SUPPORTED |
Il driver miniport PF non supporta l'interfaccia I/O (SR-IOV) radice singola o non è abilitata per l'uso dell'interfaccia. |
NDIS_STATUS_INVALID_PARAMETER |
Uno o più membri della struttura NDIS_SRIOV_BAR_RESOURCES_INFO hanno valori non validi. |
NDIS_STATUS_INVALID_LENGTH |
Il buffer delle informazioni è minore di (sizeof(NDIS_SRIOV_BAR_RESOURCES_INFO) + sizeof(CM_PARTIAL_RESOURCE_DESCRIPTOR). Il driver miniport PF deve impostare i DATI. METHOD_INFORMATION. Membro ByteNeeded nella struttura NDIS_OID_REQUEST alla dimensione minima del buffer necessaria. |
NDIS_STATUS_FAILURE |
La richiesta non è riuscita per altri motivi. |
Requisiti
Versione |
Supportato in NDIS 6.30 e versioni successive. |
Intestazione |
Ntddndis.h (include Ndis.h) |