Macro NdisMCompleteDmaTransfer (ndis.h)
La funzione NdisMCompleteDmaTransfer indica che è stata completata un'operazione di trasferimento DMA di sistema. Reimposta il controller DMA di sistema in preparazione per ulteriori trasferimenti DMA.
Sintassi
void NdisMCompleteDmaTransfer(
_S,
_H,
_B,
_O,
_L,
_M_
);
Parametri
_S
Puntatore a una variabile fornita dal chiamante in cui questa funzione restituisce lo stato finale del trasferimento DMA, che può essere uno dei seguenti:
NDIS_STATUS_SUCCESS
I dati sono stati trasferiti e scaricati nella memoria host o nel dispositivo per mantenere l'integrità dei dati.
NDIS_STATUS_RESOURCES
Il controller DMA è stato rilasciato, ma il trasferimento dei dati potrebbe essere incoerente.
_H
Handle restituito quando la funzione miniportInitializeEx chiamata funzione NdisMRegisterDmaChannel.
_B
Puntatore al descrittore del buffer passato in precedenza a NdisMSetupDmaTransfer.
_O
Offset di byte in corrispondenza del quale è iniziato il trasferimento. Questo valore è stato passato anche a NdisMSetupDmaTransfer.
_L
Lunghezza in byte del trasferimento. Questo valore è stato passato anche a NdisMSetupDmaTransfer.
_M_
TRUE se il trasferimento è stato dall'host alla scheda di interfaccia di rete, ad esempio un'operazione di invio.
Valore restituito
Nessuno
Osservazioni
NdisMCompleteDmaTransfer deve essere chiamato con WriteToDevice impostato su TRUE prima che i dati trasferiti siano considerati presenti nella memoria della scheda di interfaccia di rete. NdisMCompleteDmaTransfer deve essere chiamato con WriteToDevice impostato su FALSE prima che i dati trasferiti possano essere letti dalla memoria host.