Поддержка WDDM для мониторов DisplayPort через USB4
В этой статье описывается, как драйвер WDDM может поддерживать мониторы DisplayPort, подключенные через USB4, начиная с Windows 11 (WDDM 3.0).
Требования
Графический стек Windows должен знать, что драйвер WDDM поддерживает USB4 во время запуска. Во время запуска система может проверить, поддерживает ли драйвер все необходимые требования, и сбой запуска драйвера, если она не предлагает такую поддержку, а не узнать об этом во время обнаружения горячей замены.
Драйвер отображения в режиме ядра (KMD) должен соответствовать следующим требованиям:
- Это должен быть драйвер WDDM 3.0 или более поздней версии.
- Он предоставляет дополнительное ограничение адаптера, указывающее на поддержку USB4.
- Все статические целевые объекты VidPn, предоставляемые драйвером, должны быть переданы как компоненты питания.
- Каждый динамический целевой объект USB4, подключенный к одному и тому же статичному целевому объекту, должен быть подключен к одному и тому же маршрутизатору узла; то есть USB4_Driver_ID члены DXGK_CONNECTION_USB4_INFO должны иметь одинаковое значение. В настоящее время подключение монитора USB4 DisplayPort к драйверам WDDM только для отображения или непрямого дисплея не поддерживается.
Добавлено ограничение драйвера поддержки USB4
Ограничение SupportUsb4Targets было добавлено в структуру DXGK_DISPLAY_DRIVERCAPS_EXTENSION , которую система запрашивает у драйвера во время запуска. Только драйверы WDDM 3.0 и более поздних версий должны устанавливать это значение и только в том случае, если драйвер соответствует всем перечисленным выше требованиям.
Отчеты о значениях данных конфигурации DisplayPort монитора USB4
DXGK_CONNECTION_CHANGE. MonitorConnect. MonitorConnectFlags добавлено поле .
ОС вызывает функцию DXGKDDI_QUERYCONNECTIONCHANGE KMD при каждом обнаружении изменения состояния соединителя. Если монитор DisplayPort подключен к указанному целевому объекту VidPn и подключен к адаптеру USB4 DP-IN, драйвер должен:
- Задайте DXGK_CONNECTION_CHANGE.Флаг MonitorConnectFlags.Usb4DisplayPortMonitor , указывающий, что этот монитор подключен к USB4.
- Заполните поля в DXGKARG_QUERYCONNECTIONCHANGE.pUsb4MonitorInfo.
Все статические целевые объекты VidPn передаются как компоненты PoFx
Чтобы обеспечить правильное управление питанием между графическими и USB-стеками, драйвер должен сообщать обо всех статических целевых объектах VidPn как компоненты PoFx через DxgkDdiQueryAdapterInfo при DXGKARG_QUERYADAPTERINFO.Тип— DXGKQAITYPE_NUMPOWERCOMPONENTS или DXGKQAITYPE_POWERCOMPONENTINFO.
Все динамические целевые объекты, созданные из одного статического целевого объекта VidPn
Мониторы USB4, подключенные к динамическим целевым объектам VidPn, поддерживаются, но все динамические целевые объекты VidPn USB4, подключенные к статическому целевому объекту VidPn, должны иметь одинаковые значения USB4_Driver_ID, т. е. подключены к одному и тому же маршрутизатору узла USB4.
Тест HLK системы
Драйвер должен пройти тест поддержки драйверов графики систем USB4, добавленный в комплект аппаратной лаборатории (HLK). Этот тест проверяет, что на ноутбуке с USB4 все графические драйверы (iGPU и dGPU) поддерживают функции USB4, если они предоставляют какие-либо целевые объекты.