Condividi tramite


DMA_SUSPEND_HANDLER funzione di callback (netdma.h)

Nota L'interfaccia NetDMA non è supportata

in Windows 8 e versioni successive.

 
La funzione ProviderSuspendDma sospende i trasferimenti DMA attualmente in corso in un canale DMA.

Sintassi

DMA_SUSPEND_HANDLER DmaSuspendHandler;

NTSTATUS DmaSuspendHandler(
  [in]  PVOID ProviderChannelContext,
  [out] PPHYSICAL_ADDRESS *pLastDescriptor
)
{...}

Parametri

[in] ProviderChannelContext

Puntatore che identifica l'area di contesto del canale DMA. Il provider DMA ha restituito questo handle a NetDMA nel percorso specificato nel parametro pProviderChannelContext dell'oggetto Funzione ProviderAllocateDmaChannel .

[out] pLastDescriptor

Puntatore a una variabile contenente l'indirizzo fisico dell'ultimo descrittore DMA elaborato correttamente. Il provider DMA fornisce questo indirizzo prima di restituire da ProviderSuspendDma.

Valore restituito

ProviderSuspendDma restituisce uno dei valori di stato seguenti:

Codice restituito Descrizione
STATUS_SUCCESS
Operazione riuscita.
STATUS_UNSUCCESSFUL
L'operazione non è riuscita per motivi non specificati.

Commenti

La funzione ProviderSuspendDma è una funzione facoltativa per i provider NetDMA. L'interfaccia NetDMA può chiamare la funzione ProviderSuspendDma , se presente, per sospendere temporaneamente eventuali trasferimenti DMA in corso in un canale DMA.

Il provider DMA completa il trasferimento del descrittore DMA corrente prima che venga restituito da ProviderSuspendDma. Se la creazione di report sullo stato di completamento è abilitata, il motore DMA scrive lo stato NetDmaTransferStatusSuspend nell'indirizzo specificato nell'indirizzo specificato nei membri Di completamentoVirtualAddress e CompletionPhysicalAddress nei membri NET_DMA_CHANNEL_PARAMETERS struttura.

Mentre i trasferimenti DMA vengono sospesi, l'interfaccia NetDMA può modificare l'elenco collegato descrittore DMA, ad esempio per inserire o eliminare i descrittori.

L'interfaccia NetDMA chiama la funzione ProviderResumeDma per riprendere le operazioni DMA sospese chiamando ProviderSuspendDma.

NetDMA chiama ProviderSuspendDma in IRQL <= DISPATCH_LEVEL.

Requisiti

Requisito Valore
Client minimo supportato Supportato per i driver NetDMA 1.0 in Windows Vista.
Piattaforma di destinazione Windows
Intestazione netdma.h (include Netdma.h)
IRQL <= DISPATCH_LEVEL

Vedi anche

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

ProviderResumeDma