Re: [maillist] Sound-Problem bzw. Vorschlag f. DLD 6.2

Frank Schneider (SPATZ1@t-online.de)
Mon, 02 Aug 1999 18:24:34 +0200

(...)
> > Wie bringe ich der DLD 6.01 bei, das sie beim Laden dieses Moduls
> > gefälligst den Parameter
> > "dmabuf=1" mitübergeben soll ?
> > Da die OSS-Module "soundcore", "sound" augenscheinlich nirgendo explizit
> > geladen werden (ein "grep "insmod sound" /etc/init.d/*" ergibt
> > jedenfalls keine Teffer) war ich etwas ratlos.
> Such in der /etc/conf.modules. Dort wird mit
> alias sound sb
> options sb io=[blabla]
> der Soundblaster eingetragen. Der Kerneld laedt dann, wenn der
> SoundBlaster gebraucht wird, das sb-Modul rein, und da das andere Module
> braucht, werden die mit reingeladen.
> Um dem sound Parameter zu uebergeben, musste dann ein
> options sound dmabuf=1
> in /etc/conf.modules funktionieren (oder vielleicht auch nicht, da
> sound ein alias auf sb ist).

Hallo...

Genau da liegt der Knackpunkt, über den ich auch gefallen bin.

Da scheints noch mehr das Problem haben, hier meine Lösung:

---------/etc/init.d/sound----------
(...)
#Horrible Hack, um dem Modul "SOUND" den Parameter "dmabuf=1" uebergeben
#zu koennen. Verhindert "Could not allocate DMA Buffer"-Meldungen

sb_options=`/bin/grep "options sb" /etc/conf.modules | cut -d " " -f 3-`
subsys_parameter=$1
LOCKDIR=/var/lock/subsys
STARTUP_OK=0
STARTUP_FAIL=1
STARTUP_NA=2
##############################################################################
(...)
start)
start_and_stop
#Horrible Hack, damit der DMA-Buffer für den Sound immer
erhalten
#bleibt, muss dem SOUND-Modul der Parameter dmabuf=1 uebergeben
werden
/sbin/insmod /lib/modules/2.2.10/misc/soundcore.o
/sbin/insmod /lib/modules/2.2.10/misc/sound.o dmabuf=1
/sbin/insmod /lib/modules/2.2.10/misc/uart401.o
/sbin/insmod /lib/modules/2.2.10/misc/sb.o $sb_options
if [ -x /usr/bin/aumix ]; then
[ -n "$volume" ] || volume=80
logexec /usr/bin/aumix -v $volume
logexec /usr/bin/aumix -c $volume
fi
echo " "
exit $FAIL
;;
*)
echo "Usage: sound {start|start_msg}"
#Soundmodule entladen
/sbin/rmmod sb
/sbin/rmmod uart401
/sbin/rmmod sound
/sbin/rmmod soundcore
exit $STARTUP_FAIL
;;
esac

exit $STARTUP_OK
--------------------------------------

Wie gesagt, so tuts bis jetzt einwandfrei.

Eine elegantere Lösung hab ich noch ned gefunden....

Solong...
mfg Frank.

--
Frank Schneider, <SPATZ1@T-ONLINE.DE>.                           
-Linux, because: Who needs Gates in a fenceless World ??
... -.-