Freigeben über


WDF_DMA_SYSTEM_PROFILE_CONFIG-Struktur (wdfdmaenabler.h)

[Gilt nur für KMDF]

Die WDF_DMA_SYSTEM_PROFILE_CONFIG-Struktur beschreibt die hardwarespezifischen Einstellungen im Zusammenhang mit einem DMA-Enabler im Systemmodus.

Syntax

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;

Member

Size

Die Größe dieser Struktur in Bytes.

DemandMode

Gibt an, dass die Übertragung vom DMA des Geräts gesteuert wird.
Anforderungszeile, die im DmaDescriptor-Member dieser Struktur angegeben ist. Weitere Informationen finden Sie unter Hinweise.

LoopedTransfer

Gibt an, dass der DMA-Adapter die angegebene Übertragung durchlaufen soll, wenn die Länge größer als die Größe des Puffers ist.

DmaWidth

Die Breite des durch DeviceAddress angegebenen Registers. Mögliche Werte sind Width8Bits, Width16Bits, Width32Bits und Width64Bits.

DeviceAddress

Die übersetzte Adresse an oder von der der DMA-Controller übertragen wird. Der Treiber kann einen Offset von dieser Basisadresse für jede Transaktion angeben, indem er WdfDmaTransactionSetDeviceAddressOffset aufruft.

DmaDescriptor

Der übersetzte Ressourcendeskriptor für den DMA-Kanal, der dem Gerät während evtDevicePrepareHardware zugewiesen wurde. Dadurch wird die DMA-Anforderungszeile für den Adapter bereitgestellt.

Hinweise

Der Treiber stellt diese Struktur für WdfDmaEnablerConfigureSystemProfile bereit, nachdem ein Systemprofil-DMA-Enabler erstellt wurde.

In der Regel legen Treiber DemandMode auf TRUE fest. Die EvtProgramDma-Rückruffunktion des Treibers programmiert dann das Gerät, um seine DMA-Anforderungszeile zu bestätigen und die Übertragung zu initiieren. In diesem Fall kann die Übertragung beginnen, während EvtProgramDma noch ausgeführt wird.

Der Treiber muss sicherstellen, dass die DMA-Anforderungszeile des Geräts nicht bestätigt wird, bevor die EvtProgramDma-Rückruffunktion des Treibers mit der Ausführung beginnt. Andernfalls kann die DMA-Übertragung beginnen, bevor das Framework EvtProgramDma aufruft.

Wenn DemandMode auf FALSE festgelegt ist, kann die DMA-Übertragung beginnen, bevor das Framework die EvtProgramDma-Funktion des Treibers aufruft.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8
KMDF-Mindestversion 1.11
Kopfzeile wdfdmaenabler.h (einschließen von Wdf.h)

Weitere Informationen

WDF_DMA_SYSTEM_PROFILE_CONFIG_INIT

WdfDmaEnablerConfigureSystemProfile