msm: acpuclock: Support tracing of CPU frequency changes
Utilize the cpu_frequency traces to profile CPU frequency switching. Change-Id: I5f7b5ea9ab0bd70deb3d64c9361c4b56ab63466d Signed-off-by: Matt Wagantall <mattw@codeaurora.org> (cherry picked from commit 7c57b5dfc88a77a7d0c1d7820cf0baa3c37210fc) (cherry picked from commit e759493b08da1c1d39e68849b6092b3dac3928aa)
This commit is contained in:
committed by
Stephen Boyd
parent
4e0af26309
commit
d4e63f6db5
@@ -1,4 +1,4 @@
|
||||
/* Copyright (c) 2011, Code Aurora Forum. All rights reserved.
|
||||
/* Copyright (c) 2011-2012, Code Aurora Forum. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
@@ -13,6 +13,7 @@
|
||||
#include <linux/cpu.h>
|
||||
#include <linux/smp.h>
|
||||
#include "acpuclock.h"
|
||||
#include <trace/events/power.h>
|
||||
|
||||
static struct acpuclk_data *acpuclk_data;
|
||||
|
||||
@@ -26,10 +27,19 @@ unsigned long acpuclk_get_rate(int cpu)
|
||||
|
||||
int acpuclk_set_rate(int cpu, unsigned long rate, enum setrate_reason reason)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (!acpuclk_data->set_rate)
|
||||
return 0;
|
||||
|
||||
return acpuclk_data->set_rate(cpu, rate, reason);
|
||||
trace_cpu_frequency_switch_start(acpuclk_get_rate(cpu), rate, cpu);
|
||||
ret = acpuclk_data->set_rate(cpu, rate, reason);
|
||||
if (!ret) {
|
||||
trace_cpu_frequency_switch_end(cpu);
|
||||
trace_cpu_frequency(rate, cpu);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
uint32_t acpuclk_get_switch_time(void)
|
||||
|
||||
Reference in New Issue
Block a user