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 中定義的其中一個錯誤碼。 下列清單提供一些可傳回的可能錯誤碼。
傳回碼 | Description |
---|---|
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) 數據,也允許封鎖它。
如果顯示適配卡支援 HDCP,則如果裝置有 HDCP 所使用的 I2C 位址, DxgkDdiI2CTransmitDataToDisplay 函式必須拒絕將數據傳送至 I2C 裝置。
DxgkDdiI2CTransmitDataToDisplay 絕對不能將數據傳輸到顯示器適配卡上的 I2C 裝置。 也就是說,此函式可以將數據傳送至連接到顯示適配卡的監視器中的I2C裝置,但無法傳輸到顯示適配卡本身的I2C裝置。
DxgkDdiI2CTransmitDataToDisplay 應設為可分頁。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
目標平台 | 桌面 |
標頭 | dispmprt.h (包括 Dispmprt.h) |
IRQL | PASSIVE_LEVEL |