patch-2.4.2 linux/Documentation/sound/Introduction
Next file: linux/Documentation/sound/Maestro3
Previous file: linux/Documentation/sound/AWE32
Back to the patch index
Back to the overall index
- Lines: 220
- Date:
Fri Feb 16 15:53:08 2001
- Orig file:
v2.4.1/linux/Documentation/sound/Introduction
- Orig date:
Wed Sep 27 13:53:52 2000
diff -u --recursive --new-file v2.4.1/linux/Documentation/sound/Introduction linux/Documentation/sound/Introduction
@@ -1,15 +1,19 @@
Introduction Notes on Modular Sound Drivers and Soundcore
Wade Hampton
-6/30/1999
+2/14/2001
Purpose:
========
This document provides some general notes on the modular
sound drivers and their configuration, along with the
-support modules sound.o, soundlow.o and soundcore.o.
+support modules sound.o and soundcore.o.
Note, some of this probably should be added to the Sound-HOWTO!
+Note, soundlow.o was present with 2.2 kernels but is not
+required for 2.4.x kernels. References have been removed
+to this.
+
Copying:
========
@@ -28,6 +32,8 @@
1.1.1 19991031 Added notes on sound-slot- and sound-service.
(Alan Cox)
1.1.2 20000920 Modified for Kernel 2.4 (Christoph Hellwig)
+1.1.3 20010214 Minor notes and corrections (Wade Hampton)
+ Added examples of sound-slot-0, etc.
Modular Sound Drivers:
@@ -69,8 +75,9 @@
1. There is a new OpenSource sound driver called ALSA which is
currently under development: http://www.alsa-project.org/
- I have not tried it nor am I aware of its status, but it is
- currently under development.
+ The ALSA drivers support some newer hardware that may not
+ be supported by this sound driver and also provide some
+ additional features.
2. The commercial OSS driver may be obtained from the site:
http://www/opensound.com. This may be used for cards that
@@ -82,7 +89,8 @@
some of the requirements for multiple sound card systems. For
more information, see: http://www.tux.org/~ricdude/EsounD.html
The "esd" program may be used with the real-player and mpeg
- players like mpg123 and x11amp.
+ players like mpg123 and x11amp. The newer real-player
+ and some games even include built-in support for ESD!
Building the Modules:
@@ -104,13 +112,31 @@
4. Select your sound driver(s) as a module. For ProAudio, Sound
Blaster, etc., select M (module) for OSS sound modules.
- [thanks to marvin stodolsky <stodolsk@erols.com>]A
+ [thanks to Marvin Stodolsky <stodolsk@erols.com>]A
5. Make the kernel (e.g., make dep ; make bzImage), and install
the kernel.
6. Make the modules and install them (make modules; make modules_install).
+Note, for 2.4.x kernels, make sure you have the newer modutils
+loaded or modules will not be loaded properly. 2.4.x changed the
+layout of /lib/modules/2.4.x and requires an updated modutils.
+
+
+Plug and Play (PnP:
+===================
+
+If the sound card is an ISA PnP card, isapnp may be used
+to configure the card. See the file isapnp.txt in the
+directory one level up (e.g., /usr/src/linux/Documentation).
+
+Also the 2.4.x kernels provide PnP capabilities, see the
+file NEWS in this directory.
+
+PCI sound cards are highly recommended, as they are far
+easier to configure and from what I have read, they use
+less resources and are more CPU efficient.
INSMOD:
@@ -129,7 +155,6 @@
#
echo Starting sound
/sbin/insmod soundcore
-/sbin/insmod soundlow
/sbin/insmod sound
#
echo Starting sound blaster....
@@ -160,6 +185,10 @@
The status of sound may be read/checked by:
cat (anyfile).au >/dev/audio
+[WWH: This may not work properly for SoundBlaster PCI 128 cards
+such as the es1370/1 (see the es1370/1 files in this directory)
+as they do not automatically support uLaw on /dev/audio.]
+
The status of the modules and which modules depend on
which other modules may be checked by:
/sbin/lsmod
@@ -168,7 +197,6 @@
sb 26280 0
uart401 5640 0 [sb]
sound 57112 0 [sb uart401]
- soundlow 208 0 [sound]
soundcore 1968 8 [sb sound]
@@ -186,7 +214,6 @@
/sbin/rmmod sb
/sbin/rmmod uart401
/sbin/rmmod sound
-/sbin/rmmod soundlow
/sbin/rmmod soundcore
When using sound as a module, I typically put these commands
@@ -217,7 +244,8 @@
Typically, you need two sound cards of different types. Note, this
uses more precious interrupts and DMA channels and sometimes
can be a configuration nightmare. I have heard reports of 3-4
-sound cards (typically I only use 2).
+sound cards (typically I only use 2). You can sometimes use
+multiple PCI sound cards of the same type.
On my machine I have two sound cards (cs4232 and Soundblaster Vibra
16). By loading sound as modules, I can control which is the first
@@ -236,7 +264,7 @@
1. Copy the sound modules to a new name. For example
sb.o could be copied (or symlinked) to sb1.o for the
- second SoundBlasster.
+ second SoundBlaster.
2. Make a second entry in /etc/modules.conf, for example,
sound1 or sb1. This second entry should refer to the
@@ -257,6 +285,7 @@
supports multiple cards with one module by default.
Read the file 'Soundblaster' in this directory for details.
+
Sound Problems:
===============
@@ -314,7 +343,6 @@
esddsp <program> may be used to play files via a non-esd
aware program.
-
6) Ask for help on the sound list or send E-MAIL to the
sound driver author/maintainer.
@@ -327,6 +355,9 @@
This makes the sound system allocate its buffers and hang onto them.
+ You may also set persistent DMA when building a 2.4.x kernel.
+
+
Configuring Sound:
==================
@@ -354,10 +385,11 @@
Anyone want to write a linuxconf module for configuring sound?
+
Module Loading:
===============
-When a sound card is first referenced and sound is modular the sound system
+When a sound card is first referenced and sound is modular, the sound system
will ask for the sound devices to be loaded. Initially it requests that
the driver for the sound system is loaded. It then will ask for
sound-slot-0, where 0 is the first sound card. (sound-slot-1 the second and
@@ -370,11 +402,32 @@
a midi synth in all cases then it will request "sound-service-0-n" where n
is
-0 Mixer
+ 0 Mixer
+
+ 2 MIDI
+
+ 3, 4 DSP audio
+
-2 MIDI
+For example, I use the following to load my Soundblaster PCI 128
+(ES 1371) card first, followed by my SoundBlaster Vibra 16 card,
+then by my TV card:
-3, 4 DSP audio
+# Load the Soundblaster PCI 128 as /dev/dsp, /dev/dsp1, /dev/mixer
+alias sound-slot-0 es1371
+
+# Load the Soundblaster Vibra 16 as /dev/dsp2, /dev/mixer1
+alias sound-slot-1 sb
+options sb io=0x240 irq=5 dma=1 dma16=5 mpu_io=0x330
+
+# Load the BTTV (TV card) as /dev/mixer2
+alias sound-slot-2 bttv
+alias sound-service-2-0 tvmixer
+
+pre-install bttv modprobe tuner ; modprobe tvmixer
+pre-install tvmixer modprobe msp3400; modprobe tvaudio
+options tuner debug=0 type=8
+options bttv card=0 radio=0 pll=0
For More Information (RTFM):
@@ -405,3 +458,4 @@
Contact Information:
====================
Wade Hampton: (whampton@staffnet.com)
+
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)