From e118f51827be7c36b5fa35e1d7142403a75eac34 Mon Sep 17 00:00:00 2001 From: Dietmar Eggemann Date: Mon, 18 Jan 2016 00:50:32 +0000 Subject: [PATCH 1/2] libs/utils/energy.py: Streamline self.readings calc in HWMon::sample() Tested with JUNO target. Signed-off-by: Dietmar Eggemann --- libs/utils/energy.py | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/libs/utils/energy.py b/libs/utils/energy.py index 96d1c2fee..935718518 100644 --- a/libs/utils/energy.py +++ b/libs/utils/energy.py @@ -125,13 +125,9 @@ class HWMon(EnergyMeter): } continue - last = self.readings[label]['last'] - delta = value - last - total = self.readings[label]['total'] - + self.readings[label]['delta'] = value - self.readings[label]['last'] self.readings[label]['last'] = value - self.readings[label]['delta'] = delta - self.readings[label]['total'] = total + delta + self.readings[label]['total'] += self.readings[label]['delta'] logging.debug('SAMPLE: %s', self.readings) return self.readings -- GitLab From 4adff489cb04af7287b8c1e1e7cb46bca815116e Mon Sep 17 00:00:00 2001 From: Dietmar Eggemann Date: Thu, 21 Jan 2016 10:45:22 +0000 Subject: [PATCH 2/2] tests/eas/rfc.py: Fix path of ondemand/sampling_rate file In case a target has only one frequency domain, the ondemand/sampling_rate file is located under /sys/devices/system/cpu/cpufreq/ondemand and not under the individual cpu directory. Fix this by checking if the ondemand/sampling_rate file exists in the individual cpu directory after the ondemand governor has been set. If this is not the case write sampling rate to the system global one. Tested on JUNO and Hikey target. Signed-off-by: Dietmar Eggemann --- tests/eas/rfc.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/eas/rfc.py b/tests/eas/rfc.py index 364468893..ef36fe3e9 100644 --- a/tests/eas/rfc.py +++ b/tests/eas/rfc.py @@ -242,9 +242,13 @@ class TestBase(unittest.TestCase): cls.env.target.execute( 'for CPU in /sys/devices/system/cpu/cpu[0-9]*; do '\ ' echo {} > $CPU/cpufreq/scaling_governor; '\ - ' echo {} > $CPU/cpufreq/ondemand/sampling_rate; '\ + ' if [ -e $CPU/cpufreq/ondemand/sampling_rate ]; then'\ + ' echo {} > $CPU/cpufreq/ondemand/sampling_rate;'\ + ' else'\ + ' echo {} > $CPU/../cpufreq/ondemand/sampling_rate;'\ + ' fi;'\ 'done'\ - .format('ondemand', sampling_rate)) + .format('ondemand', sampling_rate, sampling_rate)) else: cls.env.target.execute( 'for CPU in /sys/devices/system/cpu/cpu[0-9]*; do '\ -- GitLab