summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/cpuidle.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-tegra/cpuidle.c')
-rw-r--r--arch/arm/mach-tegra/cpuidle.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/cpuidle.c b/arch/arm/mach-tegra/cpuidle.c
index 820eba972a1b..73ed6d4e3a2f 100644
--- a/arch/arm/mach-tegra/cpuidle.c
+++ b/arch/arm/mach-tegra/cpuidle.c
@@ -135,8 +135,11 @@ static int tegra_idle_enter_lp2(struct cpuidle_device *dev,
tegra_cpu_idle_stats_lp2_ready(dev->cpu);
+ /* Shut down the CPU local timer and switch timekeeping to the
+ global system timer. */
clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_ENTER, &dev->cpu);
tegra_idle_lp2(dev, state);
+ /* Switch timekeeping back to the CPU local timer. */
clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_EXIT, &dev->cpu);
exit = ktime_sub(ktime_get(), enter);