DXGKDDI_I2C_RECEIVE_DATA_FROM_DISPLAY回呼函式 (dispmprt.h)
DxgkDdiI2CReceiveDataFromDisplay 會傳回從監視器中的 I2C 裝置接收的數據。
語法
DXGKDDI_I2C_RECEIVE_DATA_FROM_DISPLAY DxgkddiI2cReceiveDataFromDisplay;
NTSTATUS DxgkddiI2cReceiveDataFromDisplay(
[in] PVOID MiniportDeviceContext,
[in] D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
[in] ULONG SevenBitI2CAddress,
[in] ULONG Flags,
[in] ULONG DataLength,
[out] PVOID Data
)
{...}
參數
[in] MiniportDeviceContext
與顯示配接器相關聯的內容區塊句柄。 顯示迷你埠驅動程式的 DxgkDdiAddDevice 函式先前已將此句柄提供給 Microsoft DirectX 圖形核心子系統。
[in] VidPnTargetId
整數,識別顯示適配卡上的其中一個影片呈現目標。
[in] SevenBitI2CAddress
接收資料的 I2C 裝置位址。
[in] Flags
值,指定數據長度是否提供為I2C裝置所傳輸數據的一部分。 此參數必須設定為下列其中一個值。
價值 | 意義 |
---|---|
I2C_NO_FLAGS | DataLength 參數會提供數據長度。 I2C 裝置不會在傳輸的數據中提供數據長度。 |
I2C_DEVICE_TRANSMITS_DATA_LENGTH | 數據長度是由 I2C 裝置提供,做為它所傳輸數據的一部分。 I2C 裝置傳輸至少兩個字節。 傳輸的第二個字節的七個最小有效位包含中繼長度。 您可以將位元組新增至中繼長度,以計算在包含中繼長度的位元組之後傳輸的位元元組數目。 |
[in] DataLength
Data所指向之緩衝區的長度,以位元組為單位。
[out] Data
接收數據的緩衝區指標。 緩衝區可以在分頁記憶體中。
傳回值
DxgkDdiI2CReceiveDataFromDisplay如果成功,則會傳回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_RECEIVING_DATA | I2C 位址已成功傳輸,但從I2C裝置接收數據時發生錯誤。 |
STATUS_BUFFER_TOO_SMALL | DataLength 中提供的值小於所需的數據緩衝區大小。 只有當已設定I2C_DEVICE_TRANSMITS_DATA_LENGTH旗標時,這個傳回值才有意義。 |
言論
VidPnTargetId 所識別的影片呈現目標與顯示適配卡上的其中一個視訊輸出相關聯。 數據會從連線到該視訊輸出的監視器中的I2C裝置接收。
DxgkDdiI2CReceiveDataFromDisplay 函式負責發出 I2C 啟動條件的訊號、傳送 I2C 位址、從 I2C 裝置接收數據、傳送通知,以及發出停止條件的訊號。 如需 I2C 總線的詳細資訊,請參閱 Philips 半導體發佈的 I2C 總線規格。 此規格會定義通訊協定,以起始 I2C 通訊、透過 I2C 資料行讀取和寫入位元組,以及終止 I2C 通訊。 (某些語言可能無法使用此資源
和國家/地區。
DxgkDdiI2CReceiveDataFromDisplay需要從具有位址0x6F但允許從具有不同位址之 I2C 裝置接收數據的數據。
DxgkDdiI2CReceiveDataFromDisplay 允許封鎖顯示器迷你埠驅動程式或圖形硬體的另一部分是否使用指定的監視器 I2C 總線。 如果顯示迷你埠驅動程式使用 I2C 總線來傳送或接收高頻寬數位內容保護 (HDCP) 數據,也允許封鎖它。
如果顯示適配卡支援 HDCP,DxgkDdiI2CReceiveDataFromDisplay 如果裝置具有 HDCP 使用的 I2C 位址,就必須拒絕接收來自 I2C 裝置的數據。
DxgkDdiI2CReceiveDataFromDisplay 絕對不能從顯示器適配卡上的 I2C 裝置接收數據。 也就是說,此函式可以從連接到顯示適配卡之監視器中的I2C裝置接收數據,但無法從顯示適配卡本身的I2C裝置接收數據。
DxgkDdiI2CReceiveDataFromDisplay 應設為可分頁。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista |
目標平臺 | 桌面 |
標頭 | dispmprt.h (包括 Dispmprt.h) |
IRQL | PASSIVE_LEVEL |