USBA(4D) Devices USBA(4D)

NAME


usba, usb - illumos USB Architecture (USBA)

DESCRIPTION


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.

FILES


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

DIAGNOSTICS


The messages described below may appear on the system console as well
as being logged. All messages are formatted in the following manner:

WARNING: Error message...

no driver found for device <device_name> (interface <number> node
name=<node_name>) The installed software does not contain a
supported driver for this hardware. <number> is the
interface number. <name> is either the device path name or
the device name.

Draining callbacks timed out!
An internal error occurred. Please reboot your system. If
this problem persists, contact your system vendor.

The following messages may be logged into the system log. They are
formatted in the following manner:

<device path><usba<instance number>): message...

Incorrect USB driver version for <n.m>.
Driver is incompatible with USBA framework.

SEE ALSO


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.

NOTES


Booting from USB mass-storage devices is not supported on SPARC, but is
supported on X86.

illumos January 10, 2020 illumos

tribblix@gmail.com :: GitHub :: Privacy