3 # acpid Starts the acpi daemon
6 # description: Listen and dispatch ACPI events from the kernel
9 # pidfile: /var/run/acpid.pid
11 # Check for ACPI event-file support on kernel side
12 [ -r /proc/acpi/event ] || exit 0
14 # Source function library.
15 . /etc/rc.d/init.d/functions
17 upstart_controlled --except load-modules
19 # Initial values (just in case):
27 . /etc/sysconfig/acpid
29 # As the name says. If the kernel supports modules,
30 # it'll try to load the ones listed in "MODULES".
32 [ -f /proc/modules ] || return 0
34 if [ "$MODULES" = "all" ]; then
35 MODULES=$(sed -rn 's#^kernel/(drivers/acpi|drivers/misc/.*_acpi)/([^/]+/)*(.*)\.ko\.gz:.*#\3#p' /lib/modules/$(uname -r)/modules.dep)
37 # assemble from old lists
38 MODULES="$MODULES $LAPTOP_MODULES"
39 MODULES="$MODULES $VARIOUS_MODULES"
40 if is_yes "$ASUS_LAPTOP"; then
41 MODULES="$MODULES asus_acpi"
43 if is_yes "$TOSHIBA_LAPTOP"; then
44 MODULES="$MODULES toshiba_acpi"
46 if is_yes "$IBM_LAPTOP"; then
47 MODULES="$MODULES ibm_acpi"
50 MODULES=$(echo ${MODULES})
53 if [ -z "$MODULES" ]; then
57 # see if the modules are already loaded
58 if [ "$(lsmod | grep -E '^('$(echo $MODULES | tr ' ' '|')')\b' | wc -l)" = "$(echo $MODULES | wc -w)" ]; then
62 show "Loading ACPI modules..."; busy
63 modprobe --all $MODULES && ok || fail
68 if [ -f /var/lock/subsys/acpid ]; then
69 msg_already_running "ACPI Event Daemon"
75 if is_yes "$NETLINK"; then
76 PROGRAM_ARGS="$PROGRAM_ARGS -n"
78 if [ "$CLIENTMAX" ]; then
79 PROGRAM_ARGS="$PROGRAM_ARGS -C $CLIENTMAX"
83 msg_starting "ACPI Event Daemon"
84 daemon /usr/sbin/acpid $PROGRAM_ARGS
86 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/acpid
91 if [ ! -f /var/lock/subsys/acpid ]; then
92 msg_not_running "ACPI Event Daemon"
96 msg_stopping "ACPI Event Daemon"
98 rm -f /var/lock/subsys/acpid >/dev/null 2>&1
102 if [ ! -f /var/lock/subsys/acpid ]; then
103 msg_not_running "ACPI Event Daemon"
113 if [ -f /var/lock/subsys/acpid ]; then
114 msg_not_running "ACPI Event Daemon"
119 msg_reloading "ACPI Event Daemon"
125 # See how we were called.
150 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|load-modules|status}"