Partilhar via


PFREE_DMA_BUFFER_WITH_NOTIFICATION função de retorno de chamada (hdaudio.h)

A rotina de FreeDmaBufferWithNotification libera um buffer de DMA que foi alocado anteriormente por uma chamada para AllocateDmaBufferWithNotification.

O tipo de ponteiro de função para uma rotina FreeDmaBufferWithNotification é definido da seguinte maneira.

Sintaxe

PFREE_DMA_BUFFER_WITH_NOTIFICATION PfreeDmaBufferWithNotification;

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

Parâmetros

[in] _context

Especifica o valor de contexto do membro contextual da estrutura de HDAUDIO_BUS_INTERFACE_V2.

[in] Handle

Identificador que identifica o mecanismo DMA. Esse valor de identificador foi obtido de uma chamada anterior para AllocateCaptureDmaEngine ou AllocateRenderDmaEngine.

[in] BufferMdl

Um ponteiro para o MDL do buffer. Esse valor foi obtido de uma chamada anterior para AllocateDmaBufferWithNotification.

[in] BufferSize

O tamanho do buffer a ser liberado. Esse valor foi obtido de uma chamada anterior para AllocateDmaBufferWithNotification.

Valor de retorno

FreeDmaBufferWithNotification retornará STATUS_SUCCESS se a chamada for bem-sucedida. Caso contrário, FreeDmaBufferWithNotification retornará um código de erro apropriado. A tabela a seguir mostra alguns dos possíveis códigos de erro de retorno.

Código de retorno Descrição
STATUS_UNSUCCESSFUL
Indica que o chamador está em execução em um IRQL que é muito alto.
STATUS_INVALID_HANDLE
Indica que o identificador valor do parâmetro é inválido.
STATUS_INVALID_DEVICE_REQUEST
Indica que o fluxo não está no estado de redefinição ou que nenhum buffer está alocado no momento para o mecanismo de DMA.

Observações

A rotina FreeDmaBufferWithNotification é usada junto com a rotina AllocateDmaBufferWithNotification. Essas duas rotinas estão disponíveis apenas na versão HDAUDIO_BUS_INTERFACE_V2 da DDI de áudio HD.

Os chamadores de FreeDmaBufferWithNotification devem estar em execução no PASSIVE_LEVEL IRQL.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows Vista e versões posteriores do Windows.
da Plataforma de Destino Área de trabalho
cabeçalho hdaudio.h (inclua Hdaudio.h)
IRQL PASSIVE_LEVEL

Consulte também

allocateCaptureDmaEngine

AllocateDmaBufferWithNotification

AllocateRenderDmaEngine

HDAUDIO_BUS_INTERFACE_V2