summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Cha <joshuac@nvidia.com>2012-04-23 10:13:47 +0900
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-04-24 01:29:52 -0700
commita4a5e808b17a441456574a49afc2a62951d4c940 (patch)
tree0ec1ec54a56fc85b97cc1df1676b169be620cca4
parenta60c525119bfbe1b4f2fa5655be0d087dfa4017b (diff)
ARM: tegra2: dvfs: Update DVFS rails statistic for Tegra2
LP2 state of Tegra2 is considered into rail statistic. Change-Id: Iab2e0fe25ecb8feca1f4aa1040ce5020e6dcf584 Signed-off-by: Joshua Cha <joshuac@nvidia.com> Reviewed-on: http://git-master/r/98118 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
-rw-r--r--arch/arm/mach-tegra/cpuidle-t2.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/cpuidle-t2.c b/arch/arm/mach-tegra/cpuidle-t2.c
index e5ff7c61f24c..ff6c320dd11c 100644
--- a/arch/arm/mach-tegra/cpuidle-t2.c
+++ b/arch/arm/mach-tegra/cpuidle-t2.c
@@ -49,6 +49,7 @@
#include "pm.h"
#include "sleep.h"
#include "timer.h"
+#include "dvfs.h"
static struct {
unsigned int cpu_ready_count[2];
@@ -221,6 +222,7 @@ static int tegra2_idle_lp2_cpu_0(struct cpuidle_device *dev,
idle_stats.tear_down_count++;
entry_time = ktime_get();
+ tegra_dvfs_rail_off(tegra_cpu_rail, entry_time);
if (request > state->target_residency) {
s64 sleep_time = request - tegra_lp2_exit_latency;
@@ -247,6 +249,8 @@ static int tegra2_idle_lp2_cpu_0(struct cpuidle_device *dev,
}
exit_time = ktime_get();
+ tegra_dvfs_rail_on(tegra_cpu_rail, exit_time);
+
if (sleep_completed) {
/*
* Stayed in LP2 for the full time until the next tick,