EVT_WDF_PROGRAM_DMA funzione di callback (wdfdmatransaction.h)
[Si applica solo a KMDF]
Un driver basato su framework EvtProgramDma funzione di callback eventi programma un dispositivo specificato per eseguire un'operazione di trasferimento DMA.
Sintassi
EVT_WDF_PROGRAM_DMA EvtWdfProgramDma;
BOOLEAN EvtWdfProgramDma(
[in] WDFDMATRANSACTION Transaction,
[in] WDFDEVICE Device,
[in] WDFCONTEXT Context,
[in] WDF_DMA_DIRECTION Direction,
[in] PSCATTER_GATHER_LIST SgList
)
{...}
Parametri
[in] Transaction
Handle per l'oggetto transazione DMA che rappresenta la transazione DMA corrente.
[in] Device
Handle per un oggetto dispositivo framework.
[in] Context
Puntatore di contesto specificato dal driver in una chiamata precedente a WdfDmaTransactionExecute.
[in] Direction
Valore WDF_DMA_DIRECTIONtipizzato che specifica la direzione dell'operazione di trasferimento DMA.
[in] SgList
Puntatore a una struttura SCATTER_GATHER_LIST.
Valore restituito
La funzione di callback EvtProgramDma deve restituire true se avvia correttamente l'operazione di trasferimento DMA. In caso contrario, questa funzione di callback deve restituire FALSE. Tuttavia, il framework attualmente ignora il valore restituito.
Osservazioni:
I driver registrano una funzione di callback di eventi evtProgramDma chiamando WdfDmaTransactionInitializeUsingRequest o WdfDmaTransactionInitialize.
Il framework chiama la funzione di callback degli eventi EvtProgramDma di un driver quando è disponibile un di trasferimento DMA. La funzione di callback deve programmare l'hardware per avviare il trasferimento.
Il driver non deve modificare i buffer di dati associati alla transazione fino a quando WdfDmaTransactionDmaCompletedXxx ha restituito TRUE.
Per i trasferimenti a pacchetto singolo, l'elenco a dispersione/raccolta a cui punta il parametro SgList contiene un singolo elemento.
Per altre informazioni su questa funzione di callback, vedere Programming DMA Hardware.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
versione minima di KMDF | 1.0 |
intestazione | wdfdmatransaction.h (include Wdf.h) |
IRQL | DISPATCH_LEVEL |