Requisitos de ACPI do USB4
Este artigo descreve como os dispositivos USB4 fazem interface com um dispositivo ACPI (Interface de Energia e Configuração Avançada). Os dispositivos ACPI são definidos pela Especificação de ACPI (Interface de Energia e Configuração Avançada).
_OSC (funcionalidades do sistema operacional) para USB4
O BIOS deve conceder controle ao gerenciador de conexões USB4 de acordo com a especificação de ACPI 6.4. O sistema deve conceder o controle de suporte USB4 nativo em funcionalidades de OSPM (gerenciamento de energia do sistema operacional) em toda a plataforma. O controle é concedido quando _OSC é chamado pelo sistema operacional com o Sinalizador de Consulta definido como 0 e o Suporte nativo de USB4 definido como 1.
Além disso, _OSC para USB também devem ser implementado. O BIOS pode não permitir o controle sobre o túnel de PCIe por motivos de segurança de acordo com as políticas exigidas ou as configurações do usuário. No entanto, o túnel de USB, o túnel DisplayPort™ e as conexões USB4 de interdomínio devem estar sempre habilitados. O gerenciador de conexões colocará o dispositivo em um estado com falha se o túnel de USB, o túnel DisplayPort™ ou as conexões de interdomínio estiverem desabilitadas.
Depois que ambas as funcionalidades forem implementadas conforme descrito acima, o barramento PCIe adicionará uma ID de hardware de "PCI\USB4_MS_CM" à lista de IDs de hardware para roteadores de host enumerados de PCIe. Isso permitirá que Plug and Play carreguem o driver do gerenciador de conexões USB4.
Observação
Configurações de _OSC para suporte nativo de USB4 ou _OSC para USB não devem ser alteradas em uma transição S4 (hibernação). Uma reinicialização completa é necessária quando essas configurações são alteradas.
Mapeamento de porta (_DSD) para USB 3.x e PCIe
Para que as pilhas de software PCIe e USB 3.x estabeleçam relações de energia com o roteador de host USB4, são necessários dados específicos do dispositivo (_DSD) para as portas PCIe e USB 3.x em túnel. Na ausência disso, o domínio USB4 pode desligar sem coordenar com os dispositivos PCIe e USB 3.x em túnel.
Observação
A instância da interface do host sempre deve terminar com um dígito de 3 bits (0-7).
Veja a seguir um exemplo de mapeamento de porta no ASL (linguagem de origem de ACPI):
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
}
})
}
Os requisitos de USB existentes para descrever os recursos de porta USB (_UPC) permanecem inalterados para USB4.
Requisitos adicionais para portas PCIe
As portas raiz PCIe associadas ao USB4 devem ser designadas como capazes de lidar com eventos de acesso frequente enquanto estiverem no estado D3. Para obter mais informações, consulte Identificando portas raiz PCIe com suporte a acesso frequente em D3 e Identificando portas raiz PCIe com exposição externa.
As portas raiz PCIe devem ser marcadas adequadamente como capazes de ativar após D3Cold usando os métodos _S0W
, _CRS
ou _PRW
. Para obter mais informações sobre _S0W
e _CRS
ou _PRW
, consulte a especificação de ACPI e os requisitos de firmware para D3cold.
Método específico do dispositivo para impedir a troca de função de dados para conexões host a host
Em determinadas plataformas, os drivers OPM UCSI do sistema Windows podem tentar corrigir a função de dados USB em uma conexão USB solicitando uma troca de função de dados USB usando o comando UCSI "Definir função de operação USB" (SET_UOR
). No entanto, isso pode afetar a conexão host a host, pois ambos os lados dessa conexão podem iniciar essa correção de função. Para resolver esse problema, a plataforma deve implementar o método ACPI _DSM no dispositivo UCSI da seguinte maneira para alegar que a correção de função de dados no UCSI OPM deve ser desabilitada.
Método específico do dispositivo USB (_DSM)
Para desabilitar a correção de função de dados USB no UCSI OPM, o Windows define um método específico do dispositivo (_DSM) que tem a função descrita abaixo.
Função 4: desabilitar a correção da função de dados USB no UCSI OPM
Argumentos
Arg0: UUID = 6F8398C2-7CA4-11E4-AD36-631042B5008F
Arg1: ID de revisão = 0
Arg2: índice de função = 4
Arg3: pacote vazio (não usado)
Retornar valor
Um número inteiro contendo um dos seguintes valores:
Elemento | Tipo de Objeto | Descrição |
---|---|---|
Desabilitado | longo sem sinal de 4 bytes (32 bits) | Especifique se a correção de função no UCSI OPM deve ser desabilitada. 0x00 (Padrão) – não desabilite a correção da função de dados USB. 0x01 – Desabilite a correção da função de dados USB no UCSI OPM. |
Quando essa função é usada, o método _DSM deve aparecer no dispositivo UCSI.
Observação
O índice de função 0 de cada _DSM é uma função de consulta que retorna o conjunto de índices de função com suporte. Ele é sempre necessário. Para obter mais informações, consulte a seção 9.1.1 _DSM (Método Específico do Dispositivo), na especificação de ACPI 6.4.
Confira também
- Barramento Serial Universal 4
- Introdução ao Gerenciador de Conexões do USB4 no Windows
- Detalhes de design e requisitos gerais de USB4
- Requisitos do gerenciamento de energia de USB4
- Conexões de interdomínio do USB4
- Teste necessário do USB4
- Depuração e solução de problemas do USB4
Thunderbolt é uma marca registrada da Intel Corporation ou de suas subsidiárias.
"USB4™" é uma marca registrada do USB Implementers Forum e deve ser usada apenas com produtos baseados na especificação USB4™ e em conformidade com ela.