Skip Navigation Links | |
Exit Print View | |
Oracle Solaris 11.1 Administration: Devices and File Systems Oracle Solaris 11.1 Information Library |
1. Managing Removable Media (Tasks)
2. Writing CDs and DVDs (Tasks)
4. Dynamically Configuring Devices (Tasks)
5. Managing USB Devices (Tasks)
About USB Support in Oracle Solaris
USB Device Features and Compatibility Issues
USB Keyboards and Mouse Devices
Guidelines for Connecting USB Cables
Oracle Solaris USB Architecture
USB Devices and Driver Classes
Managing USB Mass Storage Devices
Hot-Plugging USB Mass Storage Devices
How to Add a USB Mass Storage Device
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
Hot-Plugging Multiple USB Audio Devices
How to Identify Your System's Primary Audio Device
How to Change the Primary USB Audio Device
Hot-Plugging USB Devices With the cfgadm Command
How to Display USB Bus Information (cfgadm)
How to Unconfigure 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 Change the Default Configuration of a Multi-Configuration USB Device
6. Using InfiniBand Devices (Overview/Tasks)
9. Administering 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)
The following tasks are provided in this section:
Note - USB 3.0 does not include support for audio devices.
For information about USB audio support in specific Oracle Solaris releases, see About USB Support in Oracle Solaris.
Oracle Solaris USB audio support is implemented by a pair of cooperating drivers, usb_ac and usb_as. The audio control driver, usb_ac, is a Solaris USB Architecture compliant client driver that provides the controlling interface to user applications. The audio streaming driver, usb_as, processes audio data messages during play and record. It sets sample frequency and precision, and encodes requests from the usb_ac driver. Both drivers comply with the USB audio class 1.0 specification.
Some audio devices can set volume under software control. A STREAMS module, usb_ah, is pushed on top of the HID driver for managing this function.
Oracle Solaris supports USB audio devices that are play-only, record-only, or record and play.
Hot-plugging of USB audio devices is supported, as follows:
For fully supported audio data format information, see usb_ac(7D).
The primary audio device is /dev/audio. You can verify that /dev/audio is pointing to USB audio by using the following command:
%$ mixerctl Device /dev/audioctl: Name = USB Audio Version = 1.0 Config = external Audio mixer for /dev/audioctl is enabled
After you connect your USB audio devices, you access them with the audioplay and audiorecord command through the /dev/sound/N device links.
Note that the /dev/audio and /dev/sound/N devices can refer to speakers, microphones, or combination devices. If you refer to the incorrect device type, the command fails. For example, the audioplay command fails if you try to use it with a microphone.
You can select a specific default audio device for most Oracle audio applications, such as audioplay and audiorecord, by setting the AUDIODEV shell variable or by specifying the -d option for these commands. However, setting AUDIODEV does not work for third-party applications that have /dev/audio hardcoded as the audio file.
When you plug in a USB audio device, it automatically becomes the primary audio device, /dev/audio, unless /dev/audio is in use. For instructions on changing /dev/audio from on-board audio to USB audio and vice versa, refer to How to Change the Primary USB Audio Device, and usb_ac(7D).
If a USB audio device is plugged into a system, it becomes the primary audio device, /dev/audio. It remains the primary audio device even after the system is rebooted. If additional USB audio devices are plugged in, the last one becomes the primary audio device.
For additional information on troubleshooting USB audio device problems, see usb_ac(7D).
The primary audio device, /dev/audio, points to the USB speaker.
$ ls -l /dev/audio lrwxrwxrwx 1 root root 10 Feb 13 08:46 /dev/audio -> usb/audio0
If you remove the speaker, the /dev/audio device reverts back to on-board audio.
$ ls -l /dev/audio lrwxrwxrwx 1 root root 7 Feb 13 08:47 /dev/audio -> sound/0
$ ls -l /dev/audio lrwxrwxrwx 1 root root 10 Feb 13 08:54 /dev/audio -> usb/audio1
This procedure assumes that you have already connected the USB audio devices.
Display your system's new audio links with the ls command.
For example:
$ ls -lt /dev/audio* lrwxrwxrwx 1 root root 7 Jul 23 15:46 /dev/audio -> usb/audio0 lrwxrwxrwx 1 root root 10 Jul 23 15:46 /dev/audioctl -> usb/audioctl0/ % ls -lt /dev/sound/* lrwxrwxrwx 1 root root 74 Jul 23 15:46 /dev/sound/1 -> ../../devices/pci@1f,4000/usb@5/hub@1/device@3/sound-control@0:... lrwxrwxrwx 1 root root 77 Jul 23 15:46 /dev/sound/1ctl -> ../../devices/pci@1f,4000/usb@5/hub@1/device@3/sound-control@0:... lrwxrwxrwx 1 root other 66 Jul 23 14:21 /dev/sound/0 -> ../../devices/pci@1f,4000/ebus@1/SUNW,CS4231@14,200000:sound,audio lrwxrwxrwx 1 root other 69 Jul 23 14:21 /dev/sound/0ctl -> ../../devices/pci@1f,4000/ebus@1/SUNW,CS4231@14,200000:sound,audioctl $
Notice that the primary audio device, /dev/audio, is pointing to the newly plugged in USB audio device, /dev/usb/audio0.
You can also examine your system's USB audio devices with the prtconf command and look for the USB device information.
$ prtconf . . . usb, instance #0 hub, instance #0 mouse, instance #0 keyboard, instance #1 device, instance #0 sound-control, instance #0 sound, instance #0 input, instance #0 . . .
Sometimes, USB speakers do not produce any sound, even though the driver is attached and the volume is set to high. Hot-plugging the device might not change this behavior.
The workaround is to power cycle the USB speakers.
Keep the following key points of audio device ownership in mind when working with audio devices:
When you plug in a USB audio device and you are logged in to the console, the console is the owner of the /dev/* entries. This situation means you can use the audio device, as long as you are logged in to the console.
If you are not logged in to the console when you plug in a USB audio device, root becomes the owner of the device. However, if you log in to the console and attempt to access the USB audio device, then device ownership changes to the console. For more information, see logindevperm(4).
When you remotely log in with the rlogin command and attempt to access the USB audio device, the ownership does not change. This situation means that, for example, unauthorized users cannot listen to conversations over a microphone that is owned by someone else.