]>
Commit | Line | Data |
---|---|---|
51bc9add | 1 | #!/bin/sh |
2 | # | |
3 | # powernowd Starts the powernowd daemon | |
4 | # | |
5 | # chkconfig: 345 45 55 | |
6 | # description: Reduce cpu frequency when idle | |
7 | # processname: powernowd | |
8 | # | |
9 | # pidfile: /var/run/powernowd.pid | |
10 | ||
11 | # Source function library. | |
12 | . /etc/rc.d/init.d/functions | |
13 | ||
14 | # Configuration file. | |
15 | . /etc/sysconfig/powernowd | |
16 | ||
601d7d43 ER |
17 | SYSDIR="/sys/devices/system/cpu/cpu0/cpufreq" |
18 | ||
51bc9add | 19 | RETVAL=0 |
20 | # See how we were called. | |
21 | case "$1" in | |
22 | start) | |
23 | # Start daemons. | |
24 | if [ ! -f /var/lock/subsys/powernowd ]; then | |
25 | LOADMODULE="no" | |
601d7d43 | 26 | if [ ! -f $SYSDIR/scaling_available_governors ]; then |
51bc9add | 27 | LOADMODULE="yes" |
28 | else | |
601d7d43 | 29 | if grep -q userspace $SYSDIR/scaling_available_governors; then |
51bc9add | 30 | LOADMODULE="yes" |
31 | fi | |
32 | fi | |
33 | if [ "$LOADMODULE" -eq "yes" ]; then | |
34 | _modprobe cpufreq_userspace | |
35 | fi | |
601d7d43 ER |
36 | |
37 | ARGS="" | |
38 | ARGS="$ARGS ${OPERATION_MODE:+-m $OPERATION_MODE}" | |
39 | ARGS="$ARGS ${FREQUENCY_STEP:+-s $FREQUENCY_STEP}" | |
40 | ARGS="$ARGS ${POLLING_FREQUENCY:+-p $POLLING_FREQUENCY}" | |
41 | ARGS="$ARGS ${THREADS_COUNT:+-c $THREADS_COUNT}" | |
42 | ARGS="$ARGS ${CPU_UPPER:+-u $CPU_UPPER}" | |
43 | ARGS="$ARGS ${CPU_LOWER:+-l $CPU_LOWER}" | |
44 | ARGS="$ARGS ${PROGRAM_ARGS}" | |
45 | ||
51bc9add | 46 | # starting: |
601d7d43 ER |
47 | msg_starting powernowd |
48 | daemon powernowd $ARGS | |
51bc9add | 49 | RETVAL=$? |
50 | [ $RETVAL -eq 0 ] && touch /var/lock/subsys/powernowd | |
51 | else | |
52 | msg_already_running powernowd | |
53 | fi | |
54 | ;; | |
55 | stop) | |
56 | # Stop daemons. | |
57 | if [ -f /var/lock/subsys/powernowd ]; then | |
58 | msg_stopping powernowd | |
59 | killproc powernowd | |
60 | rm -f /var/lock/subsys/powernowd >/dev/null 2>&1 | |
61 | else | |
62 | msg_not_running powernowd | |
63 | fi | |
64 | ;; | |
65 | reload|force-reload) | |
66 | if [ -f /var/lock/subsys/powernowd ]; then | |
67 | msg_reloading powernowd | |
68 | killproc powernowd -HUP | |
69 | RETVAL=$? | |
70 | else | |
71 | msg_not_running powernowd >&2 | |
72 | exit 7 | |
73 | fi | |
74 | ;; | |
75 | restart) | |
76 | $0 stop | |
77 | $0 start | |
78 | exit $? | |
79 | ;; | |
80 | status) | |
81 | status powernowd | |
82 | exit $? | |
83 | ;; | |
84 | *) | |
85 | msg_usage "$0 {start|stop|restart|reload|force-reload|status}" | |
86 | exit 3 | |
87 | esac | |
88 | ||
89 | exit $RETVAL |