PFREE_DMA_BUFFER_WITH_NOTIFICATION Rückruffunktion (hdaudio.h)

Die FreeDmaBufferWithNotification Routine gibt einen DMA-Puffer frei, der zuvor durch einen Aufruf von AllocateDmaBufferWithNotification zugeordnet wurde.

Der Funktionszeigertyp für eine FreeDmaBufferWithNotification-Routine wird wie folgt definiert.

Syntax

PFREE_DMA_BUFFER_WITH_NOTIFICATION PfreeDmaBufferWithNotification;

NTSTATUS PfreeDmaBufferWithNotification(
  [in] PVOID _context,
  [in] HANDLE Handle,
  [in] PMDL BufferMdl,
  [in] SIZE_T BufferSize
)
{...}

Parameter

[in] _context

Gibt den Kontextwert aus dem Context-Element der HDAUDIO_BUS_INTERFACE_V2-Struktur an.

[in] Handle

Handle, das die DMA-Engine identifiziert. Dieser Handlewert wurde aus einem vorherigen Aufruf von AllocateCaptureDmaEngine oder AllocateRenderDmaEngine abgerufen.

[in] BufferMdl

Ein Zeiger auf die Puffer-MDL. Dieser Wert wurde aus einem vorherigen Aufruf von AllocateDmaBufferWithNotification abgerufen.

[in] BufferSize

Die Größe des frei zu gebenden Puffers. Dieser Wert wurde aus einem vorherigen Aufruf von AllocateDmaBufferWithNotification abgerufen.

Rückgabewert

FreeDmaBufferWithNotification gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Andernfalls FreeDmaBufferWithNotification wird ein entsprechender Fehlercode zurückgegeben. In der folgenden Tabelle sind einige der möglichen Rückgabefehlercodes aufgeführt.

Rückgabecode Beschreibung
STATUS_UNSUCCESSFUL
Gibt an, dass der Aufrufer in einem zu hohen IRQL-Wert ausgeführt wird.
STATUS_INVALID_HANDLE
Gibt an, dass der Handle-Parameterwert ungültig ist.
STATUS_INVALID_DEVICE_REQUEST
Gibt an, dass sich der Stream nicht im Zurücksetzungszustand befindet oder dass derzeit kein Puffer für die DMA-Engine zugeordnet ist.

Hinweise

Die FreeDmaBufferWithNotification Routine wird zusammen mit der AllocateDmaBufferWithNotification-Routine verwendet. Diese beiden Routinen sind nur in der HDAUDIO_BUS_INTERFACE_V2 Version von HD Audio DDI verfügbar.

Aufrufer von FreeDmaBufferWithNotification müssen unter IRQL PASSIVE_LEVEL ausgeführt werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und späteren Windows-Versionen.
Zielplattform Desktop
Kopfzeile hdaudio.h (hdaudio.h einschließen)
IRQL PASSIVE_LEVEL

Weitere Informationen

AllocateCaptureDmaEngine

AllocateDmaBufferWithNotification

AllocateRenderDmaEngine

HDAUDIO_BUS_INTERFACE_V2