HDAUDIO_CODEC_RESPONSE structure (hdaudio.h)
La structure HDAUDIO_CODEC_RESPONSE spécifie une réponse à une commande de codec ou une réponse non sollicitée d’un codec.
Syntaxe
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;
Membres
Unsolicited
Spécifie une valeur de réponse non sollicitée 32 bits qui se compose d’une valeur de réponse 26 bits et d’une valeur d’étiquette 6 bits.
Unsolicited.Response
Spécifie une valeur de réponse non sollicitée 21 bits.
Unsolicited.SubTag
Spécifie une sous-balise 5 bits.
Unsolicited.Tag
Spécifie une valeur de balise 6 bits pour une réponse non sollicitée.
Response
Spécifie une valeur de réponse.
SDataIn
Spécifie l’adresse de codec 4 bits (ligne SDI) du codec qui génère la réponse.
IsUnsolicitedResponse
Spécifie si la réponse n’est pas sollicitée. Si la valeur est 1, la réponse n’est pas sollicitée. Si la valeur est 0, la réponse est sollicitée (c’est-à-dire une réponse à une commande de codec).
HasFifoOverrun
Spécifie si un dépassement FIFO s’est produit dans la mémoire tampon d’anneau d’entrée de réponse (RIRB). Si la valeur est 1, un dépassement FIFO s’est produit. Si la valeur est 0, un dépassement FIFO n’a pas eu lieu.
IsValid
Spécifie si la réponse est valide. Si la valeur est 1, la réponse est valide. Si la valeur est 0, elle n’est pas valide.
CompleteResponse
Spécifie un résumé complet de la réponse 64 bits qui se compose d’une réponse 32 bits, d’une adresse de codec 4 bits, de trois bits status et de 25 bits inutilisés (défini sur zéro). Cette valeur est principalement utilisée dans les messages de débogage.
Remarques
Après avoir appelé la routine TransferCodecVerbs , les pilotes de fonction peuvent utiliser la structure HDAUDIO_CODEC_RESPONSE pour décoder les réponses à leurs commandes de codec. Les commandes sont contenues dans les structures HDAUDIO_CODEC_TRANSFER que les clients passent à cette routine en tant que paramètres d’appel.
Le rappel de la routine RegisterEventCallback utilise également la structure HDAUDIO_CODEC_RESPONSE.
La plupart des membres de cette structure contiennent des valeurs générées par le matériel que le pilote de bus copie directement à partir de l’entrée RIRB correspondante. Les deux exceptions sont les valeurs des membres IsValid et HasFifoOverrun, que le logiciel du pilote de bus écrit dans la structure pour indiquer l’erreur status de la réponse. Pour plus d’informations sur le format d’entrée RIRB, consultez la spécification audio haute définition Intel sur le site web d’Intel HD Audio .
Si IsValid=0, l’une des opérations suivantes s’est produite :
- Si HasFifoOverrun=1, le FIFO RIRB a débordé.
- Si HasFifoOverrun=0, le codec n’a pas pu répondre.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | hdaudio.h (inclure Hdaudio.h) |