struktur WDF_DMA_SYSTEM_PROFILE_CONFIG (wdfdmaenabler.h)
[Hanya berlaku untuk KMDF]
Struktur WDF_DMA_SYSTEM_PROFILE_CONFIG menjelaskan pengaturan khusus perangkat keras yang terkait dengan pengaktif DMA mode sistem.
Sintaks
typedef struct _WDF_DMA_SYSTEM_PROFILE_CONFIG {
ULONG Size;
BOOLEAN DemandMode;
BOOLEAN LoopedTransfer;
DMA_WIDTH DmaWidth;
PHYSICAL_ADDRESS DeviceAddress;
PCM_PARTIAL_RESOURCE_DESCRIPTOR DmaDescriptor;
} WDF_DMA_SYSTEM_PROFILE_CONFIG, *PWDF_DMA_SYSTEM_PROFILE_CONFIG;
Anggota
Size
Ukuran struktur ini dalam byte.
DemandMode
Menentukan bahwa transfer dikendalikan oleh DMA perangkat
baris permintaan ditentukan dalam anggota DmaDescriptor dari struktur ini. Lihat informasi selengkapnya di Keterangan.
LoopedTransfer
Menentukan bahwa adaptor DMA harus mengulangi transfer yang ditentukan jika panjangnya lebih besar dari ukuran buffer.
DmaWidth
Lebar register yang ditentukan oleh DeviceAddress. Nilai yang mungkin adalah Width8Bits, Width16Bits, Width32Bits, dan Width64Bits.
DeviceAddress
Alamat yang diterjemahkan ke atau dari mana pengontrol DMA ditransfer. Driver dapat menentukan offset dari alamat dasar ini pada setiap transaksi dengan memanggil WdfDmaTransactionSetDeviceAddressOffset.
DmaDescriptor
Deskriptor sumber daya yang diterjemahkan untuk saluran DMA yang ditetapkan perangkat selama EvtDevicePrepareHardware. Ini menyediakan baris permintaan DMA untuk adaptor.
Keterangan
Driver menyediakan struktur ini untuk WdfDmaEnablerConfigureSystemProfile setelah membuat pengaktif DMA profil sistem.
Biasanya, driver mengatur DemandMode ke TRUE. Fungsi panggilan balik EvtProgramDma driver kemudian memprogram perangkat untuk menegaskan baris permintaan DMA-nya dan memulai transfer. Dalam hal ini, transfer mungkin dimulai saat EvtProgramDma masih berjalan.
Driver harus memastikan bahwa baris permintaan DMA perangkat tidak ditegaskan sebelum fungsi panggilan balik EvtProgramDma driver memulai eksekusi. Jika tidak, transfer DMA dapat dimulai sebelum kerangka kerja memanggil EvtProgramDma.
Jika DemandMode diatur ke FALSE, transfer DMA dapat dimulai sebelum kerangka kerja memanggil fungsi EvtProgramDma driver.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8 |
Versi KMDF minimum | 1.11 |
Header | wdfdmaenabler.h (termasuk Wdf.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk