summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/pmc.c
diff options
context:
space:
mode:
authorAndy Fleming <afleming@freescale.com>2005-12-16 03:02:04 +0100
committerPaul Mackerras <paulus@samba.org>2006-01-09 05:06:03 +0100
commit555d97ac87aef08bb55dff6f05e68fe2987d6f6d (patch)
tree7016485d112af04b972dcc749e437a7131424252 /arch/powerpc/kernel/pmc.c
parent[PATCH] powerpc: Fix compile problem in pci.c for ppc32 (diff)
downloadlinux-555d97ac87aef08bb55dff6f05e68fe2987d6f6d.tar.xz
linux-555d97ac87aef08bb55dff6f05e68fe2987d6f6d.zip
[PATCH] powerpc: G4+ oprofile support
This patch adds oprofile support for the 7450 and all its multitudinous derivatives. * Added 7450 (and derivatives) support for oprofile * Changed e500 cputable to have oprofile model and cpu_type fields * Added support for classic 32-bit performance monitor interrupt * Cleaned up common powerpc oprofile code to be as common as possible * Cleaned up oprofile_impl.h to reflect 32 bit classic code * Added 32-bit MMCRx bitfield definitions and SPR numbers Signed-off-by: Andy Fleming <afleming@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/pmc.c')
-rw-r--r--arch/powerpc/kernel/pmc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/pmc.c b/arch/powerpc/kernel/pmc.c
index 2d333cc84082..e6fb194fe537 100644
--- a/arch/powerpc/kernel/pmc.c
+++ b/arch/powerpc/kernel/pmc.c
@@ -43,8 +43,13 @@ static void dummy_perf(struct pt_regs *regs)
mtspr(SPRN_MMCR0, mmcr0);
}
#else
+/* Ensure exceptions are disabled */
static void dummy_perf(struct pt_regs *regs)
{
+ unsigned int mmcr0 = mfspr(SPRN_MMCR0);
+
+ mmcr0 &= ~(MMCR0_PMXE);
+ mtspr(SPRN_MMCR0, mmcr0);
}
#endif