DXGKDDI_I2C_TRANSMIT_DATA_TO_DISPLAY 콜백 함수(dispmprt.h)
DXGKDDI_I2C_TRANSMIT_DATA_TO_DISPLAY 콜백 함수는 모니터의 I2C 디바이스로 데이터를 전송합니다.
구문
DXGKDDI_I2C_TRANSMIT_DATA_TO_DISPLAY DxgkddiI2cTransmitDataToDisplay;
NTSTATUS DxgkddiI2cTransmitDataToDisplay(
[in] PVOID MiniportDeviceContext,
[in] D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
[in] ULONG SevenBitI2CAddress,
[in] ULONG DataLength,
[in] const VOID *Data
)
{...}
매개 변수
[in] MiniportDeviceContext
디스플레이 어댑터와 연결된 컨텍스트 블록에 대한 핸들입니다. 디스플레이 미니포트 드라이버의 DxgkDdiAddDevice 함수는 이전에 이 핸들을 Microsoft DirectX 그래픽 커널 하위 시스템에 제공했습니다.
[in] VidPnTargetId
디스플레이 어댑터에서 비디오 프레젠테이션 대상 중 하나를 식별하는 정수입니다.
[in] SevenBitI2CAddress
데이터를 전송할 I2C 디바이스의 주소입니다.
[in] DataLength
전송할 데이터의 길이(바이트)입니다. 이 매개 변수는 1에서 64 사이여야 합니다.
[in] Data
전송할 데이터를 보유하는 버퍼에 대한 포인터입니다.
반환 값
DXGKDDI_I2C_TRANSMIT_DATA_TO_DISPLAY 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 Ntstatus.h 에 정의된 오류 코드 중 하나를 반환합니다. 다음 목록에서는 반환할 수 있는 몇 가지 가능한 오류 코드를 제공합니다.
| 반환 코드 | 설명 |
|---|---|
| STATUS_GRAPHICS_MONITOR_NOT_CONNECTED | VidPnTargetId로 식별된 비디오 출력에 연결된 모니터가 없습니다. |
| STATUS_GRAPHICS_I2C_NOT_SUPPORTED | VidPnTargetId로 식별된 비디오 출력에는 I2C 버스가 없습니다. |
| STATUS_GRAPHICS_I2C_DEVICE_DOES_NOT_EXIST | SevenBitI2CAddress에 제공된 I2C 주소를 승인한 디바이스가 없습니다. 이는 I2C 버스의 디바이스에 지정된 주소가 없거나 주소가 전송될 때 오류가 발생했음을 의미할 수 있습니다. |
| STATUS_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA | I2C 주소가 성공적으로 전송되었지만 I2C 디바이스로 데이터를 전송하는 동안 오류가 발생했습니다. |
설명
VidPnTargetId 로 식별된 비디오 현재 대상은 디스플레이 어댑터의 비디오 출력 중 하나와 연결됩니다. 데이터는 해당 비디오 출력에 연결된 모니터의 I2C 디바이스로 전송됩니다.
DxgkDdiI2CTransmitDataToDisplay 는 I2C 시작 조건 신호를 보내고, I2C 주소를 보내고, 버퍼에 데이터를 보내고, 수신기에서 승인을 확인하고, 중지 조건을 신호하는 역할을 담당합니다. I2C 버스에 대한 자세한 내용은 필립스 반도체가 발행한 I2C 버스 사양 을 참조하세요. 이 사양은 I2C 통신을 시작하고, I2C 데이터 줄을 통해 바이트를 읽고 쓰고, I2C 통신을 종료하기 위한 프로토콜을 정의합니다.
DxgkDdiI2CTransmitDataToDisplay 는 주소 0x6E 있지만 다른 주소가 있는 I2C 디바이스로 데이터 전송을 거부할 수 있는 I2C 디바이스로 데이터를 전송하는 데 필요합니다.
디스플레이 미니포트 드라이버 또는 그래픽 하드웨어의 다른 부분이 지정된 모니터의 I2C 버스를 사용하는 경우 DxgkDdiI2CTransmitDataToDisplay 를 차단할 수 있습니다. 디스플레이 미니포트 드라이버가 I2C 버스를 사용하여 HDCP(High-bandwidth Digital Content Protection) 데이터를 보내거나 받는 경우에도 차단할 수 있습니다.
디스플레이 어댑터가 HDCP를 지원하는 경우 디바이스에 HDCP에서 사용되는 I2C 주소가 있는 경우 DxgkDdiI2CTransmitDataToDisplay 함수는 I2C 디바이스로의 데이터 전송을 거부해야 합니다.
DxgkDdiI2CTransmitDataToDisplay 는 디스플레이 어댑터의 I2C 디바이스로 데이터를 전송해서는 안 됩니다. 즉, 이 함수는 디스플레이 어댑터에 연결된 모니터의 I2C 디바이스에 데이터를 전송할 수 있지만 디스플레이 어댑터 자체에 있는 I2C 디바이스에는 데이터를 전송할 수 없습니다.
DxgkDdiI2CTransmitDataToDisplay 를 페이징 가능으로 만들어야 합니다.
요구 사항
| 지원되는 최소 클라이언트 | Windows Vista |
| 대상 플랫폼 | 데스크톱 |
| 머리글 | dispmprt.h(Dispmprt.h 포함) |
| IRQL | PASSIVE_LEVEL |
추가 정보
피드백
다음에 대한 사용자 의견 제출 및 보기