]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/powerpc/oprofile/op_model_fsl_booke.c
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
[linux-2.6-omap-h63xx.git] / arch / powerpc / oprofile / op_model_fsl_booke.c
index 1917f8df8a8bf7acdd78c614916e3850cede8d98..93d63e62662f65c3439926c2d895805e501becc1 100644 (file)
@@ -7,7 +7,7 @@
  * Copyright (c) 2004 Freescale Semiconductor, Inc
  *
  * Author: Andy Fleming
- * Maintainer: Kumar Gala <Kumar.Gala@freescale.com>
+ * Maintainer: Kumar Gala <galak@kernel.crashing.org>
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
@@ -24,7 +24,7 @@
 #include <asm/cputable.h>
 #include <asm/reg_booke.h>
 #include <asm/page.h>
-#include <asm/perfmon.h>
+#include <asm/pmc.h>
 #include <asm/oprofile_impl.h>
 
 static unsigned long reset_value[OP_MAX_COUNTER];
@@ -154,13 +154,13 @@ static void fsl_booke_handle_interrupt(struct pt_regs *regs,
        mtmsr(mfmsr() | MSR_PMM);
 
        pc = regs->nip;
-       is_kernel = (pc >= KERNELBASE);
+       is_kernel = is_kernel_addr(pc);
 
        for (i = 0; i < num_counters; ++i) {
                val = ctr_read(i);
                if (val < 0) {
                        if (oprofile_running && ctr[i].enabled) {
-                               oprofile_add_pc(pc, is_kernel, i);
+                               oprofile_add_ext_sample(pc, regs, i, is_kernel);
                                ctr_write(i, reset_value[i]);
                        } else {
                                ctr_write(i, 0);