Go to main content

man pages section 4: Device and Network Interfaces

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

usba(4D)

Name

usba, usb - Solaris 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 Implementers Forum website at https://usb.org/ .

USBA supports 126 hot-pluggable USB devices per USB bus. The maximum data transfer rate depends on the USB specification.

USB Specification
Transfer Rate (per second)
Low Speed USB 1.x
1.5 Mbits
Full Speed USB 1.x
12 Mbits
High Speed USB 2.0
480 Mbits
SuperSpeed USB 3.0
5 Gbits

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 in Oracle Solaris 11.4. For a complete list of USBA interfaces, see Intro(9F) and Intro(9S).

Devices without a driver may have a libusb(3lib) application. For more information, see /usr/share/doc/libusb/libusb.txt.

Files

Listed below are drivers and modules which either utilize or are utilized by USBA. Drivers in /kernel/drv/sparcv9 or /kernel/drv/amd64 are 64 bit drivers.

Client Drivers

/kernel/drv/sparcv9/hid

HID class

/kernel/drv/amd64/hid

HID class

/kernel/drv/sparcv9/hubd

hub class

/kernel/drv/amd64/hubd

hub class

/kernel/drv/sparcv9/hwahc

HWA Host Controller class

/kernel/drv/amd64/hwahc

HWA Host Controller class

/kernel/drv/sparcv9/hwarc

HWA Radio Controller class

/kernel/drv/amd64/hwarc

HWA Radio Controller class

/kernel/drv/sparcv9/scsa2usb

mass storage class

/kernel/drv/amd64/scsa2usb

mass storage class

/kernel/drv/sparcv9/usbprn

printer class

/kernel/drv/amd64/usbprn

printer class

/kernel/drv/sparcv9/usb_as

audio streaming class

/kernel/drv/amd64/usb_as

audio streaming class

/kernel/drv/sparcv9/usb_ac

audio control class

/kernel/drv/amd64/usb_ac

audio control class

/kernel/drv/sparcv9/usbvc

video class

/kernel/drv/amd64/usbvc

video class

/kernel/drv/sparcv9/usb_mid

multi-interface device

/kernel/drv/amd64/usb_mid

multi-interface device

/kernel/drv/sparcv9/usb_ia

interface-association driver

/kernel/drv/amd64/usb_ia

interface-association driver

/kernel/drv/sparcv9/usbser_edge

Edgeport USB to serial port

/kernel/drv/amd64/usbser_edge

Edgeport USB to serial port

/kernel/drv/sparcv9/usbsksp

Keyspan USB to serial port

/kernel/drv/amd64/usbsksp

Keyspan USB to serial port

/kernel/drv/sparcv9/usbsprl

pl2303 USB to serial port

/kernel/drv/amd64/usbsprl

pl2303 USB to serial port

/kernel/drv/sparcv9/usbsacm

CDC ACM class to serial port

/kernel/drv/amd64/usbsacm

CDC ACM class to serial port

/kernel/drv/sparcv9/ugen

generic USB driver

/kernel/drv/amd64/ugen

generic USB driver

/kernel/drv/sparcv9/wusb_ca

WUSB Cable Association class

/kernel/drv/amd64/wusb_ca

WUSB Cable Association class

/kernel/drv/sparcv9/ohci

open host controller driver

/kernel/drv/amd64/ohci

open host controller driver

/kernel/drv/sparcv9/uhci

universal host controller driver

/kernel/drv/amd64/uhci

universal host controller driver

/kernel/drv/sparcv9/ehci

enhanced host controller driver

/kernel/drv/amd64/ehci

enhanced host controller driver

/kernel/drv/sparcv9/xhci

extensible host

/kernel/drv/amd64/xhci

extensible host

Client Streams Modules

/kernel/strmod/sparcv9/usbkbm

Keyboard

/kernel/strmod/sparcv9/usbkbm

Keyboard

/kernel/strmod/sparcv9/usbms

Mouse

/kernel/strmod/sparcv9/usbms

Mouse

/kernel/strmod/sparcv9/usb_ah

Audio HID

/kernel/strmod/sparcv9/usb_ah

Audio HID

Host Controller Interface Drivers

/kernel/drv/sparcv9/xhci

Extensible HCI

/kernel/drv/amd64/xhci

Extensible HCI

/kernel/drv/sparcv9/ehci

Enhanced HCI

/kernel/drv/amd64/ehci

Enhanced HCI

/kernel/drv/sparcv9/ohci

Open HCI

/kernel/drv/amd64/ohci

Open HCI

/kernel/drv/sparcv9/uhci

Universal HCI

/kernel/drv/amd64/uhci

Universal HCI

Attributes

See attributes(7) for a description of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
system/io/usb

See Also

libusb(3lib), 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), wusb_ca(4D), wusb_df(4D), virtualkm(4D), xhci(4D), attributes(7), cfgadm_usb(8), wusbadm(8), Intro(9F), Intro(9S)

Writing Device Drivers in Oracle Solaris 11.4

Universal Serial Bus Specification 3.0.

Interface Association Descriptor Engineering Change Notice (ECN)

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 Solaris 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.