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 de Device-Specific (_DSM) que tem as funções descritas neste artigo.
Função 1: processamento pós-redefinição para controladores de função dupla
Os parâmetros do método de controle _DSM para a função de processamento pó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)
Return (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.
Quando essa função é usada, o método _DSM deve aparecer no dispositivo do controlador USB.
Função 2: Identificação de tipo de porta
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)
Return (Função 2)
Um número inteiro contendo um dos seguintes valores:
Elemento | Tipo de Objeto | Descrição |
---|---|---|
Tipo de porta | Inteiro (BYTE) | Especifica o tipo da porta USB: 0x00 – USB regular 0x01 – HSIC 0x02 – SSIC 0x03 – 0xff reservado |
Quando essa função é usada, o método _DSM deve aparecer no dispositivo de porta USB.
Função 5: Desabilitar transições U1 e U2 para uma porta
Quando esse método _DSM retorna 0x01 o driver de barramento USB desabilita as transições U1 e U2 para a porta. Se ele retornar 0x00 o driver de barramento USB retornará à heurística padrão para transições U1 e U2 descritas 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)
Return (Função 5)
Um número inteiro contendo um dos seguintes valores:
Elemento | Tipo de Objeto | Descrição |
---|---|---|
Desabilitar U1 e U2? | Inteiro (BYTE) | Especifica o comportamento U1 e U2: 0x00 – o motorista do ônibus USB retornará à heurística 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 de registro do controlador de consulta
Essa função está disponível a partir do Windows Server 2022 e Windows 11.
Os parâmetros do método de controle _DSM para consultar o tipo de acesso de registro para 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)
Return (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 o acesso de registro de 32 bits 0x02 – 0xffffffff reservado |
Quando essa função é usada, o método _DSM deve aparecer no dispositivo do controlador USB.
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 e é sempre necessário. 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.