The most merciful thing in the world is the inability of the human mind to correlate all its contents.
H. P. Lovecraft
Marooned

I installed a linux beta kernel (2.5.66) today. Because it is not 100% trivial I will explain how to use this together with ALSA.

First, the alsa driver in the kernel is old. So download alsa-driver.tar.gz and unzip it. Copy the alsa-kernel directory into the sound directory in the kernel source directory.

Now you can make clean; make mrproper and make config your kernel. Then make bzImage (no make dep is needed in the beta kernel). Read a kernel howto if you don't understand this part :-). You can build alsa as module (load it the same way as with 2.4 kernels) or in the kernel itself. I advise every desktop user to set the pre-emptive switch, it helps audio playback a lot.

If this works you should have a /proc/asound with information about your audiocard(s). Probably you can't play sound at this moment. The reason behind this is that you need to create the devices. This can be done in two ways:

1) Use the devfs (device filesystem). Since you need to have a patched kernel for this, you probably don't want this and if you do, you should know.
2) Easiest way: Use the snddevices script in the alsa-driver.tar.gz to setup the devices. This will leave you with a /dev/dsp which is not writable by all users (and so not al users can play audio), so use chmod to fix this.

It is not necessary to compile the alsa-libs.tar.gz and the alsa-utils.tar.gz but I recommend this. The libs are used by a lot of programs and the utils useful (aplay and amixer).

Volume: a lot of people think their setup doesn't work, while in reality the sound is muted (alsa's default). Use amixer or alsamixer to set the volume to your preferred loudness. Then use the alsactl store command to save the settings. If you wan't to have this settings at startup, you can add alsactl restore to your /etc/rc.d/rc.local file.

Good luck with your new alsa-enabled kernel! Comments are welcome.

-- Filed under:

Posted by jochem on 2003-04-02, last update on 2003-04-02