NdisMCompleteDmaTransfer-Makro (ndis.h)
Die NdisMCompleteDmaTransfer-Funktion gibt an, dass ein DMA-Systemübertragungsvorgang abgeschlossen wurde. Es setzt den DMA-Controller des Systems zurück, um weitere DMA-Übertragungen vorzubereiten.
Syntax
void NdisMCompleteDmaTransfer(
_S,
_H,
_B,
_O,
_L,
_M_
);
Parameter
_S
Ein Zeiger auf eine vom Aufrufer bereitgestellte Variable, in der diese Funktion den endgültigen status der DMA-Übertragung zurückgibt. Dies kann eine der folgenden Sein:
NDIS_STATUS_SUCCESS
Die Daten wurden übertragen und in den Hostspeicher oder auf das Gerät geleert, um die Datenintegrität zu gewährleisten.
NDIS_STATUS_RESOURCES
Der DMA-Controller wurde freigegeben, aber die Datenübertragung kann inkohärent sein.
_H
Das Handle, das zurückgegeben wurde, wenn die MiniportInitializeEx-Funktion die NdisMRegisterDmaChannel-Funktion .
_B
Ein Zeiger auf den Pufferdeskriptor, der zuvor an NdisMSetupDmaTransfer übergeben wurde.
_O
Der Byteoffset, mit dem die Übertragung begann. Dieser Wert wurde auch an NdisMSetupDmaTransfer übergeben.
_L
Die Länge der Übertragung in Byte. Dieser Wert wurde auch an NdisMSetupDmaTransfer übergeben.
_M_
TRUE , wenn die Übertragung vom Host an die NIC erfolgt ist, z. B. ein Sendevorgang.
Rückgabewert
Keine
Bemerkungen
NdisMCompleteDmaTransfer muss aufgerufen werden, wobei WriteToDevice auf TRUE festgelegt ist, bevor die übertragenen Daten im Speicher der NIC als vorhanden gelten. NdisMCompleteDmaTransfer muss aufgerufen werden, wobei WriteToDevice auf FALSE festgelegt ist, bevor die übertragenen Daten aus dem Hostspeicher gelesen werden können.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisMCompleteDmaTransfer (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisMCompleteDmaTransfer (NDIS 5.1)) in Windows XP. |
Zielplattform | Universell |
Header | ndis.h (include Ndis.h) |
IRQL | <= DISPATCH_LEVEL |
DDI-Complianceregeln | Irql_MCO_Function(ndis) |