xref: /netbsd-src/share/man/man4/guspnp.4 (revision 6cb10275d08f045e872662c371fe2f2724f2f6e6)
1.\"	$NetBSD: guspnp.4,v 1.18 2014/03/18 18:20:39 riastradh Exp $
2.\"
3.\" Copyright (c) 1999 The NetBSD Foundation, Inc.
4.\" All rights reserved.
5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Kari Mettinen.
8.\"
9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions
11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright
13.\"    notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\"    notice, this list of conditions and the following disclaimer in the
16.\"    documentation and/or other materials provided with the distribution.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE.
29.\"
30.Dd June 22, 2005
31.Dt GUSPNP 4
32.Os
33.Sh NAME
34.Nm guspnp
35.Nd Am78C201 audio device driver
36.Sh SYNOPSIS
37.Cd "guspnp* at isapnp?"
38.Cd "audio*  at audiobus?"
39.Pp
40There should be no limit caused by the driver on the number of drivers
41or cards active in the system.
42.Sh DESCRIPTION
43The
44.Nm guspnp
45driver provides support for audio subsystems using the Interwave (Am78C20x)
46family of ICs, usually the Gravis Ultrasound Plug and Play.
47Unlike the
48.Nm gus
49driver guspnp driver does not require any local memory for the IC, but uses
50the codec for both playback and recording.
51The
52.Nm guspnp
53driver can simultaneously playback and record 8- and 16-bit samples at
54frequencies from 5.51kHz to 48kHz.
55.Pp
56The
57.Nm guspnp
58driver relies on
59.Nm isapnp
60to allocate suitable resources for it.
61This version of the driver only
62uses the first logical device of the five the Interwave IC has.
63The four unused
64logical devices are the ATAPI CD-ROM device, PnP Joystick device, legacy
65soundcard emulation device (SoundBlaster) and MIDI serial device.
66Support
67for at least ATAPI CD-ROM and Joystick is being worked on.
68This version of the driver will use 1 IRQ and 2 DRQs.
69.Sh HARDWARE
70Cards supported by the
71.Nm
72driver include:
73.Pp
74.Bl -item -offset indent
75.It
76.Tn Gravis
77Ultrasound PNP, and compatibles
78.El
79.Sh SEE ALSO
80.Xr audio 4 ,
81.Xr gus 4 ,
82.Xr isapnp 4
83.Sh REFERENCES
84Interwave(tm) IC Am78C201/202 Programmer's Guide Rev. 2. 1996. Advanced
85Micro Devices.
86.Sh HISTORY
87The
88.Nm guspnp
89driver appeared in
90.Nx 1.3 .
91.Sh AUTHORS
92.An Kari Mettinen Aq Mt Kari.Mettinen@helsinki.fi ,
93University of Helsinki.
94.Sh BUGS
95Sometimes you can cause a hiss on either left or right channel, or both.
96You can usually make it disappear by playing random data, however this
97might not be a very nice thing to your audio equipment, but it is the only
98way I have found out to be effective.
99.Pp
100Only the Codec is used in this version of the driver, therefore only 2
101channels are supported (left and right). Also sound quality is probably
102worse at lower kHz compared to playing through the synthesizer which does
103interpolation.
104.Pp
105If the implementation has a 'bad' oscillator, using frequencies 44.8kHz
106and 38.4kHz will result in incorrect playback frequency. The author has
107a GUS PnP Pro which displays this behavior.
108.Pp
109Other members of the Interwave family have not been tested and don't
110have the glue needed to make them work. Should someone need to implement it,
111not many changes in the existing code are needed.
112Output voltage control in
113register CFIG2 [7] should be set differently for some other members of the
114family.
115.Pp
116Other architectures than i386 haven't been tested. The bus_space abstraction
117has been used from the beginning, so it should work.
118