EVT_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL fungsi panggilan balik (wdfdmatransaction.h)
[Berlaku untuk KMDF saja]
Fungsi panggilan balik peristiwa EvtDmaTransactionConfigureDmaChannel driver mengonfigurasi adaptor DMA untuk pengaktif DMA mode sistem.
Sintaks
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
Handel ke objek transaksi DMA yang mewakili transaksi yang sedang dijalankan.
[in] Device
Handel ke objek perangkat kerangka kerja yang ditentukan driver ketika disebut WdfDmaTransactionCreate.
[in] Context
Penunjuk konteks yang ditentukan driver dalam panggilan sebelumnya ke WdfDmaTransactionSetChannelConfigurationCallback.
[in, optional] Mdl
Penunjuk ke daftar deskriptor memori tunggal (MDL) atau rantai MDL yang menjelaskan buffer yang terkait dengan transfer saat ini, atau NULL jika transfer terakhir telah selesai dan adaptor sedang dibebaskan.
[in] Offset
Offset byte ke dalam buffer yang ditentukan dalam parameter Mdl tempat transfer saat ini dimulai.
[in] Length
Jumlah byte yang ditransfer dalam transfer saat ini.
Mengembalikan nilai
Fungsi panggilan balik EvtDmaTransactionConfigureDmaChannel mengembalikan TRUE jika berhasil mengonfigurasi saluran DMA. Jika fungsi panggilan balik ini mengembalikan FALSE, kerangka kerja menghentikan transaksi dan tidak memanggil EvtProgramDma.
Keterangan
Driver mendaftarkan fungsi panggilan balik peristiwa EvtDmaTransactionConfigureDmaChannel dengan memanggil WdfDmaTransactionSetChannelConfigurationCallback.
Kerangka kerja memanggil EvtDmaTransactionConfigureDmaChannel sekali untuk setiap transfer DMA profil sistem dalam transaksi, setelah mengalokasikan saluran adaptor tetapi sebelum memetakan transfer dan memanggil EvtProgramDma.
Driver dapat menggunakan panggilan balik EvtDmaTransactionConfigureDmaChannel untuk mengatur pemrograman kustom apa pun untuk adaptor DMA sebelum memetakan transfer.
Jika driver mengalami kesalahan saat mengonfigurasi saluran, driver dapat menghentikan transfer DMA dengan memanggil WdfDmaTransactionDmaCompletedFinal dan, jika perlu, menyelesaikan permintaan. Driver kemudian harus mengembalikan FALSE dari fungsi panggilan balik ini.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8 |
Target Platform | Universal |
Versi KMDF minimum | 1.11 |
Header | wdfdmatransaction.h (termasuk Wdf.h) |
IRQL | DISPATCH_LEVEL |