summaryrefslogtreecommitdiff
path: root/community/cpupower
diff options
context:
space:
mode:
Diffstat (limited to 'community/cpupower')
-rw-r--r--community/cpupower/PKGBUILD43
-rw-r--r--community/cpupower/conf14
-rw-r--r--community/cpupower/rc31
3 files changed, 88 insertions, 0 deletions
diff --git a/community/cpupower/PKGBUILD b/community/cpupower/PKGBUILD
new file mode 100644
index 000000000..f336126b8
--- /dev/null
+++ b/community/cpupower/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id: PKGBUILD 59600 2011-11-28 20:02:34Z seblu $
+# Maintainer: Sebastien Luttringer <seblu+arch@seblu.net>
+
+pkgname=cpupower
+pkgver=3.1.3
+pkgrel=1
+pkgdesc="Linux kernel power tool"
+license=('GPL2')
+arch=('i686' 'x86_64')
+url='http://www.kernel.org'
+backup=('etc/conf.d/cpupower')
+options=(!strip !buildflags)
+depends=('pciutils')
+conflicts=('cpufrequtils')
+provides=("cpufrequtils=$pkgver")
+source=(
+ "http://ftp.kernel.org/pub/linux/kernel/v3.0/linux-$pkgver.tar.xz"
+ 'rc'
+ 'conf'
+)
+md5sums=('d15080e5be9c05e6981320232ca68e3f'
+ 'd8b119eff7dc1a2d655eb71a47fa6215'
+ '218fd36a7957d3170ed8bd1a0be1f62f')
+
+build() {
+ cd linux-$pkgver/tools/power/cpupower
+ make
+}
+
+package() {
+ cd linux-$pkgver/tools/power/cpupower
+ make \
+ DESTDIR="$pkgdir" \
+ INSTALL='/bin/install -c' \
+ mandir='/usr/share/man' \
+ docdir='/usr/share/doc/cpupower' \
+ install install-man
+ # install rc.d script
+ install -D -m 755 "$srcdir/rc" "$pkgdir/etc/rc.d/cpupower"
+ install -D -m 644 "$srcdir/conf" "$pkgdir/etc/conf.d/cpupower"
+}
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/cpupower/conf b/community/cpupower/conf
new file mode 100644
index 000000000..0f56836b1
--- /dev/null
+++ b/community/cpupower/conf
@@ -0,0 +1,14 @@
+# valid governors:
+# ondemand, performance, powersave,
+# conservative, userspace
+#governor="ondemand"
+
+# limit frequency range (optional)
+# valid suffixes: Hz, kHz (default), MHz, GHz, THz
+#min_freq="2.25GHz"
+#max_freq="3GHz"
+
+# use freq to set up the exact cpu frequency using it with userspace governor
+#freq=
+
+# vim:set ts=2 sw=2 ft=sh et:
diff --git a/community/cpupower/rc b/community/cpupower/rc
new file mode 100644
index 000000000..812637b61
--- /dev/null
+++ b/community/cpupower/rc
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+[[ -f /etc/conf.d/cpupower ]] && . /etc/conf.d/cpupower
+
+case "$1" in
+ start|restart)
+ stat_busy "Setting cpupower rules"
+
+ declare params=''
+ if [[ "$governor" ]]; then
+ params="-g $governor "
+ params+="${min_freq:+-d $min_freq} "
+ params+="${max_freq:+-u $max_freq} "
+ params+="${freq:+-f $freq} "
+ cpupower frequency-set $params >/dev/null || { stat_fail; exit 1; }
+ stat_done
+ else
+ stat_append ': Invalid configuration'
+ stat_fail
+ fi
+ ;;
+ *)
+ echo "usage: $0 {start|restart}"
+esac
+
+true
+
+# vim:set ts=2 sw=2 ft=sh et: