This section describes device management features that are new or have been revised in the Solaris 9 4/04 release. In this release, USB features are now available for both x86 and SPARC platforms.
This feature description is new in the Solaris 9 4/04 release. This feature is available for x86 and SPARC platforms.
The USBA framework, found in the Solaris 9 12/03 release, was originally developed for USB 1.1 devices. A new framework, called USBA 1.0, was created to meet more demanding requirements of USB 2.0 devices. The framework operates USB 1.1 devices as well. This Solaris release provides both frameworks, as a dual framework. The purpose of the dual framework is to facilitate a smoother transition from the original framework to the newer framework. The original USBA framework operates devices connected to a system's USB 1.1 ports, while the new USBA 1.0 framework operates devices connected to a system's USB 2.0 ports.
All Sun motherboard ports are USB 1.1 ports, while most PCI card ports support USB 2.0.
For specific details about how the USB dual framework works, go to http://www.sun.com/desktop/whitepapers.html.
For information about USB dual framework compatibility issues with the USB dual framework, see “What's New in USB Devices?” in System Administration Guide: Basic Administration.
The Solaris 9 4/04 release includes the following USB 2.0 features, available for both x86 and SPARC platforms:
Better Performance – Increased data throughput for devices that are attached to USB 2.0 controllers, up to 40 times faster than USB 1.1 devices
You can particularly benefit from the high-speed USB protocol when accessing high-speed mass storage devices, such as DVDs and hard drives.
Compatibility – Backward compatibility with 1.0 and 1.1 devices and drivers so that you can use the same cables, connectors, and software interfaces
For a description of USB devices and terminology, see “Overview of USB Devices” in System Administration Guide: Basic Administration.
This feature description is new in the Solaris 9 4/04 release and applies to both x86 and SPARC platforms.
USB 2.0 devices are defined as high-speed devices that follow the USB 2.0 specification. You can refer to the USB 2.0 specification at http://www.usb.org.
Some of the USB devices that are supported on SPARC based and x86 based systems in this Solaris release are as follows:
Mass storage devices – CD-RWs, hard disks, DVD, digital cameras, Zip drives, diskettes, and tape drives
Keyboard, mouse devices, speakers, and microphones
Audio devices
For a full listing of USB devices that have been verified on the Solaris release, go to:
http://www.sun.com/io_technologies/USB.html
Additional storage devices might work by modifying the scsa2usb.conf file. For more information, see the scsa2usb(7D) man page.
Solaris USB 2.0 device support includes the following features:
Increased USB bus speed from 12 Mbps to 480 Mbps. This increase means devices that support the USB 2.0 specification can run significantly faster than their USB 1.1 counterparts when they are connected to a USB 2.0 port.
A USB 2.0 port is defined as follows:
A port on a USB 2.0 PCI card
A port on a USB 2.0 hub that is connected to a USB 2.0 port
USB 2.0 is Solaris Ready on all PCI-based Sun platforms. An NEC-chip based USB 2.0 PCI card is needed to provide USB 2.0 ports on SPARC platforms, and is recommended for x86 platforms. For a list of USB 2.0 PCI cards that have been verified for the Solaris release, go to http://www.sun.com/io_technologies/USB.html.
USB 1.1 devices work as they have in the past, even if you have both USB 1.1 and USB 2.0 devices on the same system, with one exception. See note.
USB 1.1 devices cannot operate when connected to a USB 2.0 hub that is connected to a USB 2.0 port.
While USB 2.0 devices operate on a USB 1.x port, their performance is significantly better when connected to a USB 2.0 port.
For more information about USB 2.0 device support, see the ehci(7D) and usba(7D) man pages.
For information about USB cables and bus-powered devices, see “About USB in the Solaris Environment” in System Administration Guide: Basic Administration.
This feature description is new in the Solaris 9 4/04 release and is available for x86 and SPARC platforms.
The following table describes Solaris support for USB 1.1 and USB 2.0 devices.
|
Solaris 8 HW* Releases |
Solaris 9 Releases |
Solaris 9 4/04 Release |
---|---|---|---|
USB 1.1 |
SPARC and x86 |
SPARC and x86 |
SPARC and x86 |
USB 2.0 |
SPARC |
N/A |
SPARC and x86 |
Solaris 8 HW does not describe the Solaris 8 releases, but the Solaris 8 Hardware (HW) releases, starting with the Solaris 8 HW 5/03 release. The patch number for the USB dual framework that is found in the Solaris 8 HW 5/03 release is 109896.
For information about USB support on Sun hardware, see “Using USB Devices (Overview/Tasks)” in System Administration Guide: Basic Administration .
This feature description has been revised in the Solaris 9 4/04 release. These features are now available for x86 and SPARC platforms.
All USB storage devices are now accessed as removable media devices through volume management. This change has the following advantages:
USB storage devices with standard MS-DOS or Windows (FAT) file systems are now supported.
You can use the user-friendly rmformat command instead of the format command to format and partition all USB storage devices. If you need the functionality of the format command, use the format -e command.
You can use the fdisk command if you need to do fdisk-style partitioning.
Nonroot users can now access USB storage devices, because the root-privileged mount command is no longer needed. The device is automatically mounted by vold and is available under the /rmdisk directory. If a new device is connected while the system is down, do a reconfiguration boot with the boot -r command so that vold recognizes the device. Note that vold does not automatically recognize a hot-plugged device. If a new device is connected while the system is up, restart vold. For more information, refer to the vold(1M) and scsa2usb(7D) man pages.
Disks with FAT file systems can be mounted and accessed. For example:
mount -F pcfs /dev/dsk/c2t0d0s0:c /mnt |
All USB storage devices are now power managed, except for those devices that support LOG SENSE pages. Devices with LOG SENSE pages are usually SCSI drives that are connected through a USB-to-SCSI bridge device. In previous Solaris releases, some USB storage devices were not power managed because they were not recognized as removable media.
Applications might work differently with USB mass storage devices. Note the following issues when using applications with USB storage devices:
Applications might make incorrect assumptions about the size of the media because only smaller devices such as diskettes and Zip drives were removable previously.
Requests by applications to eject media on devices where this removal would be inapplicable, such as a hard drive, succeed and do nothing.
To revert to the behavior of previous Solaris releases that did not treat all USB mass storage as removable media devices, update the /kernel/drv/scsa2usb.conf file.
For more information about using USB mass storage devices, see the scsa2usb(7D) man page.
For information about troubleshooting USB mass storage device problems, see “What's New in USB Devices?” in System Administration Guide: Basic Administration.
This section describes USB driver enhancements in the Solaris 9 4/04 release. These enhancements are available for x86 and SPARC platforms.
New generic USB driver – USB 1.0 devices can now be accessed and manipulated by applications that use standard UNIX read(2) and write(2) system calls, and without writing a special kernel driver. Additional features include the following:
Applications have access to raw device data and device status.
This driver supports control, bulk, and interrupt (in and out) transfers.
For more information, refer to the ugen(7D) man page and the USB DDK at the following Web site:
http://developers.sun.com/solaris/developer/support/driver/usb.html |
Digi Edgeport USB support – Provides support for several Digi Edgeport USB-to-serial-port converter devices.
New devices are accessed as /dev/term/[0-9]* and /dev/cua/[0-9]*.
USB serial ports are usable as any other serial port would be, except that they cannot serve as a local serial console. The fact that their data is run through a USB port is transparent to the user.
For more information, see the usbser_edge(7D) man page, or go to http://www.digi.com and http://www.sun.com/io.
Documentation and binary support for user-written kernel and userland drivers – A Solaris USB Driver Development Kit (DDK), including documentation, is available. For up-to-date information about USB driver development, including information on the DDK, go to the following Web site:
http://developers.sun.com/solaris/developer/support/driver/usb.html |
This feature description is new in the Solaris 9 4/04 release.
Features of the EHCI driver include the following:
Compliance with enhanced host controller interface that supports USB 2.0.
Support for high-speed control, bulk, and interrupt transfers.
Currently, no support is available for high-speed isochronous or split transactions. For example, you cannot connect USB 1.x devices to a 2.0 hub that is connected to a USB 2.0 port.
If you have both USB 2.0 and USB 1.0 or 1.1 devices on your system, the EHCI and OHCI drivers hand-off device control, depending on the type of device that is connected to the system.
The USB 2.0 PCI card has one EHCI controller and one or more OHCI controllers.
A USB 1.1 device is dynamically assigned to the OHCI controller when it is connected.
A USB 2.0 device is dynamically assigned to the EHCI controller when it is connected.