aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Lezcano <daniel.lezcano@linaro.org>2011-08-05 15:01:42 +0200
committerDaniel Lezcano <daniel.lezcano@linaro.org>2011-08-05 15:01:42 +0200
commit5fd218318ddcd80b47e2b110d5f94c01f027c465 (patch)
tree78404763c44ae5b971230d9388c690e5e5a22cb4
parentd794172019bac0326615285ab9a33f2980d264a9 (diff)
test_04 : check we can change sched_mc policy
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
-rw-r--r--sched_mc/test_04.sh70
1 files changed, 70 insertions, 0 deletions
diff --git a/sched_mc/test_04.sh b/sched_mc/test_04.sh
new file mode 100644
index 0000000..4d7cfc1
--- /dev/null
+++ b/sched_mc/test_04.sh
@@ -0,0 +1,70 @@
+#!/bin/bash
+#
+# PM-QA validation test suite for the power management on ARM
+#
+# Copyright (C) 2011, Linaro Limited.
+#
+# 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
+# of the License, 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 this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+# Contributors:
+# Daniel Lezcano <daniel.lezcano@linaro.org> (IBM Corporation)
+# - initial API and implementation
+#
+
+# URL : https://wiki.linaro.org/WorkingGroups/PowerManagement/Doc/QA/Scripts#sched_mc_04
+
+source ../include/functions.sh
+
+check_change() {
+ local val=$1
+ local path=$2
+
+ echo $val > $path
+}
+
+check_invalid_change() {
+
+ local val=$1
+ local path=$2
+
+ echo $val > $path
+ if [ "$?" != "0" ]; then
+ return 0
+ fi
+
+ return 1
+}
+
+check_sched_mc_change() {
+
+ local path=$CPU_PATH/sched_mc_power_savings
+ local oldval=$(cat $path)
+
+ check "setting value to 0" check_change 0 $path
+ check "setting value to 1" check_change 1 $path
+ check "setting value to 2" check_change 2 $path
+ check "setting invalid value to 3" check_invalid_change 3 $path
+ check "setting invalid value to -1" check_invalid_change -1 $path
+
+ echo $oldval > $path
+}
+
+if [ $(id -u) != 0 ]; then
+ log_skip "run as non-root"
+ exit 0
+fi
+
+# check_sched_mc_files sched_mc_power_savings || exit 1
+check_sched_mc_change