]> git.pld-linux.org Git - packages/acpid.git/blame - acpid.init
- IBM_LAPTOP is back (thinkpad_acpi module)
[packages/acpid.git] / acpid.init
CommitLineData
94f6e9a1
PG
1#!/bin/sh
2#
3# acpid Starts the acpi daemon
4#
5# chkconfig: 345 44 56
6# description: Listen and dispatch ACPI events from the kernel
7# processname: acpid
8#
9# pidfile: /var/run/acpid.pid
10
180a2240
ER
11# Check for ACPI event-file support on kernel side
12[ -r /proc/acpi/event ] || exit 0
13
94f6e9a1
PG
14# Source function library.
15. /etc/rc.d/init.d/functions
16
d8325167
PG
17# Initial values (just in case):
18LAPTOP_MODULES=""
19VARIOUS_MODULES=""
20ASUS_LAPTOP=""
21TOSHIBA_LAPTOP=""
180a2240 22MODULES=""
d8325167 23
94f6e9a1
PG
24# Configuration file.
25. /etc/sysconfig/acpid
26
180a2240
ER
27# As the name says. If the kernel supports modules,
28# it'll try to load the ones listed in "MODULES".
29load_modules() {
30 [ -f /proc/modules ] || return 0
31
32 if [ "$MODULES" = "all" ]; then
33 MODULES=$(sed -rn 's#^kernel/(drivers|misc)/acpi/([^/]+/)*(.*)\.ko(\.gz)?:.*#\3#p' /lib/modules/$(uname -r)/modules.dep)
34 else
35 # assemble from old lists
36 MODULES="$MODULES $LAPTOP_MODULES"
37 MODULES="$MODULES $VARIOUS_MODULES"
38 if is_yes "$ASUS_LAPTOP"; then
39 MODULES="$MODULES asus_acpi"
40 fi
41 if is_yes "$TOSHIBA_LAPTOP"; then
42 MODULES="$MODULES toshiba_acpi"
43 fi
44 if is_yes "$IBM_LAPTOP"; then
45 MODULES="$MODULES ibm_acpi"
46 fi
47 # strip spaces
48 MODULES=$(echo ${MODULES})
49 fi
50
51 if [ -z "$MODULES" ]; then
52 return
53 fi
54
55 show "Loading ACPI modules..."; busy
56 modprobe --all $MODULES && ok || fail
57}
58
37b4ae3e
ER
59# Start daemons.
60start() {
a312611c 61 if [ -f /var/lock/subsys/acpid ]; then
121466a7
ER
62 msg_already_running "ACPI Event Daemon"
63 return
64 fi
09f3d1d4 65
180a2240 66 load_modules
121466a7
ER
67
68 # starting:
69 msg_starting "ACPI Event Daemon"
70 daemon /usr/sbin/acpid $PROGRAM_ARGS
71 RETVAL=$?
72 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/acpid
37b4ae3e
ER
73}
74
75# Stop daemons.
76stop() {
121466a7
ER
77 if [ ! -f /var/lock/subsys/acpid ]; then
78 msg_not_running "ACPI Event Daemon"
79 return
80 fi
81
82 msg_stopping "ACPI Event Daemon"
83 killproc acpid
84 rm -f /var/lock/subsys/acpid >/dev/null 2>&1
85}
86
87condrestart() {
88 if [ ! -f /var/lock/subsys/acpid ]; then
89 msg_not_running "ACPI Event Daemon"
90 RETVAL=$1
91 return
c0743e1f 92 fi
121466a7
ER
93
94 stop
95 start
37b4ae3e
ER
96}
97
98RETVAL=0
99# See how we were called.
100case "$1" in
101 start)
102 start
103 ;;
104 stop)
105 stop
106 ;;
107 restart)
108 stop
109 start
c0743e1f 110 ;;
121466a7
ER
111 try-restart)
112 condrestart 0
113 ;;
1b772a07 114 reload|force-reload)
c0743e1f 115 if [ -f /var/lock/subsys/acpid ]; then
121466a7 116 msg_reloading "ACPI Event Daemon"
c0743e1f 117 killproc acpid -HUP
118 RETVAL=$?
c0743e1f 119 else
121466a7 120 msg_not_running "ACPI Event Daemon"
1b772a07 121 exit 7
c0743e1f 122 fi
123 ;;
c0743e1f 124 status)
125 status acpid
126 ;;
127 *)
121466a7 128 msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|status}"
1b772a07 129 exit 3
94f6e9a1 130esac
c0743e1f 131
132exit $RETVAL
This page took 0.243985 seconds and 4 git commands to generate.