EVT_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL Rückruffunktion (wdfdmatransaction.h)
[Gilt nur für KMDF]
Die Ereignisrückruffunktion EvtDmaTransactionConfigureDmaChannel eines Treibers konfiguriert den DMA-Adapter für einen DMA-Enabler im Systemmodus.
Syntax
EVT_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL EvtWdfDmaTransactionConfigureDmaChannel;
BOOLEAN EvtWdfDmaTransactionConfigureDmaChannel(
[in] WDFDMATRANSACTION DmaTransaction,
[in] WDFDEVICE Device,
[in] PVOID Context,
[in, optional] PMDL Mdl,
[in] size_t Offset,
[in] size_t Length
)
{...}
Parameter
[in] DmaTransaction
Ein Handle für ein DMA-Transaktionsobjekt, das die ausgeführte Transaktion darstellt.
[in] Device
Ein Handle für das Framework-Geräteobjekt, das der Treiber beim Aufrufen von WdfDmaTransactionCreate angegeben hat.
[in] Context
Der Kontextzeiger, den der Treiber in einem vorherigen Aufruf von WdfDmaTransactionSetChannelConfigurationCallback angegeben hat.
[in, optional] Mdl
Ein Zeiger auf eine einzelne Speicherdeskriptorliste (MDL) oder MDL-Kette, die den der aktuellen Übertragung zugeordneten Puffer beschreibt, oder NULL, wenn die letzte Übertragung abgeschlossen wurde und der Adapter freigegeben wird.
[in] Offset
Ein Byteoffset in den Puffer, der im Mdl-Parameter angegeben ist, in dem die aktuelle Übertragung beginnt.
[in] Length
Die Anzahl der Bytes, die in der aktuellen Übertragung übertragen werden.
Rückgabewert
Die Rückruffunktion EvtDmaTransactionConfigureDmaChannel gibt TRUE zurück, wenn sie den DMA-Kanal erfolgreich konfiguriert. Wenn diese Rückruffunktion FALSE zurückgibt, beendet das Framework die Transaktion und ruft EvtProgramDma nicht auf.
Hinweise
Treiber registrieren eine EvtDmaTransactionConfigureDmaChannel-Ereignisrückruffunktion , indem sie WdfDmaTransactionSetChannelConfigurationCallback aufrufen.
Das Framework ruft EvtDmaTransactionConfigureDmaChannel einmal für jede DMA-Übertragung des Systemprofils in der Transaktion auf, nachdem der Adapterkanal zugewiesen wurde, aber vor der Zuordnung der Übertragung und dem Aufruf von EvtProgramDma.
Der Treiber kann den EvtDmaTransactionConfigureDmaChannel-Rückruf verwenden, um eine beliebige benutzerdefinierte Programmierung für den DMA-Adapter festzulegen, bevor eine Übertragung zugeordnet wird.
Wenn beim Konfigurieren des Kanals ein Fehler auftritt, kann er die DMA-Übertragung beenden, indem WdfDmaTransactionDmaCompletedFinal aufgerufen und ggf. die Anforderung abgeschlossen wird. Der Treiber sollte dann FALSE von dieser Rückruffunktion zurückgeben.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 |
Zielplattform | Universell |
KMDF-Mindestversion | 1.11 |
Kopfzeile | wdfdmatransaction.h (include Wdf.h) |
IRQL | DISPATCH_LEVEL |