hid - Human interface device (HID) class driver
The hid driver is a USBA (Solaris USB Architecture) compli-
ant client driver that supports the Human Interface Device
Class (HID) 1.0 specification. The Human Interface Device
(HID) class encompasses devices controlled by humans to
operate computer systems. Typical examples of HID devices
include keyboards, mice, trackballs, and joysticks. HID also
covers front-panel controls such as knobs, switches, and
buttons. A USB device with multiple interfaces may have
one interface for audio and a HID interface to define the
buttons that control the audio.
The hid driver is general and primarily handles the USB
functionality of the device and generic HID functionality.
For example, HID interfaces are required to have an inter-
rupt pipe for the device to send data packets, and the hid
driver opens the pipe to the interrupt endpoint and starts
polling. The hid driver is also responsible for managing the
device through the default control pipe. In addition to
being a USB client driver, the hid driver is also a STREAMS
driver so that modules may be pushed on top of it.
The HID specification is flexible, and HID devices dynami-
cally describe their packets and other parameters through a
HID report descriptor. The HID parser is a misc module that
parses the HID report descriptor and creates a database of
information about the device. The hid driver queries the HID
parser to find out the type and characteristics of the HID
device. The HID specification predefines packet formats for
the boot protocol keyboard and mouse.
32 bit hid ELF kernel module for original USBA frame-
64 bit hid ELF kernel module for original USBA frame-
work.* (SPARC only).
32 bit hid ELF kernel module for USBA 1.0 framework.*
64 bit hid ELF kernel module for USBA 1.0 framework.*
usba10_hid configuration file.
32 bit hidparser ELF kernel module for original USBA
64 bit hidparser ELF kernel module for original USBA
framework.* (SPARC only).
32 bit hidparser ELF kernel module for USBA 1.0 frame-
64 bit hidparser ELF kernel module for USBA 1.0 frame-
work.* (SPARC only).
* Please see www.sun.com/desktop/whitepapers.html for
more information regarding USB dual framework imple-
mentation, USBA 1.0, and USB 2.0.
See attributes(5) for descriptions of the following attri-
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
| Architecture | PCI-based systems |
| Availability | SUNWusb (All architectures)|
| | SUNWusbx (SPARC only) |
cfgadm_usb(1M), attributes(5), usba(7D)
Writing Device Drivers
STREAMS Programming Guide
Universal Serial Bus Specification 1.0 and 1.1
Device Class Definition for Human Interface Devices (HID)
System Administration Guide: Basic Administration
The hid driver currently supports only keyboard, mouse and
audio HID control device.
Man(1) output converted with