DMA_START_HANDLER funzione di callback (netdma.h)
in Windows 8 e versioni successive.
La funzione ProviderStartDma avvia un trasferimento DMA sul canale DMA specificato.
DMA_START_HANDLER DmaStartHandler;
NTSTATUS DmaStartHandler(
[in] PVOID ProviderChannelContext,
[in] PNET_DMA_DESCRIPTOR DescriptorVirtualAddress,
[in] PHYSICAL_ADDRESS DescriptorPhysicalAddress,
[in] ULONG DescriptorCount
)
{...}
[in] ProviderChannelContext
Puntatore che identifica l'area di contesto di un canale DMA. Il provider DMA ha restituito questo handle a NetDMA nel percorso specificato nel parametro pProviderChannelContext dell'oggetto Funzione ProviderAllocateDmaChannel .
[in] DescriptorVirtualAddress
Puntatore all'indirizzo virtuale della prima struttura NET_DMA_DESCRIPTOR in un elenco collegato di descrittori DMA. L'indirizzo fisico corrispondente viene specificato nel parametro DescriptorPhysicalAddress .
[in] DescriptorPhysicalAddress
Puntatore all'indirizzo fisico del primo descrittore DMA in un elenco collegato di descrittori DMA. L'indirizzo virtuale corrispondente viene specificato nel parametro DescriptorVirtualAddress .
[in] DescriptorCount
Numero di descrittori DMA in DescriptorVirtualAddress .
ProviderStartDma restituisce uno dei valori di stato seguenti:
Codice restituito | Descrizione |
---|---|
|
Operazione riuscita. |
|
L'operazione non è riuscita a causa di risorse insufficienti. |
|
L'operazione non è riuscita per motivi non specificati. |
L'interfaccia NetDMA chiama una funzione ProviderStartDma del driver del provider DMA per avviare un trasferimento DMA. L'interfaccia NetDMA può chiamare ProviderStartDma in qualsiasi momento dopo l'allocazione di un canale DMA. L'interfaccia NetDMA deve chiamare ProviderStartDma dopo aver chiamato providerAbortDma, ProviderResetChannel o Funzione ProviderAllocateDmaChannel per un canale DMA.
L'origine del trasferimento DMA è un elenco collegato di descrittori DMA. Il membro NextDescriptor della struttura NET_DMA_DESCRIPTOR nel parametro DescriptorVirtualAddress contiene l'indirizzo fisico della struttura NET_DMA_DESCRIPTOR successiva nell'elenco collegato.
Dopo che ProviderStartDma avvia il trasferimento DMA iniziale, l'interfaccia NetDMA può chiamare la funzione ProviderAppendDma per aggiungere dati aggiuntivi al trasferimento.
NetDMA chiama ProviderStartDma in IRQL <= DISPATCH_LEVEL.
Requisito | Valore |
---|---|
Client minimo supportato | Supportato per i driver NetDMA 2.0 in Windows Server 2008. Supportato per i driver NetDMA 1.1 in Windows Server 2008. Supportato per i driver NetDMA 1.0 in Windows Server 2008 e Windows Vista. |
Piattaforma di destinazione | Windows |
Intestazione | netdma.h (include Netdma.h) |
IRQL | <= DISPATCH_LEVEL |