From 4173b15407bf4508f6ed739600871755308cc93b Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 12 Aug 2013 00:01:37 +0200 Subject: [PATCH] linux: port cpupower init scripts to systemd Signed-off-by: Stephan Raue --- packages/linux/init.d/02_cpupower | 38 ------------------- packages/linux/install | 3 ++ packages/linux/system.d/cpupower-end.service | 11 ++++++ packages/linux/system.d/cpupower-end.timer | 8 ++++ .../linux/system.d/cpupower-start.service | 11 ++++++ 5 files changed, 33 insertions(+), 38 deletions(-) delete mode 100644 packages/linux/init.d/02_cpupower create mode 100644 packages/linux/system.d/cpupower-end.service create mode 100644 packages/linux/system.d/cpupower-end.timer create mode 100644 packages/linux/system.d/cpupower-start.service diff --git a/packages/linux/init.d/02_cpupower b/packages/linux/init.d/02_cpupower deleted file mode 100644 index 72ef6d279b..0000000000 --- a/packages/linux/init.d/02_cpupower +++ /dev/null @@ -1,38 +0,0 @@ -################################################################################ -# Copyright (C) 2009-2010 OpenELEC.tv -# http://www.openelec.tv -# -# This Program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# This Program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with OpenELEC.tv; see the file COPYING. If not, write to -# the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110, USA. -# http://www.gnu.org/copyleft/gpl.html -################################################################################ - -# -# set cpupower to 'performance' -# -# runlevels: openelec, textmode - -progress "set cpu's to full power" - for i in /sys/devices/system/cpu/*/cpufreq/scaling_governor; do - printf "performance" > $i - done 2>/dev/null - -( - usleep 40000000 - progress "set cpu's to 'ondemand'" - for i in /sys/devices/system/cpu/*/cpufreq/scaling_governor; do - printf "ondemand" > $i - done 2>/dev/null -)& - diff --git a/packages/linux/install b/packages/linux/install index f5f56f1327..4e0f9ef455 100755 --- a/packages/linux/install +++ b/packages/linux/install @@ -49,3 +49,6 @@ if [ "$PERF_SUPPORT" = "yes" -a "$DEVTOOLS" = "yes" ]; then cp -P $PKG_BUILD/tools/perf/perf-archive $INSTALL/usr/libexec/perf-core/ cp -rP $PKG_BUILD/tools/perf/scripts/python/* $INSTALL/usr/libexec/perf-core/scripts/python/ fi + +enable_service cpupower-start.service +enable_service cpupower-end.timer diff --git a/packages/linux/system.d/cpupower-end.service b/packages/linux/system.d/cpupower-end.service new file mode 100644 index 0000000000..4dfdcbb03f --- /dev/null +++ b/packages/linux/system.d/cpupower-end.service @@ -0,0 +1,11 @@ +[Unit] +Description=Set cpupower to ondemand +After=local-fs.target + +[Service] +Type=oneshot +ExecStart=/bin/sh -c 'for i in /sys/devices/system/cpu/*/cpufreq/scaling_governor; do printf "ondemand" > $i; done' +RemainAfterExit=yes + +[Install] +WantedBy=sysinit.target diff --git a/packages/linux/system.d/cpupower-end.timer b/packages/linux/system.d/cpupower-end.timer new file mode 100644 index 0000000000..ed12cd94b1 --- /dev/null +++ b/packages/linux/system.d/cpupower-end.timer @@ -0,0 +1,8 @@ +[Unit] +Description=Set cpupower to ondemand + +[Timer] +OnBootSec=40sec + +[Install] +WantedBy=sysinit.target diff --git a/packages/linux/system.d/cpupower-start.service b/packages/linux/system.d/cpupower-start.service new file mode 100644 index 0000000000..f83c99c912 --- /dev/null +++ b/packages/linux/system.d/cpupower-start.service @@ -0,0 +1,11 @@ +[Unit] +Description=Set cpupower to performance +After=local-fs.target + +[Service] +Type=oneshot +ExecStart=/bin/sh -c 'for i in /sys/devices/system/cpu/*/cpufreq/scaling_governor; do printf "performance" > $i; done' +RemainAfterExit=yes + +[Install] +WantedBy=sysinit.target