JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Solaris 11.1 Administration: Devices and File Systems     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information

Preface

1.  Managing Removable Media (Tasks)

2.  Writing CDs and DVDs (Tasks)

3.  Managing Devices (Tasks)

4.  Dynamically Configuring Devices (Tasks)

5.  Managing USB Devices (Tasks)

What's New in USB Devices?

USB 3.0 Support

About USB Support in Oracle Solaris

Supported USB Features

USB Device Features and Compatibility Issues

Bus-Powered Devices

USB Keyboards and Mouse Devices

USB Wheel Mouse Support

USB Host Controller and Hubs

USB Hub Devices

SPARC: USB Power Management

Guidelines for Connecting USB Cables

Overview of USB Devices

Commonly Used USB Acronyms

Oracle Solaris USB Architecture

USB Bus Description

USB Devices and Driver Classes

Managing USB Mass Storage Devices

Using USB Diskette Devices

Hot-Plugging USB Mass Storage Devices

How to Add a USB Mass Storage Device

How to Add a USB Camera

How to Remove a USB Mass Storage Device

Preparing to Use a USB Mass Storage Device

How to Display USB Device Information

How to Create a File System on a USB Mass Storage Device

How to Modify Partitions and Create a PCFS File System on a USB Mass Storage Device

How to Create a Solaris Partition and Modify the Slices on a USB Mass Storage Device

How to Mount or Unmount a USB Mass Storage Device

Troubleshooting Tips for USB Mass Storage Devices

Disabling Specific USB Drivers

How to Disable Specific USB Drivers

How to Remove Unused USB Device Links

Using USB Audio Devices

Hot-Plugging Multiple USB Audio Devices

How to Add USB Audio Devices

How to Identify Your System's Primary Audio Device

How to Change the Primary USB Audio Device

Troubleshooting USB Audio Device Problems

Key Points of Audio Device Ownership

Hot-Plugging USB Devices With the cfgadm Command

How to Display USB Bus Information (cfgadm)

How to Unconfigure a USB Device

How to Configure a USB Device

How to Logically Disconnect a USB Device

How to Logically Connect a USB Device

How to Logically Disconnect a USB Device Subtree

How to Reset a USB Device

How to Change the Default Configuration of a Multi-Configuration USB Device

6.  Using InfiniBand Devices (Overview/Tasks)

7.  Managing Disks (Overview)

8.  Managing Disk Use (Tasks)

9.  Administering Disks (Tasks)

10.  Setting Up Disks (Tasks)

11.  Configuring Storage Devices With COMSTAR (Tasks)

12.  Configuring and Managing the Oracle Solaris Internet Storage Name Service (iSNS)

13.  The format Utility (Reference)

14.  Managing File Systems (Overview)

15.  Creating and Mounting File Systems (Tasks)

16.  Configuring Additional Swap Space (Tasks)

17.  Copying Files and File Systems (Tasks)

18.  Managing Tape Drives (Tasks)

Index

Overview of USB Devices

The following overview information is provided in this section:

Universal Serial Bus (USB) was developed by the PC industry to provide a low-cost solution for attaching peripheral devices, such as keyboards, mouse devices, and printers, to a system.

USB connectors are designed to fit only one type of cable, in one way. The primary design motivation for USB was to alleviate the need for multiple connector types for different devices. This design reduces the clutter on the back panel of a system.

Devices connect to USB ports on external USB hubs, or on a root hub that is located on the computer itself. Since hubs have several ports, several branches of a device tree can stem from a hub.

For more information, see usba(7D) or go to http://www.usb.org/home.

Commonly Used USB Acronyms

The following table describes the USB acronyms that are used in the Oracle Solaris OS. For a complete description of USB components and acronyms, go to http://www.usb.org/home.

Acronym
Definition
For More Information
UGEN
USB generic driver
USB
Universal Serial Bus
USBA
Universal Serial Bus Architecture (Solaris)
USBAI
USBA Client Driver Interface (Solaris)
N/A
HCD
USB host controller driver
N/A
EHCI
Enhanced Host Controller Interface
OHCI
Open Host Controller Interface
UHCI
Universal Host Controller Interface
XHCI
Extensible Host Controller Interface

Oracle Solaris USB Architecture

USB devices can be represented as two levels of device tree nodes. A device node represents the entire USB device. One or more child interface nodes represent the individual USB interfaces on the device.

Driver binding is achieved by using the compatible name properties. For more information, refer to 3.2.2.1 of the IEEE 1275 USB binding and Writing Device Drivers. A driver can either bind to the entire device and control all the interfaces, or can bind to just one interface. If no vendor or class driver claims the entire device, a generic USB multi-interface driver is bound to the device-level node. This driver attempts to bind drivers to each interface by using compatible names properties, as defined in section 3.3.2.1 of the IEEE 1275 binding specification.

The Oracle Solaris USB Architecture (USBA) adheres to the USB 1.1, USB 2.0, and USB 3.0 specifications and is part of the Oracle Solaris Device Driver Interface (DDI). The USBA model is similar to Oracle Common SCSI Architecture (SCSA). As the following figure shows, the USBA is a thin layer that provides a generic USB transport-layer abstraction to client drivers, providing them with services that implement core generic USB functionality.

Figure 5-1 Oracle Solaris USB Architecture (USBA)

image:Diagram shows the relationship between client drivers, USBA framework, host controller drivers, and the device bus.

USB Bus Description

The USB specification is openly available and free of royalties. The specification defines the electrical and mechanical interfaces of the bus and the connectors.

USB employs a topology in which hubs provide attachment points for USB devices. The host controller contains the root hub, which is the origin of all USB ports in the system. For more information about hubs, see USB Host Controller and Hubs.

Figure 5-2 USB Physical Device Hierarchy

image:Diagram shows a system with three active USB ports that includes a compound device (hub and printer) and composite device (keyboard and mouse).

Figure 5-2 shows a system with three active USB ports. The first USB port connects a USB memory stick. The second USB port connects an external hub, which in turn, connects a cdrw device and a composite keyboard/mouse device. As a composite device, this keyboard contains a USB controller, which operates both the keyboard and an attached mouse. The keyboard and the mouse share a common USB bus address because they are directed by the same USB controller.

Figure 5-2 also shows an example of a hub and a printer as a compound device. The hub is an external hub that is enclosed in the same casing as the printer. The printer is permanently connected to the hub. The hub and printer have separate USB bus addresses.

The device tree path name for some of the devices that are displayed in Figure 5-2 are listed here.

Memory stick

/pci@1f,4000/usb@5/storage@1

Keyboard

/pci@1f,4000/usb@5/hub@2/device@1/keyboard@0

Mouse

/pci@1f,4000/usb@5/hub@2/device@1/mouse@1

cdrw device

/pci@1f,4000/usb@5/hub@2/storage@3

Printer

/pci@1f,4000/usb@5/hub@3/printer@1

USB Devices and Driver Classes

USB devices with similar attributes and services are grouped into device classes. Each device class has a corresponding driver. Devices within a class are managed by the same device driver pair. However, the USB specification also allows for vendor-specific devices that are not part of a specific class.

The HID class contains devices that are user-controlled, such as the following devices:

The Communication Device class includes the following devices:

Other device classes include the following classes:

Each USB device contains descriptors that reflect the class of the device. A device class specifies how its members should behave in configuration and data transfer. You can obtain additional class information by going to http://www.usb.org/home/.

For more information about USB devices supported in the Oracle Solaris release, see usb(7D).