HDAUDIO_CODEC_RESPONSE Struktur (hdaudio.h)
Die HDAUDIO_CODEC_RESPONSE-Struktur gibt entweder eine Antwort auf einen Codec-Befehl oder eine unerwünschte Antwort von einem Codec an.
Syntax
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;
Angehörige
Unsolicited
Gibt einen nicht angeforderten 32-Bit-Antwortwert an, der aus einem 26-Bit-Antwortwert und einem 6-Bit-Tagwert besteht.
Unsolicited.Response
Gibt einen unaufgefragten 21-Bit-Antwortwert an.
Unsolicited.SubTag
Gibt ein 5-Bit-SubTag an.
Unsolicited.Tag
Gibt einen 6-Bit-Tagwert für eine nicht angeforderte Antwort an.
Response
Gibt einen Antwortwert an.
SDataIn
Gibt die 4-Bit-Codec-Adresse (SDI-Zeile) des Codecs an, der die Antwort generiert.
IsUnsolicitedResponse
Gibt an, ob die Antwort nicht angefordert wird. Wenn 1, wird die Antwort nicht angefordert. Wenn 0, wird die Antwort angefordert (d. a. eine Antwort auf einen Codec-Befehl).
HasFifoOverrun
Gibt an, ob eine FIFO-Überlauf im Antworteingaberingpuffer (RIRB) aufgetreten ist. Bei 1 ist ein FIFO-Überlauf aufgetreten. Wenn 0, tritt kein FIFO-Überlauf auf.
IsValid
Gibt an, ob die Antwort gültig ist. Wenn 1, ist die Antwort gültig. Wenn 0, ist sie ungültig.
CompleteResponse
Gibt eine vollständige 64-Bit-Antwortzusammenfassung an, die aus einer 32-Bit-Antwort, einer 4-Bit-Codec-Adresse, drei Statusbits und 25 nicht verwendeten Bits besteht (auf Null festgelegt). Dieser Wert wird hauptsächlich in Debugnachrichten verwendet.
Bemerkungen
Nach dem Aufrufen der TransferCodecVerbs Routine können Funktionstreiber die HDAUDIO_CODEC_RESPONSE Struktur verwenden, um die Antworten auf ihre Codecbefehle zu decodieren. Die Befehle sind in den HDAUDIO_CODEC_TRANSFER Strukturen enthalten, die Clients als Aufrufparameter an diese Routine übergeben.
Der Rückruf für die RegisterEventCallback Routine verwendet auch die HDAUDIO_CODEC_RESPONSE Struktur.
Die meisten Member dieser Struktur enthalten hardwaregenerierte Werte, die der Bustreiber direkt aus dem entsprechenden RIRB-Eintrag kopiert. Die beiden Ausnahmen sind die Werte der IsValid und HasFifoOverrun Member, die die Bustreibersoftware in die Struktur schreibt, um den Fehlerstatus der Antwort anzugeben. Informationen zum RIRB-Eintragsformat finden Sie in der Intel High Definition Audio Specification auf der Website Intel HD Audio.
Wenn IsValid=0 ist, ist eine der folgenden Aktionen aufgetreten:
- Wenn HasFifoOverrun=1, überlaufen die RIRB FIFO.
- Wenn HasFifoOverrun=0 reagierte, konnte der Codec nicht reagieren.
Anforderungen
Anforderung | Wert |
---|---|
Header- | hdaudio.h (einschließlich Hdaudio.h) |