diff options
author | Arve Hjønnevåg <arve@android.com> | 2011-02-23 16:51:58 -0800 |
---|---|---|
committer | Frank Li <Frank.Li@freescale.com> | 2012-09-26 13:24:07 +0800 |
commit | 08aee79345937b04382511abb641f817864e20f5 (patch) | |
tree | 623f0e8e8a8f0f344d9b6943ea44f680fb6d68db /arch/arm/kernel | |
parent | 4c6379115e1ed59603b22626af744abfd48fc48e (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')
-rw-r--r-- | arch/arm/kernel/etm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/kernel/etm.c b/arch/arm/kernel/etm.c index 82e6d38fb93d..496b8b84e455 100644 --- a/arch/arm/kernel/etm.c +++ b/arch/arm/kernel/etm.c @@ -199,7 +199,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) { @@ -738,7 +738,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); |