Partilhar via


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

A rotina HDAudioBdlIsr é a ISR que o motorista do barramento de áudio HD chama sempre que ocorre uma interrupção do COI no fluxo. É um ponteiro de função do tipo PHDAUDIO_BDL_ISR, que é definido da seguinte maneira.

Sintaxe

PHDAUDIO_BDL_ISR PhdaudioBdlIsr;

void PhdaudioBdlIsr(
  [in] VOID *Context,
  [in] ULONG InterruptBitMask
)
{...}

Parâmetros

[in] Context

O driver do barramento de áudio HD chama o ISR com o mesmo valor de contexto especificado pelo cliente no parâmetro de contexto da chamada SetupDmaEngineWithBdl anterior. Para obter mais informações, consulte PSETUP_DMA_ENGINE_WITH_BDL.

[in] InterruptBitMask

O parâmetro interruptBitMask contém os bits do registro de status de fluxo do dispositivo do controlador de áudio HD que indicam o motivo da interrupção. A tabela a seguir mostra o significado dos bits individuais em interruptBitMask.

Números de bits Significado
31:5 Utilizadas.
4 Erro do descritor (DESE). Se ocorrer um erro durante a busca de um descritor de buffer, o controlador de áudio HD definirá o bit DESE como 1.
3 ERRO FIFO (FIFOE). Se ocorrer um erro FIFO (uma sobrecarga em um fluxo de saída ou uma subexecução em um fluxo de entrada), o controlador de áudio HD definirá o bit FIFOE como 1.
2 Status de interrupção da conclusão do buffer (BCIS). Se o bit IOC estiver definido como 1 no byte de comando do descritor de buffer, o controlador de áudio HD definirá o bit BCIS como 1 depois que o último exemplo de um buffer for processado.
1:0 Utilizadas.

O driver do barramento de áudio HD define os bits não utilizados como zero. Em vez de assumir que ocorreu uma interrupção do COI, o ISR sempre deve verificar o parâmetro interruptBitMask para determinar se ocorreu um erro de fluxo. Para obter mais informações sobre os bits de status de interrupção mostrados na tabela anterior, consulte a descrição dos registros de status do fluxo na Especificação de Áudio de Alta Definição da Intel.

O tamanho fifo é o número máximo de bytes que o mecanismo DMA pode manter em seu buffer interno a qualquer momento.

Dependendo da implementação de hardware, o tamanho FIFO de um mecanismo DMA pode ser estático ou variar dinamicamente com alterações no formato de fluxo. Para obter mais informações sobre o tamanho do FIFO, consulte a Especificação de Áudio de Alta Definição da Intel.

Valor de retorno

Nenhum

Observações

O chamador deve alocar a memória do buffer e o BDL do pool nãopagado.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho hdaudio.h (inclua Hdaudio.h)
IRQL DIRQL

Consulte também

PSETUP_DMA_ENGINE_WITH_BDL

hdaudio.h