Compartilhar via


Método Device-Specific USB (_DSM)

Para dar suporte à configuração específica da classe de dispositivo do subsistema USB, o Windows define um método Device-Specific (_DSM) que tem as funções descritas neste artigo.

A função de índice 0 de cada _DSM é uma função de consulta que retorna o conjunto de índices de função suportados e é sempre obrigatória. Para obter mais informações, consulte a seção 9.14.1, "_DSM (Método Específico do Dispositivo)", na especificação ACPI 5.0.

Função 1: processamento pós-redefinição para controladores de dupla função

Quando essa função é usada, o método _DSM deve aparecer no dispositivo do controlador USB.

Os parâmetros do método de controle _DSM para a função de processamento após redefinição para controladores USB de função dupla são os seguintes:

Argumentos (Função 1)

  • Arg0: UUID = ce2ee385-00e6-48cb-9f05-2edb927c4899
  • Arg1: ID de revisão = 0
  • Arg2: índice de função = 1
  • Arg3: pacote vazio (não usado)

Retorno (Função 1)

Nenhum

Os drivers de caixa de entrada do Windows só dão suporte a controladores USB no modo de host. Após cada redefinição do controlador, o driver USB invocará o índice de função _DSM 1 para executar qualquer inicialização específica do controlador necessária para configurar o controlador USB para operar no modo de host.

Função 2: Identificação de tipo de porta

Quando essa função é usada, o método _DSM deve aparecer no dispositivo de porta USB.

Os parâmetros do método de controle _DSM para identificar o tipo de porta USB são os seguintes:

Argumentos (Função 2)

  • Arg0: UUID = ce2ee385-00e6-48cb-9f05-2edb927c4899
  • Arg1: ID de revisão = 0
  • Arg2: índice de função = 2
  • Arg3: pacote vazio (não usado)

Retorno (Função 2)

Um inteiro que contém um dos seguintes valores:

Elemento Tipo de objeto Descrição
Tipo de porta Número inteiro (BYTE) Especifica o tipo da porta USB:

0x00 – USB regular

0x01 – HSIC

0x02 – SSIC

0x03 – 0xff reservado

Função 5: Desabilitar transições U1 e U2 para uma porta

Quando esse método _DSM retorna 0x01, o driver do barramento USB desativa as transições U1 e U2 para a porta. Se ele retornar 0x00, o controlador USB voltará aos seus critérios padrão para transições U1 e U2, conforme descrito nas transições U1 e U2.

O método _DSM deve aparecer em uma porta USB3. Ele está disponível a partir do Windows 10, versão 2004 (Vibranium).

Os parâmetros do método de controle _DSM são os seguintes:

Argumentos (Função 5)

  • Arg0: UUID = ce2ee385-00e6-48cb-9f05-2edb927c4899
  • Arg1: ID de revisão = 0
  • Arg2: índice de função = 5
  • Arg3: pacote vazio (não usado)

Retorno (Função 5)

Um inteiro que contém um dos seguintes valores:

Elemento Tipo de objeto Descrição
Desabilitar U1 e U2? Número inteiro (BYTE) Especifica o comportamento U1 e U2:

0x00 – O driver do barramento USB voltará às heurísticas padrão para U1 e U2.

0x01 – as transições U1 e U2 serão desabilitadas.

0x02 – 0xff reservado

Função 6: Tipo de acesso ao registrador do controlador de consulta

Essa função está disponível a partir do Windows Server 2022 e do Windows 11.

Quando essa função é usada, o método _DSM deve aparecer no dispositivo do controlador USB.

Os parâmetros do método de controle _DSM ao consultar o tipo de acesso de registro para a comunicação com controladores USB são os seguintes:

Argumentos (Função 6)

  • Arg0: UUID = ce2ee385-00e6-48cb-9f05-2edb927c4899
  • Arg1: ID de revisão = 0
  • Arg2: índice de função = 6
  • Arg3: pacote vazio (não usado)

Retorno (Função 6)

Um Inteiro que contém um dos seguintes valores:

Elemento Tipo de objeto Descrição
RegisterAccessType longo sem sinal de 4 bytes (32 bits) Especifica o tipo de acesso de registro do controlador USB:

0x00 – Acesso de registro indefinido

0x01 – Deve usar acesso de registrador de 32 bits

0x02 – 0xffffffff reservado

Função 7: Consultar se _UPC dá suporte às capacidades de porta USB-C, conforme definido na especificação 6.5 do ACPI.

Especificação de ACPI 6.5 atualizada _UPC com recursos de porta USB-C. Nos sistemas de especificação de ACPI anteriores à 6.5, essa função de método _DSM pode ser usada para indicar que os métodos _UPC de portas USB de um hub USB têm os recursos de porta USB-C, conforme definido na especificação ACPI 6.5.

Quando essa função é usada, o método _DSM deve aparecer em um dispositivo de hub USB.

Os parâmetros do método de controle _DSM são os seguintes:

Argumentos (Função 7)

  • Arg0: UUID = ce2ee385-00e6-48cb-9f05-2edb927c4899
  • Arg1: ID de revisão = 0
  • Arg2: índice de função = 7
  • Arg3: pacote vazio (não usado)

Retorno (Função 7)

Um Número inteiro da seguinte maneira:

Elemento Tipo de objeto Descrição
UpcSupportsUsbCPortCapabilities Número inteiro (BYTE) 0x00: Os métodos _UPC das portas USB deste hub USB não possuem capacidades de porta USB-C, conforme definido na especificação ACPI 6.5.

0x01: Os métodos _UPC das portas USB deste hub USB têm capacidades de porta USB-C, conforme definido na especificação ACPI 6.5.

0x02 - 0xFF: Reservado. Não usar