hid(7D)
NAME
hid - Human interface device (HID) class driver
SYNOPSIS
keyboard@unit-address
mouse@unit-address
input@unit-address:consumer_control
DESCRIPTION
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.
FILES
/kernel/drv/hid
32 bit hid ELF kernel module for original USBA frame-
work.*
/kernel/drv/sparcv9/hid
64 bit hid ELF kernel module for original USBA frame-
work.* (SPARC only).
/kernel/drv/usba10_hid
32 bit hid ELF kernel module for USBA 1.0 framework.*
/kernel/drv/sparcv9/usba10_hid
64 bit hid ELF kernel module for USBA 1.0 framework.*
(SPARC only).
/kernel/drv/usba10_hid.conf
usba10_hid configuration file.
/kernel/misc/hidparser
32 bit hidparser ELF kernel module for original USBA
framework.*
/kernel/misc/sparcv9/hidparser
64 bit hidparser ELF kernel module for original USBA
framework.* (SPARC only).
/kernel/misc/usba10_hidparser
32 bit hidparser ELF kernel module for USBA 1.0 frame-
work.*
/kernel/misc/sparcv9/usba10_hidparser
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.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|____________________________|______________________________|
| Architecture | PCI-based systems |
|____________________________|______________________________|
| Availability | SUNWusb (All architectures)|
| | SUNWusbx (SPARC only) |
|____________________________|______________________________|
SEE ALSO
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)
1.1
System Administration Guide: Basic Administration
http://www.sun.com/io
DIAGNOSTICS
None.
NOTES
The hid driver currently supports only keyboard, mouse and
audio HID control device.
Man(1) output converted with
man2html