The ALSA Driver package contains the ALSA sound drivers. These are the next generation of sound drivers for Linux.
Download (HTTP): http://www.alsa-project.org/alsa/ftp/driver/alsa-driver-1.0.4.tar.bz2
Download (FTP): ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.4.tar.bz2
Download size: 1.7 MB
Estimated Disk space required: 32 MB (for all drivers)
Estimated build time: 1.26 SBU (for all drivers)
Before installing the ALSA drivers note that in your kernel configuration you should have Sound Card Support (CONFIG_SOUND) enabled but nothing else in the Sound menu (with the possible exception of TV Card Mixer support. In particular you should not have OSS Sound Modules enabled as this will cause problems when loading the ALSA driver modules.
Because ALSA drivers are kernel modules, they must be compiled with the same compiler the kernel has used.
Install ALSA Driver using the following commands as a template:
CC=/opt/gcc-2.95.3/bin/gcc ./configure \
--with-moddir=/lib/modules/`uname -r`/kernel/drivers/sound \
--with-kernel=/lib/modules/`uname -r`/build \
--with-sequencer=yes \
--with-oss=yes \
--with-isapnp=no \
--with-cards=all &&
make &&
make install
If this is the first time you have installed the ALSA drivers, you will need to create the /dev entries using the script provided in the ALSA Driver source tree:
./snddevices
--with-sequencer=yes: This tells the ALSA Driver package to build the sequencer modules for whichever soundcards for which you are building. Most people want them so you will usually want to leave it set to yes.
--with-oss=yes: This tells the package to build the OSS/Free emulation modules. Again, most people want this so it's probably best to stick with yes.
--with-isapnp=no: Most sound cards these days are PCI and so ISA Plug and Play support isn't needed. If you are using an ISA PnP soundcard, it's best to say yes here. If your card is ISA, but not PnP, it is safer to stay with 'no'.
--with-cards=all: You can tell the script just to build the drivers for your particular sound card here. For full information on which drivers are available see ./configure --help. If you aren't sure which chipset your soundcard uses, have a look in CARDS-STATUS in the ALSA Driver source tree. The default specified here will build all drivers.
To configure the ALSA drivers, you need to add some lines to /etc/modules.conf:
cat >> /etc/modules.conf << "EOF"
alias char-major-14 soundcore
alias char-major-116 snd
alias snd-card-0 snd-[soundcard-name]
alias sound-slot-0 snd-card-0
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-midi
EOF
[soundcard-name] needs to be replaced with the driver relevant to your soundcard. If you have more than one soundcard, you can add additional sections by repeating the above but changing the first 0 to 1 and so on.
After editing /etc/modules.conf you need to run depmod. If the drivers you have compiled are for the version of the kernel you are currently running, simply run
depmod
If you are compiling drivers for a different kernel version than those you are running, you will need to use a line along the lines of:
depmod -a 2.4.22 -F /boot/System.map-2.4.22
The ALSA Driver package contains the ALSA sound card drivers and include files.