struktur HDAUDIO_CODEC_RESPONSE (hdaudio.h)

Struktur HDAUDIO_CODEC_RESPONSE menentukan respons terhadap perintah codec atau respons yang tidak diminta dari codec.

Sintaks

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;

Anggota

Unsolicited

Menentukan nilai respons 32-bit yang tidak diminta yang terdiri dari nilai respons 26-bit dan nilai tag 6-bit.

Unsolicited.Response

Menentukan nilai respons 21-bit yang tidak diminta.

Unsolicited.SubTag

Menentukan SubTag 5-bit.

Unsolicited.Tag

Menentukan nilai tag 6-bit untuk respons yang tidak diminta.

Response

Menentukan nilai respons.

SDataIn

Menentukan alamat codec 4-bit (baris SDI) dari codec yang menghasilkan respons.

IsUnsolicitedResponse

Menentukan apakah respons tidak diminta. Jika 1, respons tidak diminta. Jika 0, respons diminta (yaitu, respons terhadap perintah codec).

HasFifoOverrun

Menentukan apakah overrun FIFO terjadi dalam buffer cincin input respons (RIRB). Jika 1, terjadi overrun FIFO. Jika 0, overrun FIFO tidak terjadi.

IsValid

Menentukan apakah respons valid. Jika 1, responsnya valid. Jika 0, itu tidak valid.

CompleteResponse

Menentukan ringkasan respons lengkap 64-bit yang terdiri dari respons 32-bit, alamat codec 4-bit, tiga bit status, dan 25 bit yang tidak digunakan (diatur ke nol). Nilai ini sebagian besar digunakan dalam pesan debug.

Keterangan

Setelah memanggil rutinitas TransferCodecVerbs , driver fungsi dapat menggunakan struktur HDAUDIO_CODEC_RESPONSE untuk mendekode respons terhadap perintah codec mereka. Perintah terkandung dalam struktur HDAUDIO_CODEC_TRANSFER yang diteruskan klien ke rutinitas ini sebagai parameter panggilan.

Panggilan balik untuk rutinitas RegisterEventCallback juga menggunakan struktur HDAUDIO_CODEC_RESPONSE.

Sebagian besar anggota struktur ini berisi nilai yang dihasilkan perangkat keras yang disalin driver bus langsung dari entri RIRB yang sesuai. Dua pengecualian adalah nilai anggota IsValid dan HasFifoOverrun , yang ditulis perangkat lunak driver bus ke struktur untuk menunjukkan status kesalahan respons. Untuk informasi tentang format entri RIRB, lihat Spesifikasi Audio Definisi Tinggi Intel di situs web Intel HD Audio .

Jika IsValid=0, salah satu hal berikut ini telah terjadi:

  • Jika HasFifoOverrun=1, RIRB FIFO meluap.
  • Jika HasFifoOverrun=0, codec gagal merespons.
25-bitfield yang tidak disebutkan namanya antara anggota UnsolicitedResponse dan HasFifoOverrun disediakan untuk ekspansi di masa mendatang. Pengontrol bus HD Audio saat ini menulis nol ke bidang ini.

Persyaratan

Persyaratan Nilai
Header hdaudio.h (termasuk Hdaudio.h)

Lihat juga

HDAUDIO_CODEC_TRANSFER

RegisterEventCallback

TransferCodecVerbs