--- /dev/null
+#!/bin/sh
+#
+# powernowd Starts the powernowd daemon
+#
+# chkconfig: 345 45 55
+# description: Reduce cpu frequency when idle
+# processname: powernowd
+#
+# pidfile: /var/run/powernowd.pid
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+# Configuration file.
+. /etc/sysconfig/powernowd
+
+RETVAL=0
+# See how we were called.
+case "$1" in
+ start)
+ # Start daemons.
+ if [ ! -f /var/lock/subsys/powernowd ]; then
+ LOADMODULE="no"
+ if [ ! -f \
+ /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors \
+ ]; then
+ LOADMODULE="yes"
+ else
+ if [ -z "` \
+ grep userspace \
+ /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors \
+ `" ]; then
+ LOADMODULE="yes"
+ fi
+ fi
+ if [ "$LOADMODULE" -eq "yes" ]; then
+ _modprobe cpufreq_userspace
+ fi
+ # starting:
+ msg_starting powernowd $PROGRAM_ARGS
+ daemon powernowd
+ RETVAL=$?
+ [ $RETVAL -eq 0 ] && touch /var/lock/subsys/powernowd
+ else
+ msg_already_running powernowd
+ fi
+ ;;
+ stop)
+ # Stop daemons.
+ if [ -f /var/lock/subsys/powernowd ]; then
+ msg_stopping powernowd
+ killproc powernowd
+ rm -f /var/lock/subsys/powernowd >/dev/null 2>&1
+ else
+ msg_not_running powernowd
+ fi
+ ;;
+ reload|force-reload)
+ if [ -f /var/lock/subsys/powernowd ]; then
+ msg_reloading powernowd
+ killproc powernowd -HUP
+ RETVAL=$?
+ else
+ msg_not_running powernowd >&2
+ exit 7
+ fi
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ exit $?
+ ;;
+ status)
+ status powernowd
+ exit $?
+ ;;
+ *)
+ msg_usage "$0 {start|stop|restart|reload|force-reload|status}"
+ exit 3
+esac
+
+exit $RETVAL