"With the release of the 2.4 kernel, Linux users gained serious
USB support for a wide range of devices. The Linux USB subsystem,
integrated in the kernel and already supported by most Linux
distributions, supports all necessary features like plug-and-play,
USB bandwith allocation and more than 100 ports per bus. This USB
support is key to the emerging Linux desktop market."
"Linux supports both the Universal Host Controller Interface
(UHCI, used by Intel and Via motherboard chipsets) and the Open
Host Controller Interface (OHCI, used by Compaq, Apple, SiS, OPTi,
Lucent and ALi chipsets), making USB support available to anyone
with a modern motherboard, or with a spare PCI or PcCard slot
available to add in a cheap USB host controller board. Linux also
supports USB hubs, which provide expansion for additional
devices."
"Linux 2.4 provides USB support for devices conforming to the
USB Human Interface Device class, which includes USB keyboards, USB
mice and touchpads, USB joysticks and USB graphics tablets. These
devices are supported such that they can appear as normal
keyboards, mice and joysticks. This means that applications do not
need to be changed to use the new kernel capabilities. In addition,
the devices can also appear on a new "event" interface, which
allows customised applications to take advantage of the additional
capabilites offered by USB devices."