estructura HDAUDIO_CODEC_RESPONSE (hdaudio.h)
La estructura HDAUDIO_CODEC_RESPONSE especifica una respuesta a un comando de códec o una respuesta no solicitada de un códec.
Sintaxis
typedef struct _HDAUDIO_CODEC_RESPONSE {
union {
struct {
union {
struct {
ULONG Response : 21;
ULONG SubTag : 5;
ULONG Tag : 6;
} Unsolicited;
ULONG Response;
};
ULONG SDataIn : 4;
ULONG IsUnsolicitedResponse : 1;
ULONG HasFifoOverrun : 1;
ULONG IsValid : 1;
};
ULONGLONG CompleteResponse;
};
} HDAUDIO_CODEC_RESPONSE, *PHDAUDIO_CODEC_RESPONSE;
Miembros
Unsolicited
Especifica un valor de respuesta no solicitado de 32 bits que consta de un valor de respuesta de 26 bits y un valor de etiqueta de 6 bits.
Unsolicited.Response
Especifica un valor de respuesta no solicitado de 21 bits.
Unsolicited.SubTag
Especifica una SubTag de 5 bits.
Unsolicited.Tag
Especifica un valor de etiqueta de 6 bits para una respuesta no solicitada.
Response
Especifica un valor de respuesta.
SDataIn
Especifica la dirección de códec de 4 bits (línea SDI) del códec que genera la respuesta.
IsUnsolicitedResponse
Especifica si la respuesta no está solicitada. Si es 1, la respuesta no está solicitada. Si es 0, se solicita la respuesta (es decir, una respuesta a un comando de códec).
HasFifoOverrun
Especifica si se ha producido una saturación de FIFO en el búfer de anillo de entrada de respuesta (RIRB). Si es 1, se produjo una saturación de FIFO. Si es 0, no se produjo una saturación de FIFO.
IsValid
Especifica si la respuesta es válida. Si es 1, la respuesta es válida. Si es 0, no es válido.
CompleteResponse
Especifica un resumen completo de respuesta de 64 bits que consta de una respuesta de 32 bits, una dirección de códec de 4 bits, tres bits de estado y 25 bits sin usar (establecido en cero). Este valor se usa principalmente en los mensajes de depuración.
Comentarios
Después de llamar a la rutina TransferCodecVerbs , los controladores de función pueden usar la estructura HDAUDIO_CODEC_RESPONSE para descodificar las respuestas a sus comandos de códec. Los comandos se encuentran en las estructuras de HDAUDIO_CODEC_TRANSFER que los clientes pasan a esta rutina como parámetros de llamada.
La devolución de llamada de la rutina RegisterEventCallback también usa la estructura HDAUDIO_CODEC_RESPONSE.
La mayoría de los miembros de esta estructura contienen valores generados por hardware que el controlador de bus copia directamente desde la entrada RIRB correspondiente. Las dos excepciones son los valores de los miembros IsValid y HasFifoOverrun , que el software del controlador de bus escribe en la estructura para indicar el estado de error de la respuesta. Para obtener información sobre el formato de entrada RIRB, consulte La especificación de audio de alta definición de Intel en el sitio web de Intel HD Audio .
Si IsValid=0, se ha producido una de las siguientes acciones:
- Si HasFifoOverrun=1, el FIFO RIRB se desbordó.
- Si HasFifoOverrun=0, el códec no pudo responder.
Requisitos
Requisito | Valor |
---|---|
Header | hdaudio.h (incluye Hdaudio.h) |