Freigeben über


PFREE_DMA_BUFFER_WITH_NOTIFICATION Rückruffunktion (hdaudio.h)

Die FreeDmaBufferWithNotification Routine gibt einen DMA-Puffer frei, der zuvor durch einen Aufruf von AllocateDmaBufferWithNotificationzugewiesen 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

Behandeln, das das DMA-Modul identifiziert. Dieser Handlewert wurde aus einem vorherigen Aufruf von AllocateCaptureDmaEngine oder AllocateRenderDmaEngineabgerufen.

[in] BufferMdl

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

[in] BufferSize

Die Größe des Puffers, der freigegeben werden soll. Dieser Wert wurde aus einem vorherigen Aufruf von "AllocateDmaBufferWithNotification" abgerufen.

Rückgabewert

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

Rückgabecode Beschreibung
STATUS_UNSUCCESSFUL
Gibt an, dass der Aufrufer bei einer IRQL ausgeführt wird, die zu hoch ist.
STATUS_INVALID_HANDLE
Gibt an, dass der Handle Parameterwert ungültig ist.
STATUS_INVALID_DEVICE_REQUEST
Gibt an, dass sich der Datenstrom nicht im Zurücksetzungszustand befindet oder dass derzeit kein Puffer für das DMA-Modul zugeordnet ist.

Bemerkungen

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

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

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Verfügbar in Windows Vista und höheren Versionen von Windows.
Zielplattform- Desktop
Header- hdaudio.h (einschließlich Hdaudio.h)
IRQL- PASSIVE_LEVEL

Siehe auch

AllocateCaptureDmaEngine

AllocateDmaBufferWithNotification

AllocateRenderDmaEngine

HDAUDIO_BUS_INTERFACE_V2