Devices audioixp(7D)
NAME
audioixp - ATI IXP400 south bridge audio digital con-
troller interface
DESCRIPTION
The audioixp device uses the IXP400 south bridge audio digi-
tal controller and a AC-97 Codec to implement the audio dev-
ice interface.
API
This interface is described in the mixer(7I) and audio(7I)
man pages.
Driver Versions
Applications that open /dev/audio may use the AUDIOGETDEV
ioctl(2) to determine which audio device is being used. The
audioixp driver returns the string SUNW,audioixp in the name
field of the audiodevice structure. The version field con-
tains the letter "a" and the config field contains the
string onboard1.
Platform Ver. Out H. Phone Spkr. In Mic. CD
x86 w/ IXP400 s. bridge a Y Y Y Y Y Y
Key to the above table: Ver. = Version. Out = Line Out. H.
Phone = Head Phone. Spkr = Internal Speaker. In = Line In.
Mic. = Microphone. CD = CD=ROM
The audioixp device provides support for the internal
speaker, headphone, line out, line in, and microphone. The
play.modports and record.modports fields of the audioinfo
structure (see audio(7I)) indicate which ports may be mani-
pulated.
Audio Mixer Mode
You use the /kernel/drv/audioixp.conf file to configure the
audioixp driver and enable or disable the audio mixer. See
the mixer(7I) manual page for details. You can change the
audio mixer mode at any time using the sdtaudiocontrol(1) or
mixerctl(1) commands. Note that some systems support 48K
sample rates only. On these systems, the compatible mode may
not work and the mixer mode should be used.
Audio Data Formats
The audioixp device supports 8-bit and 16-bit linear encod-
ing in mono and stereo. With the mixer enabled, a continuous
range of sample rates from 5510 to 48000 Hz is supported.
SunOS 5.11 Last change: 16 Feb 20062 1
Devices audioixp(7D)
With the mixer disabled, the following sample rates may be
supported, depending on Codec capability: 5510, 6620, 8000,
9600, 11025, 16000, 18900, 22050, 27420, 32000, 33075,
37800, 4410, and 48000 Hz. Whether the mixer is enabled or
not, the device can be opened for simultaneous playing and
recording.
Sample Granularity
Because the audioixp device manipulates buffers of audio
data, the reported input and output sample counts will vary
at any given time from the actual sample count by no more
than the size of the buffers the audioixp driver is
transferring. In general, programs should not rely on the
absolute accuracy of the play.samples and record.samples
fields of the audioinfo structure.
Interrupt Rate
The driver determines how often play and record interrupts
should take place. For playing audio, this determines how
often and how much audio is requested from the audio mixer.
The impact of interrupts on recording is minimal. However,
if a very small read buffer size is set, the record inter-
rupt rate should be increased to prevent the buffer from
overflowing. The play and record interrupt rates are tunable
in the /kernel/drv/audioixp.conf file.
Audio Status Change Notification
As described in the audio(7I) and mixer(7I) man pages, it is
possible to request asynchronous notification of changes in
the state of an audio device.
ERORS
See the audio(7I) manpage for audioixp errors.
FILES
/dev/audio Symbolic link to the system's
primary audio device. (Not
necessarily an audioixp audio
device).
/dev/audioctl Control device for the primary
audio device.
/dev/sound/0 Represents the first audio
device on the system. (Not
necessarily an audioixp audio
device).
SunOS 5.11 Last change: 16 Feb 20062 2
Devices audioixp(7D)
/dev/sound/0ctl Audio control for
/dev/sound/0.
/usr/share/audio/samples Audio sample files.
/kernel/drv/audioixp.conf Driver configuration file.
ATRIBUTES
See attributes(5) for a descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Architecture PC-based system
Availability SUNWaudd, SUNWauda
Stability level Evolving
SEE ALSO
mixerctl(1), ioctl(2), attributes(5), audio(7I), mixer(7I),
streamio(7I)
ATI IXP400 South Bridge Data Sheet
http:/www.sun.com/io
DIAGNOSTICS
In addition to being logged, the following messages may
appear on the system console:
initstate() play interrupt rate set too low
The play interrupt rate in audioixp.conf is set too low.
It has been reset to the rate specified in the message.
Update audioixp.conf to a higher play interrupt rate.
initstate() play interrupt rate set too high
The play interrupt rate set in audioixp.conf is set too
high. It has been reset to the rate specified in the
SunOS 5.11 Last change: 16 Feb 20062 3
Devices audioixp(7D)
message. Update audioixp.conf to a lower play interrupt
rate.
initstate() record interrupt rate set too low
The record interrupt rate in audioixp.conf is set too
low. It has been reset to the rate specified in the mes-
sage. Update audioixp.conf to a higher record interrupt
rate.
initstate() record interrupt rate set too high
The record interrupt rate in audioixp.conf is set too
high. It has been reset to the rate specified in the
message. Update audioixp.conf to a lower record inter-
rupt rate.
SunOS 5.11 Last change: 16 Feb 20062 4
|