USBA(4D) | Devices | USBA(4D) |
usba
, usb
—
illumos USB Architecture (USBA)
USB provides a low-cost means for attaching peripheral devices, including mass-storage devices, keyboards, mice, and printers, to a system. For complete information on the USB architecture, visit the USB website at http://www.usb.org.
USBA supports 126 hot-pluggable USB devices per USB bus. The maximum data transfer rate is 5 Gbits (SuperSpeed USB 3.0), 480 Mbits (high speed USB 2.0), 12 Mbits (full speed USB 1.x), or 1.5 Mbits (low speed USB 1.x).
USBA adheres to the Universal Serial Bus 3.0 specification and provides a transport layer abstraction to USB client drivers.
For information on how to write USB client drivers, see Writing Device Drivers. For the latest information on writing USB drivers, visit http://illumos.org/books/wdd. For a complete list of USBA interfaces, see Intro(9F) or Intro(9S).
Devices without a driver may be able to leverage libusb.
Listed below are drivers and modules which either utilize or are utilized by USBA.
Client Driver | Function/Device |
/kernel/drv/[sparcv9|amd64]/hid | HID class |
/kernel/drv/[sparcv9|amd64]/hubd | hub class |
/kernel/drv/[sparcv9|amd64]/scsa2usb | mass storage class |
/kernel/drv/[sparcv9|amd64]/usbprn | printer class |
/kernel/drv/[sparcv9|amd64]/usb_as | audio streaming class |
/kernel/drv/[sparcv9|amd64]/usb_ac | audio control class |
/kernel/drv/[sparcv9|amd64]/usbvc | video class |
/kernel/drv/[sparcv9|amd64]/usb_mid | multi-interface device |
/kernel/drv/[sparcv9|amd64]/usb_ia | interface-association driver |
/kernel/drv/[sparcv9|amd64]/usbser_edge | Edgeport USB to serial port |
/kernel/drv/[sparcv9|amd64]/usbsksp | Keyspan USB to serial port |
/kernel/drv/[sparcv9|amd64]/usbsprl | pl2303 USB to serial port |
/kernel/drv/[sparcv9|amd64]/usbsacm | CDC ACM class to serial port |
/kernel/drv/[sparcv9|amd64]/ugen | generic USB driver |
Client Streams Modules | Function/Device |
/kernel/strmod/[sparcv9|amd64]/usbkbm | Keyboard |
/kernel/strmod/[sparcv9|amd64]/usbms | Mouse |
/kernel/strmod/[sparcv9|amd64]/usb_ah | Audio HID |
Host Controller Interface Drivers | Device |
/kernel/drv/amd64/xhci | Extensible HCI |
/kernel/drv/[sparcv9|amd64]/ehci | Enhanced HCI |
/kernel/drv/[sparcv9|amd64]/ohci | Open HCI |
/kernel/drv/[sparcv9|amd64]/uhci | Universal HCI |
The messages described below may appear on the system console as well as being logged. All messages are formatted in the following manner:
The following messages may be logged into the system log. They are formatted in the following manner:
<device path><usba<instance number>): message...
ehci(4D), hid(4D), hubd(4D), ohci(4D), scsa2usb(4D), ugen(4D), uhci(4D), usb_ac(4D), usb_as(4D), usb_ia(4D), usb_mid(4D), usbprn(4D), usbsacm(4D), usbser_edge(4D), usbsksp(4D), usbsprl(4D), usbvc(4D), virtualkm(4D), xhci(4D), attributes(7), cfgadm_usb(8), Intro(9F), Intro(9S)
Writing Device Drivers.
Universal Serial Bus Specification 3.0.
Interface Association Descriptor Engineering Change Notice (ECN).
System Administration Guide: Basic Administration.
Booting from USB mass-storage devices is not supported on SPARC, but is supported on X86.
January 10, 2020 | OmniOS |