Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La rutina HDAudioBdlIsr es el ISR que el controlador de bus de AUDIO HD llama cada vez que se produce una interrupción de IOC en la secuencia. Es un puntero de función de tipo PHDAUDIO_BDL_ISR, que se define de la manera siguiente.
Sintaxis
PHDAUDIO_BDL_ISR PhdaudioBdlIsr;
void PhdaudioBdlIsr(
[in] VOID *Context,
[in] ULONG InterruptBitMask
)
{...}
Parámetros
[in] Context
El controlador de BUS de HD Audio llama al ISR con el mismo valor de contexto que el cliente especificado en el parámetro de contexto de la llamada setupDmaEngineWithBdl anterior. Para obtener más información, consulte PSETUP_DMA_ENGINE_WITH_BDL.
[in] InterruptBitMask
El parámetro interruptBitMask contiene los bits del registro de estado de flujo del dispositivo del controlador de audio HD que indican el motivo de la interrupción. En la tabla siguiente se muestra el significado de los bits individuales en interruptBitMask.
Números de bits | Significado |
---|---|
31:5 | No usado. |
4 | Error del descriptor (DESE). Si se produce un error durante la captura de un descriptor de búfer, el controlador de audio HD establece el bit DESE en 1. |
3 | Error FIFO (FIFOE). Si se produce un error fiFO (una saturación en una secuencia de salida o una ejecución insuficiente en una secuencia de entrada), el controlador de audio HD establece el bit FIFOE en 1. |
2 | Estado de interrupción de finalización del búfer (BCIS). Si el bit de IOC se establece en 1 en el byte de comando del descriptor de búfer, el controlador de audio HD establece el bit BCIS en 1 después de procesar el último ejemplo de un búfer. |
1:0 | No usado. |
El controlador hd Audio bus establece los bits sin usar en cero. En lugar de suponer que se ha producido una interrupción de IOC, el ISR siempre debe comprobar el parámetro interruptBitMask para determinar si se ha producido un error de secuencia. Para obtener más información sobre los bits de estado de interrupción que se muestran en la tabla anterior, consulte la descripción de los registros de estado de la secuencia en la Especificación de audio de alta definición de Intel.
El tamaño de FIFO es el número máximo de bytes que el motor DMA puede contener en su búfer interno en cualquier momento .
Dependiendo de la implementación de hardware, el tamaño FIFO de un motor DMA puede ser estático o variar dinámicamente con cambios en el formato de secuencia. Para obtener más información sobre el tamaño de FIFO, consulte especificación de audio de alta definición de Intel.
Valor devuelto
Ninguno
Observaciones
El autor de la llamada debe asignar la memoria del búfer y BDL del grupo no paginado.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | hdaudio.h (incluya Hdaudio.h) |
irQL | DIRQL |