summaryrefslogtreecommitdiff
path: root/arch/arm/kernel/etm.c
diff options
context:
space:
mode:
authorArve Hjønnevåg <arve@android.com>2011-02-23 16:51:58 -0800
committerColin Cross <ccross@android.com>2012-04-09 13:57:54 -0700
commit424698382015fefdc0551f9d4c301dfe6504b193 (patch)
tree3e4729e983d2c9c129c27252efdd46ac94d4c813 /arch/arm/kernel/etm.c
parent992cd59960f613af65f0ecea49f3380fe7cb228f (diff)
ARM: etm: Power down etm(s) when tracing is not enabled
Without this change a saw an 18% increase in idle power consumption on one deivce when trace support is compiled into the kernel. Now I see the same increase only when tracing. Change-Id: I21bb5ecf1b7d29ce3790ceeb5323409cc22d5a3b Signed-off-by: Arve Hjønnevåg <arve@android.com>
Diffstat (limited to 'arch/arm/kernel/etm.c')
-rw-r--r--arch/arm/kernel/etm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/kernel/etm.c b/arch/arm/kernel/etm.c
index e3309ea70e3..66bf5928444 100644
--- a/arch/arm/kernel/etm.c
+++ b/arch/arm/kernel/etm.c
@@ -200,7 +200,7 @@ static int trace_stop_etm(struct tracectx *t, int id)
etm_unlock(t, id);
- etm_writel(t, id, 0x440, ETMR_CTRL);
+ etm_writel(t, id, 0x441, ETMR_CTRL);
while (!(etm_readl(t, id, ETMR_CTRL) & ETMCTRL_PROGRAM) && --timeout)
;
if (!timeout) {
@@ -739,7 +739,7 @@ static int __devinit etm_probe(struct amba_device *dev, const struct amba_id *id
(void)etm_readl(&tracer, t->etm_regs_count, ETMMR_OSSRR);
t->ncmppairs = etm_readl(t, t->etm_regs_count, ETMR_CONFCODE) & 0xf;
- etm_writel(t, t->etm_regs_count, 0x440, ETMR_CTRL);
+ etm_writel(t, t->etm_regs_count, 0x441, ETMR_CTRL);
etm_writel(t, t->etm_regs_count, new_count, ETMR_TRACEIDR);
etm_lock(t, t->etm_regs_count);