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

Joachim von Thadden (thadden@call-a-server.de)
Mon, 02 Aug 1999 22:37:04 +0200

Frank Schneider wrote:
>
> (...)
> > > 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 ??
> ... -.-

nee, nee, das ist unnötig. In /etc/conf.modules muß einfach nur

options sound dmabuf=1 # enables DMA-Buffer allocation in the
first 16 MB during first module start

eingetragen werden, dann läuft's (wie bei meinem Schlaptop). Alles klar?
Auf keinen Fall sollte man das obige Beispiel verwenden, denn es
wiederspricht dem Gedanken flexibler, ladbarer Module mit klaren,
selbstauflösenden Abhängigkeiten.

-- 
Mit freundlichen Grüßen/Sincerely
	Joachim von Thadden
    "Never run a touching system!"

------------------------------------------------------------------- Call-a-Server LINUX-Systempartner Netzwerkbetreuung . Sicherheitskonzepte . Softwareerstellung www.call-a-server.de fax (030) 801 74 23 thadden@call-a-server.de phone (0177) 717 08 96