Commit 3321c2bc authored by Jean PIHET's avatar Jean PIHET Committed by Russell King

ARM: 5849/1: ARMv7: fix Oprofile events count

On Oprofile ARMv7 the PMNC_D bit was set to lower the PMU IRQs
and so to decrease the risk of errata #628216 from appearing.
The effect of setting the PMNC_D bit is that the CCNT counter
is divided by 64, making the program counter events count
inaccurate.
The new OMAP3 r4 cores should have that errata fixed.

The PMNC_D bit should not be set, this patch fixes it.
Signed-off-by: default avatarJean Pihet <jpihet@mvista.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent cdd90fb5
...@@ -191,12 +191,8 @@ int armv7_setup_pmnc(void) ...@@ -191,12 +191,8 @@ int armv7_setup_pmnc(void)
return -EBUSY; return -EBUSY;
} }
/* /* Initialize & Reset PMNC: C bit and P bit */
* Initialize & Reset PMNC: C bit, D bit and P bit. armv7_pmnc_write(PMNC_P | PMNC_C);
* Note: Using a slower count for CCNT (D bit: divide by 64) results
* in a more stable system
*/
armv7_pmnc_write(PMNC_P | PMNC_C | PMNC_D);
for (cnt = CCNT; cnt < CNTMAX; cnt++) { for (cnt = CCNT; cnt < CNTMAX; cnt++) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment