Update of /cvsroot/devil-linux/build/scripts/scripts
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11397/scripts/scripts
Modified Files:
Tag: rel-1-2-patches
alsa-driver
Log Message:
alsa-driver init script now supports saving/restoring of mixer settings
(Heiko / Roland Pabel)
Index: alsa-driver
===================================================================
RCS file: /cvsroot/devil-linux/build/scripts/scripts/alsa-driver,v
retrieving revision 1.6
retrieving revision 1.6.2.1
diff -u -d -r1.6 -r1.6.2.1
--- alsa-driver 7 Jan 2004 22:27:20 -0000 1.6
+++ alsa-driver 24 Jun 2004 00:32:35 -0000 1.6.2.1
@@ -14,6 +14,7 @@
# parameters
NAME="alsa drivers"
+CONFIGFILE=/etc/asound.state
CONFIGNAME=ALSA_DRIVER
DAEMON=
PARAMETER=
@@ -31,6 +32,36 @@
test $link = $base && START=yes
test "$START" = "yes" || exit 0
+function restore_mixer() {
+ echo -n "Restoring state of $NAME: "
+ # load mixer
+ if [ -d /proc/asound ]; then
+ if [ -r $CONFIGFILE ]; then
+ /sbin/alsactl restore -f $CONFIGFILE
+ else
+ echo "No mixer config found, using default. "
+ /bin/amixer -c0 sset Master,0 80% unmute
+ /bin/amixer -c0 sset Headphone,0 80% unmute
+ /bin/amixer -c0 sset PCM,0 60% unmute
+ echo -en "Use '$0 save' to save your config"
+ fi
+ print_status success
+ else
+ print_status failure
+ fi
+}
+
+function store_mixer() {
+ echo -en "Saving state of $NAME: "
+ # save mixer
+ if [ -d /proc/asound ]; then
+ /sbin/alsactl store -f $CONFIGFILE
+ print_status success
+ return;
+ fi
+ print_status failure
+}
+
case "$1" in
start)
echo -en "Loading $NAME: "
@@ -38,9 +69,7 @@
modprobe snd-pcm-oss
modprobe snd-mixer-oss
print_status success
- /bin/amixer -c0 sset Master,0 80% unmute
- /bin/amixer -c0 sset Headphone,0 80% unmute
- /bin/amixer -c0 sset PCM,0 60% unmute
+ restore_mixer
;;
stop)
echo -en "UnLoading $NAME: "
@@ -58,6 +87,9 @@
rmmod snd-page-alloc
print_status success
;;
+ save)
+ store_mixer
+ ;;
restart)
$0 stop
sleep 1
|