diff mbox

[2/2] change the script name with the block name they refer to

Message ID 1312926349-25633-2-git-send-email-daniel.lezcano@linaro.org
State Accepted
Headers show

Commit Message

Daniel Lezcano Aug. 9, 2011, 9:45 p.m. UTC
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 cpufreq/cpufreq_01.sh |   32 +++++++++++++
 cpufreq/cpufreq_02.sh |   32 +++++++++++++
 cpufreq/cpufreq_03.sh |   51 +++++++++++++++++++++
 cpufreq/cpufreq_04.sh |   54 ++++++++++++++++++++++
 cpufreq/cpufreq_05.sh |   73 ++++++++++++++++++++++++++++++
 cpufreq/cpufreq_06.sh |  117 +++++++++++++++++++++++++++++++++++++++++++++++++
 cpufreq/cpufreq_07.sh |   91 ++++++++++++++++++++++++++++++++++++++
 cpufreq/cpufreq_08.sh |   78 ++++++++++++++++++++++++++++++++
 cpufreq/cpufreq_09.sh |   74 +++++++++++++++++++++++++++++++
 cpufreq/test_01.sh    |   32 -------------
 cpufreq/test_02.sh    |   32 -------------
 cpufreq/test_03.sh    |   51 ---------------------
 cpufreq/test_04.sh    |   54 ----------------------
 cpufreq/test_05.sh    |   73 ------------------------------
 cpufreq/test_06.sh    |  117 -------------------------------------------------
 cpufreq/test_07.sh    |   91 --------------------------------------
 cpufreq/test_08.sh    |   78 --------------------------------
 cpufreq/test_09.sh    |   74 -------------------------------
 sched_mc/sched_01.sh  |   32 +++++++++++++
 sched_mc/sched_02.sh  |   38 ++++++++++++++++
 sched_mc/sched_03.sh  |   33 ++++++++++++++
 sched_mc/sched_04.sh  |   70 +++++++++++++++++++++++++++++
 sched_mc/test_01.sh   |   32 -------------
 sched_mc/test_02.sh   |   38 ----------------
 sched_mc/test_03.sh   |   33 --------------
 sched_mc/test_04.sh   |   70 -----------------------------
 26 files changed, 775 insertions(+), 775 deletions(-)
 create mode 100644 cpufreq/cpufreq_01.sh
 create mode 100644 cpufreq/cpufreq_02.sh
 create mode 100644 cpufreq/cpufreq_03.sh
 create mode 100644 cpufreq/cpufreq_04.sh
 create mode 100644 cpufreq/cpufreq_05.sh
 create mode 100644 cpufreq/cpufreq_06.sh
 create mode 100644 cpufreq/cpufreq_07.sh
 create mode 100644 cpufreq/cpufreq_08.sh
 create mode 100644 cpufreq/cpufreq_09.sh
 delete mode 100755 cpufreq/test_01.sh
 delete mode 100755 cpufreq/test_02.sh
 delete mode 100755 cpufreq/test_03.sh
 delete mode 100755 cpufreq/test_04.sh
 delete mode 100755 cpufreq/test_05.sh
 delete mode 100755 cpufreq/test_06.sh
 delete mode 100755 cpufreq/test_07.sh
 delete mode 100755 cpufreq/test_08.sh
 delete mode 100755 cpufreq/test_09.sh
 create mode 100644 sched_mc/sched_01.sh
 create mode 100644 sched_mc/sched_02.sh
 create mode 100644 sched_mc/sched_03.sh
 create mode 100644 sched_mc/sched_04.sh
 delete mode 100755 sched_mc/test_01.sh
 delete mode 100755 sched_mc/test_02.sh
 delete mode 100755 sched_mc/test_03.sh
 delete mode 100755 sched_mc/test_04.sh
diff mbox

Patch

diff --git a/cpufreq/cpufreq_01.sh b/cpufreq/cpufreq_01.sh
new file mode 100644
index 0000000..8cfbce9
--- /dev/null
+++ b/cpufreq/cpufreq_01.sh
@@ -0,0 +1,32 @@ 
+#!/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#cpufreq_01
+
+source ../include/functions.sh
+
+FILES="scaling_available_frequencies scaling_cur_freq scaling_setspeed"
+
+for_each_cpu check_cpufreq_files $FILES
diff --git a/cpufreq/cpufreq_02.sh b/cpufreq/cpufreq_02.sh
new file mode 100644
index 0000000..212b2eb
--- /dev/null
+++ b/cpufreq/cpufreq_02.sh
@@ -0,0 +1,32 @@ 
+#!/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#cpufreq_02
+
+source ../include/functions.sh
+
+FILES="scaling_available_governors scaling_governor"
+
+for_each_cpu check_cpufreq_files $FILES
diff --git a/cpufreq/cpufreq_03.sh b/cpufreq/cpufreq_03.sh
new file mode 100644
index 0000000..256a5c2
--- /dev/null
+++ b/cpufreq/cpufreq_03.sh
@@ -0,0 +1,51 @@ 
+#!/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#cpufreq_03
+
+source ../include/functions.sh
+
+check_governor() {
+
+    local cpu=$1
+    local newgov=$2
+
+    shift 2
+
+    local oldgov=$(get_governor $cpu)
+
+    set_governor $cpu $newgov
+
+    check "governor change to '$newgov'" "test \"$(get_governor $cpu)\" == \"$newgov\""
+
+    set_governor $cpu $oldgov
+}
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+for_each_cpu for_each_governor check_governor || exit 1
diff --git a/cpufreq/cpufreq_04.sh b/cpufreq/cpufreq_04.sh
new file mode 100644
index 0000000..6fa81fa
--- /dev/null
+++ b/cpufreq/cpufreq_04.sh
@@ -0,0 +1,54 @@ 
+#!/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#cpufreq_04
+
+source ../include/functions.sh
+
+check_frequency() {
+
+    local cpu=$1
+    local newfreq=$2
+
+    shift 2
+
+    local oldgov=$(get_governor $cpu)
+    local oldfreq=$(get_frequency $cpu)
+
+    set_governor $cpu userspace
+    set_frequency $cpu $newfreq
+
+    check "setting frequency '$(frequnit $newfreq)'" "test \"$(get_frequency $cpu)\" == \"$newfreq\""
+
+    set_frequency $cpu $oldfreq
+    set_governor $cpu $oldgov
+}
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+for_each_cpu for_each_frequency check_frequency || exit 1
diff --git a/cpufreq/cpufreq_05.sh b/cpufreq/cpufreq_05.sh
new file mode 100644
index 0000000..6ba938c
--- /dev/null
+++ b/cpufreq/cpufreq_05.sh
@@ -0,0 +1,73 @@ 
+#!/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#cpufreq_05
+
+source ../include/functions.sh
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+save_governors
+
+trap restore_governors SIGHUP SIGINT SIGTERM
+
+switch_ondemand() {
+    local cpu=$1
+    set_governor $cpu 'ondemand'
+}
+
+switch_conservative() {
+    local cpu=$1
+    set_governor $cpu 'conservative'
+}
+
+switch_userspace() {
+    local cpu=$1
+    set_governor $cpu 'userspace'
+}
+
+for_each_cpu switch_ondemand
+check "'ondemand' directory exists" "test -d $CPU_PATH/cpufreq/ondemand"
+
+for_each_cpu switch_conservative
+check "'conservative' directory exists" "test -d $CPU_PATH/cpufreq/conservative"
+
+for_each_cpu switch_userspace
+check "'ondemand' directory is not there" "test ! -d $CPU_PATH/cpufreq/ondemand"
+check "'conservative' directory is not there" "test ! -d $CPU_PATH/cpufreq/conservative"
+
+# if more than one cpu, combine governors
+nrcpus=$(ls $CPU_PATH | grep "cpu[0-9].*" | wc -l)
+if [ $nrcpus > 0 ]; then
+    switch_ondemand cpu0
+    switch_conservative cpu1
+    check "'ondemand' directory exists" "test -d $CPU_PATH/cpufreq/ondemand"
+    check "'conservative' directory exists" "test -d $CPU_PATH/cpufreq/conservative"
+fi
+
+restore_governors
diff --git a/cpufreq/cpufreq_06.sh b/cpufreq/cpufreq_06.sh
new file mode 100644
index 0000000..cb75e7f
--- /dev/null
+++ b/cpufreq/cpufreq_06.sh
@@ -0,0 +1,117 @@ 
+#!/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#cpufreq_06
+
+source ../include/functions.sh
+
+CPUCYCLE=../utils/cpucycle
+
+compute_freq_ratio() {
+
+    local cpu=$1
+    local freq=$2
+
+    set_frequency $cpu $freq
+
+    result=$($CPUCYCLE $cpu)
+    if [ $? != 0 ]; then
+	return 1
+    fi
+
+    results[$index]=$(echo "scale=3;($result / $freq)" | bc -l)
+    index=$((index + 1))
+}
+
+compute_freq_ratio_sum() {
+
+    res=${results[$index]}
+    sum=$(echo "($sum + $res)" | bc -l)
+    index=$((index + 1))
+
+}
+
+__check_freq_deviation() {
+
+    res=${results[$index]}
+
+    # compute deviation
+    dev=$(echo "scale=3;((( $res - $avg ) / $avg) * 100 )" | bc -l)
+
+    # change to absolute
+    dev=$(echo $dev | awk '{ print ($1 >= 0) ? $1 : 0 - $1}')
+
+    index=$((index + 1))
+
+    res=$(echo "($dev > 5.0)" | bc -l)
+    if [ "$res" = "1" ]; then
+	return 1
+    fi
+
+    return 0
+}
+
+check_freq_deviation() {
+
+    local cpu=$1
+    local freq=$2
+
+    check "deviation for frequency $(frequnit $freq)" __check_freq_deviation
+
+}
+
+check_deviation() {
+
+    local cpu=$1
+
+    set_governor $cpu userspace
+
+    for_each_frequency $cpu compute_freq_ratio
+
+    index=0
+    sum=0
+
+    for_each_frequency $cpu compute_freq_ratio_sum
+
+    avg=$(echo "scale=3;($sum / $index)" | bc -l)
+
+    index=0
+    for_each_frequency $cpu check_freq_deviation
+}
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+save_governors
+save_frequencies
+
+trap "restore_frequencies; restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
+
+for_each_cpu check_deviation
+
+restore_frequencies
+restore_governors
diff --git a/cpufreq/cpufreq_07.sh b/cpufreq/cpufreq_07.sh
new file mode 100644
index 0000000..2fb4b53
--- /dev/null
+++ b/cpufreq/cpufreq_07.sh
@@ -0,0 +1,91 @@ 
+#!/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#cpufreq_07
+
+source ../include/functions.sh
+
+CPUBURN=../utils/cpuburn
+
+check_ondemand() {
+
+    local cpu=$1
+    local maxfreq=$(get_max_frequency $cpu)
+    local minfreq=$(get_min_frequency $cpu)
+    local curfreq=$(get_frequency $cpu)
+    local pid=
+
+    set_governor $cpu ondemand
+
+    # wait for a quescient point
+    for i in $(seq 1 10); do
+
+	if [ "$minfreq" == "$(get_frequency $cpu)" ]; then
+
+	    $CPUBURN $cpu &
+	    pid=$!
+
+	    sleep 1
+	    wait_latency $cpu
+	    curfreq=$(get_frequency $cpu)
+	    kill $pid
+
+	    check "'ondemand' increase frequency on load" "test \"$curfreq\" == \"$maxfreq\""
+	    if [ "$?" != "0" ]; then
+		return 1
+	    fi
+
+	    sleep 1
+	    curfreq=$(get_frequency $cpu)
+
+	    check "'ondemand' decrease frequency on idle" "test \"$curfreq\" == \"$minfreq\""
+	    if [ "$?" != "0" ]; then
+		return 1
+	    fi
+
+	    return 0
+	fi
+
+	sleep 1
+
+    done
+
+    log_skip "can not reach a quescient point for 'ondemand'"
+
+    return 1
+}
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+save_governors
+
+trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
+
+for_each_cpu check_ondemand
+
+restore_governors
diff --git a/cpufreq/cpufreq_08.sh b/cpufreq/cpufreq_08.sh
new file mode 100644
index 0000000..3f47613
--- /dev/null
+++ b/cpufreq/cpufreq_08.sh
@@ -0,0 +1,78 @@ 
+#!/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#cpufreq_08
+
+source ../include/functions.sh
+
+CPUBURN=../utils/cpuburn
+
+check_frequency() {
+    local cpu=$1
+    local freq=$2
+    local curfreq=
+    local pid=
+
+    $CPUBURN $cpu &
+    pid=$!
+
+    set_frequency $cpu $freq
+
+    wait_latency $cpu
+    curfreq=$(get_frequency $cpu)
+    kill $pid
+
+    check "'userspace' $(frequnit $freq) is fixed" "test \"$curfreq\" == \"$freq\""
+    if [ "$?" != "0" ]; then
+	return 1
+    fi
+
+    return 0
+}
+
+check_userspace() {
+
+    local cpu=$1
+    local maxfreq=$(get_max_frequency $cpu)
+    local minfreq=$(get_min_frequency $cpu)
+    local curfreq=$(get_frequency $cpu)
+
+    set_governor $cpu userspace
+
+    for_each_frequency $cpu check_frequency $minfreq
+}
+
+save_governors
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
+
+for_each_cpu check_userspace
+
+restore_governors
diff --git a/cpufreq/cpufreq_09.sh b/cpufreq/cpufreq_09.sh
new file mode 100644
index 0000000..7fa8317
--- /dev/null
+++ b/cpufreq/cpufreq_09.sh
@@ -0,0 +1,74 @@ 
+#!/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#cpufreq_09
+
+source ../include/functions.sh
+
+CPUBURN=../utils/cpuburn
+
+check_powersave() {
+
+    local cpu=$1
+    local minfreq=$(get_min_frequency $cpu)
+    local curfreq=$(get_frequency $cpu)
+
+    set_governor $cpu powersave
+
+    wait_latency $cpu
+    curfreq=$(get_frequency $cpu)
+
+    check "'powersave' sets frequency to $(frequnit $minfreq)" "test \"$curfreq\" == \"$minfreq\""
+    if [ "$?" != "0" ]; then
+	return 1
+    fi
+
+    $CPUBURN $cpu &
+    pid=$!
+
+    wait_latency $cpu
+    curfreq=$(get_frequency $cpu)
+    kill $pid
+
+    check "'powersave' frequency $(frequnit $minfreq) is fixed" "test \"$curfreq\" == \"$minfreq\""
+    if [ "$?" != "0" ]; then
+	return 1
+    fi
+
+    return 0
+}
+
+save_governors
+
+if [ $(id -u) != 0 ]; then
+    log_skip "run as non-root"
+    exit 0
+fi
+
+trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
+
+for_each_cpu check_powersave
+
+restore_governors
diff --git a/cpufreq/test_01.sh b/cpufreq/test_01.sh
deleted file mode 100755
index 8cfbce9..0000000
--- a/cpufreq/test_01.sh
+++ /dev/null
@@ -1,32 +0,0 @@ 
-#!/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#cpufreq_01
-
-source ../include/functions.sh
-
-FILES="scaling_available_frequencies scaling_cur_freq scaling_setspeed"
-
-for_each_cpu check_cpufreq_files $FILES
diff --git a/cpufreq/test_02.sh b/cpufreq/test_02.sh
deleted file mode 100755
index 212b2eb..0000000
--- a/cpufreq/test_02.sh
+++ /dev/null
@@ -1,32 +0,0 @@ 
-#!/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#cpufreq_02
-
-source ../include/functions.sh
-
-FILES="scaling_available_governors scaling_governor"
-
-for_each_cpu check_cpufreq_files $FILES
diff --git a/cpufreq/test_03.sh b/cpufreq/test_03.sh
deleted file mode 100755
index 256a5c2..0000000
--- a/cpufreq/test_03.sh
+++ /dev/null
@@ -1,51 +0,0 @@ 
-#!/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#cpufreq_03
-
-source ../include/functions.sh
-
-check_governor() {
-
-    local cpu=$1
-    local newgov=$2
-
-    shift 2
-
-    local oldgov=$(get_governor $cpu)
-
-    set_governor $cpu $newgov
-
-    check "governor change to '$newgov'" "test \"$(get_governor $cpu)\" == \"$newgov\""
-
-    set_governor $cpu $oldgov
-}
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-for_each_cpu for_each_governor check_governor || exit 1
diff --git a/cpufreq/test_04.sh b/cpufreq/test_04.sh
deleted file mode 100755
index 6fa81fa..0000000
--- a/cpufreq/test_04.sh
+++ /dev/null
@@ -1,54 +0,0 @@ 
-#!/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#cpufreq_04
-
-source ../include/functions.sh
-
-check_frequency() {
-
-    local cpu=$1
-    local newfreq=$2
-
-    shift 2
-
-    local oldgov=$(get_governor $cpu)
-    local oldfreq=$(get_frequency $cpu)
-
-    set_governor $cpu userspace
-    set_frequency $cpu $newfreq
-
-    check "setting frequency '$(frequnit $newfreq)'" "test \"$(get_frequency $cpu)\" == \"$newfreq\""
-
-    set_frequency $cpu $oldfreq
-    set_governor $cpu $oldgov
-}
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-for_each_cpu for_each_frequency check_frequency || exit 1
diff --git a/cpufreq/test_05.sh b/cpufreq/test_05.sh
deleted file mode 100755
index 6ba938c..0000000
--- a/cpufreq/test_05.sh
+++ /dev/null
@@ -1,73 +0,0 @@ 
-#!/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#cpufreq_05
-
-source ../include/functions.sh
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-save_governors
-
-trap restore_governors SIGHUP SIGINT SIGTERM
-
-switch_ondemand() {
-    local cpu=$1
-    set_governor $cpu 'ondemand'
-}
-
-switch_conservative() {
-    local cpu=$1
-    set_governor $cpu 'conservative'
-}
-
-switch_userspace() {
-    local cpu=$1
-    set_governor $cpu 'userspace'
-}
-
-for_each_cpu switch_ondemand
-check "'ondemand' directory exists" "test -d $CPU_PATH/cpufreq/ondemand"
-
-for_each_cpu switch_conservative
-check "'conservative' directory exists" "test -d $CPU_PATH/cpufreq/conservative"
-
-for_each_cpu switch_userspace
-check "'ondemand' directory is not there" "test ! -d $CPU_PATH/cpufreq/ondemand"
-check "'conservative' directory is not there" "test ! -d $CPU_PATH/cpufreq/conservative"
-
-# if more than one cpu, combine governors
-nrcpus=$(ls $CPU_PATH | grep "cpu[0-9].*" | wc -l)
-if [ $nrcpus > 0 ]; then
-    switch_ondemand cpu0
-    switch_conservative cpu1
-    check "'ondemand' directory exists" "test -d $CPU_PATH/cpufreq/ondemand"
-    check "'conservative' directory exists" "test -d $CPU_PATH/cpufreq/conservative"
-fi
-
-restore_governors
diff --git a/cpufreq/test_06.sh b/cpufreq/test_06.sh
deleted file mode 100755
index cb75e7f..0000000
--- a/cpufreq/test_06.sh
+++ /dev/null
@@ -1,117 +0,0 @@ 
-#!/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#cpufreq_06
-
-source ../include/functions.sh
-
-CPUCYCLE=../utils/cpucycle
-
-compute_freq_ratio() {
-
-    local cpu=$1
-    local freq=$2
-
-    set_frequency $cpu $freq
-
-    result=$($CPUCYCLE $cpu)
-    if [ $? != 0 ]; then
-	return 1
-    fi
-
-    results[$index]=$(echo "scale=3;($result / $freq)" | bc -l)
-    index=$((index + 1))
-}
-
-compute_freq_ratio_sum() {
-
-    res=${results[$index]}
-    sum=$(echo "($sum + $res)" | bc -l)
-    index=$((index + 1))
-
-}
-
-__check_freq_deviation() {
-
-    res=${results[$index]}
-
-    # compute deviation
-    dev=$(echo "scale=3;((( $res - $avg ) / $avg) * 100 )" | bc -l)
-
-    # change to absolute
-    dev=$(echo $dev | awk '{ print ($1 >= 0) ? $1 : 0 - $1}')
-
-    index=$((index + 1))
-
-    res=$(echo "($dev > 5.0)" | bc -l)
-    if [ "$res" = "1" ]; then
-	return 1
-    fi
-
-    return 0
-}
-
-check_freq_deviation() {
-
-    local cpu=$1
-    local freq=$2
-
-    check "deviation for frequency $(frequnit $freq)" __check_freq_deviation
-
-}
-
-check_deviation() {
-
-    local cpu=$1
-
-    set_governor $cpu userspace
-
-    for_each_frequency $cpu compute_freq_ratio
-
-    index=0
-    sum=0
-
-    for_each_frequency $cpu compute_freq_ratio_sum
-
-    avg=$(echo "scale=3;($sum / $index)" | bc -l)
-
-    index=0
-    for_each_frequency $cpu check_freq_deviation
-}
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-save_governors
-save_frequencies
-
-trap "restore_frequencies; restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
-
-for_each_cpu check_deviation
-
-restore_frequencies
-restore_governors
diff --git a/cpufreq/test_07.sh b/cpufreq/test_07.sh
deleted file mode 100755
index 2fb4b53..0000000
--- a/cpufreq/test_07.sh
+++ /dev/null
@@ -1,91 +0,0 @@ 
-#!/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#cpufreq_07
-
-source ../include/functions.sh
-
-CPUBURN=../utils/cpuburn
-
-check_ondemand() {
-
-    local cpu=$1
-    local maxfreq=$(get_max_frequency $cpu)
-    local minfreq=$(get_min_frequency $cpu)
-    local curfreq=$(get_frequency $cpu)
-    local pid=
-
-    set_governor $cpu ondemand
-
-    # wait for a quescient point
-    for i in $(seq 1 10); do
-
-	if [ "$minfreq" == "$(get_frequency $cpu)" ]; then
-
-	    $CPUBURN $cpu &
-	    pid=$!
-
-	    sleep 1
-	    wait_latency $cpu
-	    curfreq=$(get_frequency $cpu)
-	    kill $pid
-
-	    check "'ondemand' increase frequency on load" "test \"$curfreq\" == \"$maxfreq\""
-	    if [ "$?" != "0" ]; then
-		return 1
-	    fi
-
-	    sleep 1
-	    curfreq=$(get_frequency $cpu)
-
-	    check "'ondemand' decrease frequency on idle" "test \"$curfreq\" == \"$minfreq\""
-	    if [ "$?" != "0" ]; then
-		return 1
-	    fi
-
-	    return 0
-	fi
-
-	sleep 1
-
-    done
-
-    log_skip "can not reach a quescient point for 'ondemand'"
-
-    return 1
-}
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-save_governors
-
-trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
-
-for_each_cpu check_ondemand
-
-restore_governors
diff --git a/cpufreq/test_08.sh b/cpufreq/test_08.sh
deleted file mode 100755
index 3f47613..0000000
--- a/cpufreq/test_08.sh
+++ /dev/null
@@ -1,78 +0,0 @@ 
-#!/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#cpufreq_08
-
-source ../include/functions.sh
-
-CPUBURN=../utils/cpuburn
-
-check_frequency() {
-    local cpu=$1
-    local freq=$2
-    local curfreq=
-    local pid=
-
-    $CPUBURN $cpu &
-    pid=$!
-
-    set_frequency $cpu $freq
-
-    wait_latency $cpu
-    curfreq=$(get_frequency $cpu)
-    kill $pid
-
-    check "'userspace' $(frequnit $freq) is fixed" "test \"$curfreq\" == \"$freq\""
-    if [ "$?" != "0" ]; then
-	return 1
-    fi
-
-    return 0
-}
-
-check_userspace() {
-
-    local cpu=$1
-    local maxfreq=$(get_max_frequency $cpu)
-    local minfreq=$(get_min_frequency $cpu)
-    local curfreq=$(get_frequency $cpu)
-
-    set_governor $cpu userspace
-
-    for_each_frequency $cpu check_frequency $minfreq
-}
-
-save_governors
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
-
-for_each_cpu check_userspace
-
-restore_governors
diff --git a/cpufreq/test_09.sh b/cpufreq/test_09.sh
deleted file mode 100755
index 7fa8317..0000000
--- a/cpufreq/test_09.sh
+++ /dev/null
@@ -1,74 +0,0 @@ 
-#!/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#cpufreq_09
-
-source ../include/functions.sh
-
-CPUBURN=../utils/cpuburn
-
-check_powersave() {
-
-    local cpu=$1
-    local minfreq=$(get_min_frequency $cpu)
-    local curfreq=$(get_frequency $cpu)
-
-    set_governor $cpu powersave
-
-    wait_latency $cpu
-    curfreq=$(get_frequency $cpu)
-
-    check "'powersave' sets frequency to $(frequnit $minfreq)" "test \"$curfreq\" == \"$minfreq\""
-    if [ "$?" != "0" ]; then
-	return 1
-    fi
-
-    $CPUBURN $cpu &
-    pid=$!
-
-    wait_latency $cpu
-    curfreq=$(get_frequency $cpu)
-    kill $pid
-
-    check "'powersave' frequency $(frequnit $minfreq) is fixed" "test \"$curfreq\" == \"$minfreq\""
-    if [ "$?" != "0" ]; then
-	return 1
-    fi
-
-    return 0
-}
-
-save_governors
-
-if [ $(id -u) != 0 ]; then
-    log_skip "run as non-root"
-    exit 0
-fi
-
-trap "restore_governors; sigtrap" SIGHUP SIGINT SIGTERM
-
-for_each_cpu check_powersave
-
-restore_governors
diff --git a/sched_mc/sched_01.sh b/sched_mc/sched_01.sh
new file mode 100644
index 0000000..e0fd9aa
--- /dev/null
+++ b/sched_mc/sched_01.sh
@@ -0,0 +1,32 @@ 
+#!/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_01
+
+source ../include/functions.sh
+
+FILES="sched_mc_power_savings"
+
+check_sched_mc_files $FILES
diff --git a/sched_mc/sched_02.sh b/sched_mc/sched_02.sh
new file mode 100644
index 0000000..36730a4
--- /dev/null
+++ b/sched_mc/sched_02.sh
@@ -0,0 +1,38 @@ 
+#!/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_02
+
+source ../include/functions.sh
+
+check_physical_package_id() {
+
+    local package_id=$CPU_PATH/$1/topology/physical_package_id
+    local val=$(cat $package_id)
+
+    check "topology is enabled" "test \"$val\" != \"-1\""
+}
+
+for_each_cpu check_physical_package_id || exit 1
diff --git a/sched_mc/sched_03.sh b/sched_mc/sched_03.sh
new file mode 100644
index 0000000..b5a9c49
--- /dev/null
+++ b/sched_mc/sched_03.sh
@@ -0,0 +1,33 @@ 
+#!/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_03
+
+source ../include/functions.sh
+
+FILES="core_id core_siblings core_siblings_list physical_package_id \
+thread_siblings thread_siblings_list"
+
+for_each_cpu check_topology_files $FILES
diff --git a/sched_mc/sched_04.sh b/sched_mc/sched_04.sh
new file mode 100644
index 0000000..4d7cfc1
--- /dev/null
+++ b/sched_mc/sched_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
diff --git a/sched_mc/test_01.sh b/sched_mc/test_01.sh
deleted file mode 100755
index e0fd9aa..0000000
--- a/sched_mc/test_01.sh
+++ /dev/null
@@ -1,32 +0,0 @@ 
-#!/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_01
-
-source ../include/functions.sh
-
-FILES="sched_mc_power_savings"
-
-check_sched_mc_files $FILES
diff --git a/sched_mc/test_02.sh b/sched_mc/test_02.sh
deleted file mode 100755
index 36730a4..0000000
--- a/sched_mc/test_02.sh
+++ /dev/null
@@ -1,38 +0,0 @@ 
-#!/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_02
-
-source ../include/functions.sh
-
-check_physical_package_id() {
-
-    local package_id=$CPU_PATH/$1/topology/physical_package_id
-    local val=$(cat $package_id)
-
-    check "topology is enabled" "test \"$val\" != \"-1\""
-}
-
-for_each_cpu check_physical_package_id || exit 1
diff --git a/sched_mc/test_03.sh b/sched_mc/test_03.sh
deleted file mode 100755
index b5a9c49..0000000
--- a/sched_mc/test_03.sh
+++ /dev/null
@@ -1,33 +0,0 @@ 
-#!/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_03
-
-source ../include/functions.sh
-
-FILES="core_id core_siblings core_siblings_list physical_package_id \
-thread_siblings thread_siblings_list"
-
-for_each_cpu check_topology_files $FILES
diff --git a/sched_mc/test_04.sh b/sched_mc/test_04.sh
deleted file mode 100755
index 4d7cfc1..0000000
--- a/sched_mc/test_04.sh
+++ /dev/null
@@ -1,70 +0,0 @@ 
-#!/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