Поделиться через


Требования к USB4 ACPI

В этой статье описывается, как устройства USB4 взаимодействует с устройством расширенной конфигурации и питания (ACPI). Устройства ACPI определяются спецификацией расширенной конфигурации и интерфейса питания (ACPI).

_OSC (возможности операционной системы) для USB4

BIOS должна предоставлять управление диспетчеру подключений USB4 в рамках спецификации ACPI 6.4. Система должна предоставлять управление встроенной поддержкой USB4 в возможностях управления питанием операционной системы на уровне всей платформы (OSPM). Управление предоставляется, когда _OSC вызывается операционной системой с флагом запроса 0, а собственная поддержка USB4 — значением 1.

Кроме того, необходимо реализовать _OSC для USB . BIOS может запретить управление туннелированием PCIe по соображениям безопасности в соответствии с требуемыми политиками или параметрами пользователя. Однако туннелирование USB, туннелирование DisplayPort™ и междоменные подключения USB4 должны быть включены всегда. Диспетчер подключений переключит устройство в состояние сбоя, если туннелирование USB, туннелирование DisplayPort™ или междоменовые подключения отключены.

После реализации обеих возможностей, как описано выше, шина PCIe добавит идентификатор оборудования PCI\USB4_MS_CM в список идентификаторов оборудования для маршрутизаторов узлов, перечисленных в PCIe. Это позволит Plug and Play загрузить драйвер диспетчера подключений USB4.

Снимок экрана: идентификатор оборудования для маршрутизатора узла на основе PCIe.

Примечание

_OSC параметры встроенной поддержки USB4 или _OSC для USB не должны изменяться при переходе в режим гибернации (S4). При изменении таких параметров требуется полная перезагрузка.

Сопоставление портов (_DSD) для USB 3.x и PCIe

Чтобы программные стеки PCIe и USB 3.x устанавливали отношения питания с маршрутизатором узла USB4, требуются данные для конкретных устройств (_DSD) для туннелированных портов PCIe и USB 3.x. При отсутствии этого домен USB4 может выключить питание без координации с туннелированными устройствами PCIe и USB 3.x.

Примечание

Экземпляр главного интерфейса всегда должен заканчиваться 3-разрядной цифрой (0–7).

Ниже приведен пример сопоставления портов в исходном языке ACPI (ASL):

Scope (\_SB.PCI0)
{
  Device (NHI0) { } //Host interface instance must always end with a 3-bit digit (0-7). 
  Device (DSB0) //Tunneled PCIe port instance
  {
    Name (_DSD, Package () {
      ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Properties UUID 
      Package () {
        Package () { "usb4-host-interface", \_SB.PCI0.NHI0 },
        Package () { "usb4-port-number", PortInstance#}, // PortInstance# is unused and can be 0
      }
    })
  }
…
  Device (SS01) // e.g. Tunnel capable USB 3.x super speed port under RHUB
  {
    …
    Name (_DSD, Package () {
      ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"), //Device Properties UUID 
      Package () {
        Package () { "usb4-host-interface", \_SB.PCI0.NHI0 },
        Package () { "usb4-port-number", PortInstance#}, // PortInstance# is unused and can be 0
      }
    })
  }

Существующие требования к USB для описания возможностей USB-портов (_UPC) остаются неизменными для USB4.

Дополнительные требования к портам PCIe

Корневые порты PCIe, связанные с USB4, должны быть назначены как способные обрабатывать события горячего подключения в состоянии D3. Дополнительные сведения см. в разделах Определение корневых портов PCIe, поддерживающих горячее подключение в D3 и Определение внешних корневых портов PCIe.

Корневые порты PCIe должны быть соответствующим образом помечены как способные к пробуждению из D3Cold с помощью _S0W методов и _CRS, или _PRW . Дополнительные сведения о _S0W и _CRS, или _PRWсм. в спецификации ACPI и требованиях к встроенному ПО для D3cold.

Метод для конкретного устройства для предотвращения переключения ролей данных для подключений "узел — узел"

На некоторых платформах драйверы OPM системы Windows UCSI могут попытаться исправить роль данных USB в USB-подключении, запросив переключение роли данных USB с помощью команды UCSI "Set USB Operation Role" (SET_UOR). Однако это может повлиять на подключение типа "узел — узел", так как любая из сторон такого подключения может инициировать исправление роли. Чтобы решить эту проблему, платформа должна реализовать метод ACPI _DSM на устройстве UCSI, как показано ниже, чтобы утверждать, что исправление ролей данных в OPM UCSI должно быть отключено.

Метод, зависящий от USB-устройства (_DSM)

Чтобы отключить исправление ролей данных USB в UCSI OPM, Windows определяет метод для конкретного устройства (_DSM), который имеет функцию, описанную ниже.

Функция 4. Отключение коррекции роли данных USB в UCSI OPM

Аргументы

Arg0: UUID = 6F8398C2-7CA4-11E4-AD36-631042B5008F

Arg1: идентификатор редакции = 0

Arg2: индекс функции = 4

Arg3: пустой пакет (не используется)

Возвращаемое значение

Целое число, содержащее одно из следующих значений:

Элемент Тип объекта Описание:
Выключено 4-байтовый (32-разрядный) без знака Укажите, следует ли отключать исправление ролей в OPM UCSI.
0x00 (по умолчанию) — не отключайте исправление роли данных USB.
0x01 — отключите исправление роли данных USB в UCSI OPM.

При использовании этой функции метод _DSM должен отображаться под устройством UCSI.

Примечание

Индекс функции 0 каждого _DSM — это функция запроса, которая возвращает набор поддерживаемых индексов функций. Это всегда обязательно. Дополнительные сведения см. в разделе 9.1.1 _DSM (метод для конкретного устройства) в спецификации ACPI 6.4.

См. также раздел

Thunderbolt является товарным знаком корпорации Intel или ее дочерних компаний.

"USB4™" является товарным знаком ФОРУМА разработчиков USB и предназначен только для использования с продуктами, основанными на спецификации USB4™ и соответствующими этой спецификации.