本文說明 WDDM 驅動程式如何支援從 Windows 11 (WDDM 3.0) 開始透過 USB4 連線的 DisplayPort 監視器。
需求
Windows 圖形堆疊必須知道 WDDM 驅動程式在啟動時支援 USB4。 在啟動時,系統可以確認驅動程式是否支援所有必要的需求,如果驅動程式未提供這類支援,則不啟動驅動程式,而不是等到熱插拔偵測時才發現。
核心模式顯示驅動程式 (KMD) 必須符合下列需求:
- 它必須是 WDDM 3.0 或更新版本的驅動程式。
- 它會公開新增的配接器蓋,以指出 USB4 支援。
- 驅動程式公開的所有靜態 VidPn 目標都必須報告為電源元件。
- 連接到同一靜態目標的每個USB4動態目標都必須連接到同一主機路由器;也就是說,他們的 DXGK_CONNECTION_USB4_INFOUSB4_Driver_ID 成員必須具有相同的價值。 目前,不支援將 USB4 DisplayPort 監視器連接至僅顯示模式或間接顯示模式的 WDDM 驅動程式。
新增 USB4 支援驅動程式上限
SupportUsb4Targets 功能已被新增至系統在啟動時從驅動程式查詢的 DXGK_DISPLAY_DRIVERCAPS_EXTENSION 結構內。 只有 WDDM 3.0 和更新版本的驅動程式應該設定此值,而且只有在驅動程式符合所有先前列出的需求時。
報告 USB4 螢幕的 DisplayPort 配置數據值
DXGK_CONNECTION_CHANGE.監視器連線.MonitorConnectFlags欄位已新增。
每當偵測到連接器狀態變更時,OS 都會呼叫 KMD 的 DXGKDDI_QUERYCONNECTIONCHANGE 函式。 當 DisplayPort 監視器已連線到指定的 VidPn 目標,並連線到 USB4 DP-IN 配接器時,驅動程式應該:
- 設定 DXGK_CONNECTION_CHANGE。MonitorConnectFlags.Usb4DisplayPortMonitor 旗標,以指出此監視器是 USB4 連線的監視器。
- 填寫 DXGKARG_QUERYCONNECTIONCHANGE 中 pUsb4MonitorInfo 的欄位。
所有靜態 VidPn 目標都被報告為 PoFx 元件
若要在圖形和 USB 堆疊之間啟用正確的電源管理,當 DXGKARG_QUERYADAPTERINFO.類型 為 DXGKQAITYPE_NUMPOWERCOMPONENTS 或 DXGKQAITYPE_POWERCOMPONENTINFO 時,驅動程式必須透過 DxgkDdiQueryAdapterInfo 將所有靜態 VidPn 目標報告為 PoFx 元件。
從相同的靜態 VidPn 目標建立的所有動態目標
支援連線到動態 VidPn 目標的 USB4 顯示器,但連線到靜態 VidPn 目標的所有 USB4 動態 VidPn 目標都必須具有相同的USB4_Driver_ID值,即連線到相同的 USB4 主機路由器。
系統 HLK 測試
驅動程式必須通過新增至硬體實驗室套件 (HLK) 的 USB4 系統圖形驅動程式支援 測試。 此測試會驗證在具有 USB4 的膝上型電腦上,所有圖形驅動程式 (iGPU 和 dGPU) 都支援 USB4 功能(如果它們公開任何目標)。