aboutsummaryrefslogtreecommitdiff
path: root/init.d.FreeBSD/powerd
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2008-01-11 22:29:12 +0000
committerRoy Marples <roy@marples.name>2008-01-11 22:29:12 +0000
commit0ec43dfe47c462fdf268635d30627d80c8b0b5de (patch)
tree86e2413844b208f95c5637e578eb54bdc3903781 /init.d.FreeBSD/powerd
parente4e18d21ed67f045b147fe13d80e148b0cc2a0dc (diff)
These are FreeBSD specific
Diffstat (limited to 'init.d.FreeBSD/powerd')
-rw-r--r--init.d.FreeBSD/powerd34
1 files changed, 34 insertions, 0 deletions
diff --git a/init.d.FreeBSD/powerd b/init.d.FreeBSD/powerd
new file mode 100644
index 00000000..3d3ae7f0
--- /dev/null
+++ b/init.d.FreeBSD/powerd
@@ -0,0 +1,34 @@
+#!/sbin/runscript
+# Copyright 2007-2008 Roy Marples <roy@marples.name>
+# All rights reserved. Released under the 2-clause BSD license.
+
+command=/usr/sbin/powerd
+command_args=${powerd_args}
+pidfile=/var/run/powerd.pid
+name="Power Control Daemon"
+
+depend()
+{
+ need localmount
+ use logger
+ after bootmisc
+}
+
+start_pre()
+{
+ if [ -n "${powerd_battery_mode}" ]; then
+ command_args="${command_args} -b ${powerd_battery_mode}"
+ fi
+ if [ -n "${powerd_ac_mode}" ]; then
+ command_args="${command_args} -a ${powerd_ac_mode}"
+ fi
+}
+
+stop_post()
+{
+ local level=$(sysctl -n dev.cpu.0.freq_levels |
+ sed -e 's:/.*::')
+ if [ -n "${level}" ]; then
+ sysctl dev.cpu.0.freq="${level}" >/dev/null
+ fi
+}