Sound driver as a module.
Loading modules manually.

It is always recommended to compile sound driver as a module.
You must have a module for the sound card, if your card is a PnP card.

A sound module is stored in /lib/modules/x.x.x/misc, where x.x.x is Linux version

ls /lib/modules/2.2.9/misc
ad1848.o joystick-0.8.0.o opl3.o soundcore.o
adlib_card.o joystick.o parport.o soundlow.o
awe_wave.o lp.o parport_pc.o sunrpc.o
gus.o mad16.o sb.o uart401.o
joy-analog.o nvram.o sound.o

How to get list of current modules:
more /proc/modules

Module Size Used by
joystick-0.8.0 2728 0 (unused)
opl3 10244 0
gus 45016 0
sr_mod 15804 0 (unused)
scsi_mod 35228 1 [sr_mod]
smbfs 24584 0 (unused)
binfmt_aout 3704 0
hp-plus 3728 1
8390 5944 0 [hp-plus]
bsd_comp 3468 0 (unused)
ppp 19324 0 [bsd_comp]
slhc 4128 0 [ppp]
lp 4264 1
parport_pc 5488 1
parport 6484 1 [lp parport_pc]
awe_wave 155560 0
sb 31416 0
uart401 5588 0 [sb]
sound 54396 0 [opl3 gus awe_wave sb uart401]
soundlow 208 0 [sound]
soundcore 2088 10 [sb sound]

Manual installation of modules

Utilities (usually located in /sbin):

depmod module - creates dependancy table (modules.dep)

modprobe - load a module with all dependant modules that aren't loaded yet
(use -r option to remove instead of load)

insmod - load a module (alone)

rmmod - remove a module.

Extract from /etc/rc.d/rc.modules (Slackware example, works with Redhat and other systems):

echo "Updating module dependencies for Linux `uname -r`:"
/sbin/depmod -a
/sbin/modprobe parport_pc.o io=0x378 irq=7
/sbin/modprobe lp
# The only line needed with Linux 2.0
# /sbin/modprobe sound
# Loading Sound drivers for 2.2.9
# Sound Blaster generic driver
/sbin/modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
# A slighty more efficient way would be using 'insmod' instead of 'modprobe'
# for the remainig lines.
# Gravis Ultrasound driver (need to change io, if used on the same computer)
/sbin/modprobe gus io=0x240 irq=11 dma=3 gus16=1 no_wave_dma
# Supporting AWE wave table
/sbin/modprobe awe_wave
# Supporting FM
/sbin/modprobe opl3

Use of depmod:
more /lib/modules/2.2.9/modules.dep

/lib/modules/2.2.9/misc/sound.o: /lib/modules/2.2.9/misc/soundcore.o /lib/modules/2.2.9/misc/soundlow.o
/lib/modules/2.2.9/misc/sb.o: /lib/modules/2.2.9/misc/soundcore.o /lib/modules/2.2.9/misc/uart401.o /lib/modules/2.2.9/misc/sound.o
/lib/modules/2.2.9/misc/opl3.o: /lib/modules/2.2.9/misc/sound.o
/lib/modules/2.2.9/misc/mad16.o: /lib/modules/2.2.9/misc/ad1848.o /lib/modules/2.2.9/misc/sound.o /lib/modules/2.2.9/misc/uart401.o
/lib/modules/2.2.9/misc/gus.o: /lib/modules/2.2.9/misc/sound.o
/lib/modules/2.2.9/misc/awe_wave.o: /lib/modules/2.2.9/misc/sound.o
/lib/modules/2.2.9/misc/adlib_card.o: /lib/modules/2.2.9/misc/opl3.o /lib/modules/2.2.9/misc/sound.o
/lib/modules/2.2.9/misc/ad1848.o: /lib/modules/2.2.9/misc/sound.o

Back Next