|
@@ -96,7 +96,15 @@ static void cpuidle_idle_call(void)
|
|
|
|
|
|
/* enter the state and update stats */
|
|
/* enter the state and update stats */
|
|
dev->last_state = target_state;
|
|
dev->last_state = target_state;
|
|
|
|
+
|
|
|
|
+ trace_power_start(POWER_CSTATE, next_state, dev->cpu);
|
|
|
|
+ trace_cpu_idle(next_state, dev->cpu);
|
|
|
|
+
|
|
dev->last_residency = target_state->enter(dev, target_state);
|
|
dev->last_residency = target_state->enter(dev, target_state);
|
|
|
|
+
|
|
|
|
+ trace_power_end(dev->cpu);
|
|
|
|
+ trace_cpu_idle(PWR_EVENT_EXIT, dev->cpu);
|
|
|
|
+
|
|
if (dev->last_state)
|
|
if (dev->last_state)
|
|
target_state = dev->last_state;
|
|
target_state = dev->last_state;
|
|
|
|
|
|
@@ -106,8 +114,6 @@ static void cpuidle_idle_call(void)
|
|
/* give the governor an opportunity to reflect on the outcome */
|
|
/* give the governor an opportunity to reflect on the outcome */
|
|
if (cpuidle_curr_governor->reflect)
|
|
if (cpuidle_curr_governor->reflect)
|
|
cpuidle_curr_governor->reflect(dev);
|
|
cpuidle_curr_governor->reflect(dev);
|
|
- trace_power_end(smp_processor_id());
|
|
|
|
- trace_cpu_idle(PWR_EVENT_EXIT, smp_processor_id());
|
|
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|