HDAUDIO_CODEC_RESPONSE 구조체(hdaudio.h)

HDAUDIO_CODEC_RESPONSE 구조체는 코덱 명령에 대한 응답 또는 코덱의 원치 않는 응답을 지정합니다.

구문

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;

구성원

Unsolicited

Unsolicited.Response

Unsolicited.SubTag

Unsolicited.Tag

Response

SDataIn

IsUnsolicitedResponse

HasFifoOverrun

IsValid

CompleteResponse

32비트 응답, 4비트 코덱 주소, 3개의 상태 비트 및 25개의 사용되지 않는 비트(0으로 설정)로 구성된 전체 64비트 응답 요약을 지정합니다. 이 값은 주로 디버그 메시지에 사용됩니다.

설명

TransferCodecVerbs 루틴을 호출한 후 함수 드라이버는 HDAUDIO_CODEC_RESPONSE 구조를 사용하여 코덱 명령에 대한 응답을 디코딩할 수 있습니다. 명령은 클라이언트가 호출 매개 변수로 이 루틴에 전달하는 HDAUDIO_CODEC_TRANSFER 구조에 포함됩니다.

RegisterEventCallback 루틴에 대한 콜백도 HDAUDIO_CODEC_RESPONSE 구조를 사용합니다.

이 구조체의 대부분의 멤버는 버스 드라이버가 해당 RIRB 항목에서 직접 복사하는 하드웨어 생성 값을 포함합니다. 두 가지 예외는 버스 드라이버 소프트웨어가 응답의 오류 상태를 나타내기 위해 구조에 쓰는 IsValidHasFifoOverrun 멤버의 값입니다. RIRB 항목 형식에 대한 자세한 내용은 Intel HD Audio 웹 사이트의 Intel 고화질 오디오 사양을 참조하세요.

IsValid=0이면 다음 중 하나가 발생했습니다.

  • HasFifoOverrun=1이면 RIRB FIFO가 오버플로됩니다.
  • HasFifoOverrun=0이면 코덱이 응답하지 못했습니다.
UnsolicitedResponseHasFifoOverrun 멤버 간의 이름 없는 25비트 필드는 향후 확장을 위해 예약되어 있습니다. HD 오디오 버스 컨트롤러는 현재 이 필드에 0을 씁니다.

요구 사항

   
헤더 hdaudio.h(Hdaudio.h 포함)

참고 항목

HDAUDIO_CODEC_TRANSFER

RegisterEventCallback

TransferCodecVerbs