Compartilhar via


IDs de hardware HIDClass para coleções de nível superior

Esta seção especifica as IDs de hardware geradas pelo driver de classe HID para coleções de nível superior.

Os fornecedores devem usar os formatos designados como formatos de ID de hardware do fornecedor para identificar coleções de nível superior. Todos os outros formatos de ID do dispositivo são reservados apenas para uso interno.

As IDs de hardware geradas pelo driver de classe HID para um devnode dependem do seguinte:

  1. Número de funções compatíveis com o transporte subjacente
  2. Número de coleções de nível superior no descritor de relatório

Com base nesses fatores, há 4 categorias de IDs de hardware

Tipo TLC único TLC múltiplo
Single-Function Caso 1 Caso 2
Várias funções Caso 3 Caso 4

Caso 1: dispositivo de função única com TLC único

Condição sob a qual esse formato de ID de hardware é usado:

  1. Número de funções compatíveis com o transporte subjacente = 1 &&
  2. Número de TLC = 1

Formato de ID de hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)
  • HID\Vid_v(4)&Pid_d(4)
  • HID_DEVICE_UP:p(4)_U:u(4)
  • HID_DEVICE

Caso 2: dispositivo de função única com vários TLC

Condição sob a qual esse formato de ID de hardware é usado:

  1. Número de funções compatíveis com o transporte subjacente = 1 &&
  2. Número de TLC > 1

Formato de ID de hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)&Colb(2)
  • HID\Vid_v(4)&Pid_d(4)&Colb(2)
  • HID_DEVICE_UP:p(4)_U:u(4) [RESERVADO SOMENTE PARA INFS DO WINDOWS]
  • HID_DEVICE [RESERVADO SOMENTE PARA INFS DO WINDOWS]

Caso 3: dispositivo de várias funções com TLC único

Condição sob a qual esse formato de ID de hardware é usado:

  1. Número de funções compatíveis com o transporte > subjacente 1 &&
  2. Número de TLC = 1

Formato de ID de hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)&MI_z(2)
  • HID\Vid_v(4)&Pid_d(4)&MI_z(2)
  • HID_DEVICE_UP:p(4)_U:u(4) [RESERVADO SOMENTE PARA INFS DO WINDOWS]
  • HID_DEVICE [RESERVADO SOMENTE PARA INFS DO WINDOWS]

Caso 4: dispositivo de várias funções com vários TLC

Condição sob a qual esse formato de ID de hardware é usado:

  1. Número de funções compatíveis com o transporte > subjacente 1 &&
  2. Número de TLC > 1

Formato de ID de hardware:

  • HID\Vid_v(4)&Pid_d(4)&Rev_r(4)&MI_z(2)&Colb(2)
  • HID\Vid_v(4)&Pid_d(4)&MI_z(2)&Colb(2)
  • HID_DEVICE_UP:p(4)_U:u(4) [RESERVADO SOMENTE PARA INFS DO WINDOWS]
  • HID_DEVICE [RESERVADO SOMENTE PARA INFS DO WINDOWS]

ID de hardware de finalidade especial

Veja a seguir as IDs de hardware (somente para uso interno) que o Windows usa para fornecer a funcionalidade padrão do sistema.

Tipo de dispositivo Página uso Uso ID de hardware
Ponteiro 0x01 0x01 HID_DEVICE_SYSTEM_MOUSE
Mouse 0x01 0x02 HID_DEVICE_SYSTEM_MOUSE
Joystick 0x01 0x04 HID_DEVICE_SYSTEM_GAME
Painel de jogos 0x01 0x05 HID_DEVICE_SYSTEM_GAME
Keyboard 0x01 0x06 HID_DEVICE_SYSTEM_KEYBOARD
Teclado 0x01 0x07 HID_DEVICE_SYSTEM_KEYBOARD
Controle do sistema 0x01 0x80 HID_DEVICE_SYSTEM_CONTROL
Controle de áudio do consumidor 0x0C 0x01 HID_DEVICE_SYSTEM_CONSUMER

Observações importantes:

  • Não há IDs compatíveis geradas por HIDClass
  • OS INFs de terceiros do fornecedor só devem corresponder às IDs de hardware
  • IDs de hardware que contêm HID_DEVICE_SYSTEM_* são dispositivos "especiais" que o sistema operacional abre para uso. O INF fornecido pelo fornecedor não deve corresponder a essas IDs especiais de hardware.
  • Os minidrivers de transporte HID de terceiros fornecidos pelo fornecedor devem fornecer os campos listados abaixo para garantir que HIDClass possa gerar as IDs de hardware apropriadas.

Legenda:

Campo Contém Valor hexadecimal Significado
v(4) quatro dígitos hexadecimais 0x0000-0xFFFF ID do Fornecedor
d(4) quatro dígitos hexadecimais 0x0000-0xFFFF Produto ID
r(4) quatro dígitos hexadecimais 0x0000-0xFFFF Número de Revisão
z(2) dois dígitos hexadecimais 0x00-0xFF Número da interface (usado apenas com dispositivos USB compostos.)
b(2) dois dígitos hexadecimais 0x00-0xFF Número da coleção (usado apenas com dispositivos TLC múltiplos.)
p(4) quatro dígitos hexadecimais 0x0000-0xFFFF Número da Página de Uso para TLC
u(4) quatro dígitos hexadecimais 0x0000-0xFFFF Número de uso de TLC