mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-06 06:37:13 +08:00
57 lines
1.2 KiB
Plaintext
57 lines
1.2 KiB
Plaintext
|
#!/bin/bash
|
||
|
|
||
|
. /etc/rc.conf
|
||
|
. /etc/conf.d/alsa
|
||
|
. /etc/rc.d/functions
|
||
|
|
||
|
case "$1" in
|
||
|
start)
|
||
|
stat_busy "Restoring ALSA Levels"
|
||
|
/usr/sbin/alsactl $ALSA_ARGS restore
|
||
|
if [ $? -gt 0 ]; then
|
||
|
stat_fail
|
||
|
else
|
||
|
stat_done
|
||
|
add_daemon alsa
|
||
|
fi
|
||
|
|
||
|
POWERSAVE=${POWERSAVE:-0}
|
||
|
if [ -e /sys/module/snd_ac97_codec/parameters/power_save \
|
||
|
-a $POWERSAVE -ne 0 ]; then
|
||
|
echo $POWERSAVE > /sys/module/snd_ac97_codec/parameters/power_save
|
||
|
[ -c /dev/dsp ] && echo 1 > /dev/dsp
|
||
|
fi
|
||
|
|
||
|
if [ -e /sys/module/snd_hda_intel/parameters/power_save \
|
||
|
-a $POWERSAVE -ne 0 ]; then
|
||
|
echo $POWERSAVE > /sys/module/snd_hda_intel/parameters/power_save
|
||
|
[ -c /dev/dsp ] && echo 1 > /dev/dsp
|
||
|
fi
|
||
|
;;
|
||
|
stop)
|
||
|
SAVE_VOLUME=${SAVE_VOLUME:-yes}
|
||
|
if [ "$SAVE_VOLUME" == "yes" ]; then
|
||
|
stat_busy "Saving ALSA Levels"
|
||
|
/usr/sbin/alsactl $ALSA_ARGS store
|
||
|
else
|
||
|
stat_busy "Stopping ALSA"
|
||
|
fi
|
||
|
if [ "$MUTE_VOLUME" == "yes" ]; then
|
||
|
/usr/bin/amixer -q set Master 0 mute
|
||
|
fi
|
||
|
if [ $? -gt 0 ]; then
|
||
|
stat_fail
|
||
|
else
|
||
|
stat_done
|
||
|
rm_daemon alsa
|
||
|
fi
|
||
|
;;
|
||
|
restart)
|
||
|
$0 stop
|
||
|
sleep 1
|
||
|
$0 start
|
||
|
;;
|
||
|
*)
|
||
|
echo "usage: $0 {start|stop|restart}"
|
||
|
esac
|