summaryrefslogtreecommitdiff
path: root/drivers/cpuidle/lpm-levels.c
diff options
context:
space:
mode:
authorMahesh Sivasubramanian <msivasub@codeaurora.org>2017-04-13 08:55:52 -0600
committerMahesh Sivasubramanian <msivasub@codeaurora.org>2017-04-13 08:57:30 -0600
commit476b11678f1e6f496e9bec97e60014c0cececfe6 (patch)
treef490b2eb5fc7f72e80b59eadd91c6229d2654738 /drivers/cpuidle/lpm-levels.c
parent51740526b9b90ef772ba2c3c6b288f0d1688bb10 (diff)
drivers: cpuidle: lpm-levels: Log hotplug events
Add debug events for CPU_STARTING and CPU_DYING events when a CPU is hotplugged. The events will help correlate with the TZ events using the ARM timers counts for debug. Change-Id: Ieb6449575b4a95974b787ceea430fc5362c77c29 Signed-off-by: Mahesh Sivasubramanian <msivasub@codeaurora.org>
Diffstat (limited to 'drivers/cpuidle/lpm-levels.c')
-rw-r--r--drivers/cpuidle/lpm-levels.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/cpuidle/lpm-levels.c b/drivers/cpuidle/lpm-levels.c
index 64c4bf8f58a8..cf9adbc830aa 100644
--- a/drivers/cpuidle/lpm-levels.c
+++ b/drivers/cpuidle/lpm-levels.c
@@ -72,6 +72,8 @@ enum debug_event {
CLUSTER_ENTER,
CLUSTER_EXIT,
PRE_PC_CB,
+ CPU_HP_STARTING,
+ CPU_HP_DYING,
};
struct lpm_debug {
@@ -341,10 +343,16 @@ static int lpm_cpu_callback(struct notifier_block *cpu_nb,
switch (action & ~CPU_TASKS_FROZEN) {
case CPU_DYING:
+ update_debug_pc_event(CPU_HP_DYING, cpu,
+ cluster->num_children_in_sync.bits[0],
+ cluster->child_cpus.bits[0], false);
cluster_prepare(cluster, get_cpu_mask((unsigned int) cpu),
NR_LPM_LEVELS, false, 0);
break;
case CPU_STARTING:
+ update_debug_pc_event(CPU_HP_STARTING, cpu,
+ cluster->num_children_in_sync.bits[0],
+ cluster->child_cpus.bits[0], false);
cluster_unprepare(cluster, get_cpu_mask((unsigned int) cpu),
NR_LPM_LEVELS, false, 0);
break;