structure HDAUDIO_CODEC_RESPONSE (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 1, la réponse n’est pas sollicitée. Si 0, la réponse est sollicitée (autrement dit, 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 1, un dépassement fiFO s’est produit. Si 0, un dépassement fiFO n’a pas eu lieu.
IsValid
Spécifie si la réponse est valide. Si 1, la réponse est valide. Si 0, il n’est pas valide.
CompleteResponse
Spécifie un résumé complet de réponse 64 bits qui se compose d’une réponse 32 bits, d’une adresse de codec 4 bits, de trois bits d’état 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 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 de l'IsValid et membres HasFifoOverrun, que le logiciel du pilote de bus écrit dans la structure pour indiquer l’état d’erreur de la réponse. Pour plus d’informations sur le format d’entrée RIRB, consultez la spécification d’Intel High Definition Audio sur le site web 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.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | hdaudio.h (include Hdaudio.h) |