X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=arch%2Farm%2Foprofile%2Fop_model_xscale.c;h=7c3289c2acd7d4b2add8364c502b368ac9e88d9e;hb=4951704b4e23d71b99ac933d8e6993bc6225ac13;hp=6576143f25598253bba9e5d8701bdb44d8bd4234;hpb=5ffd1a6aaacc25be8cd0770a51ec6d46add3a276;p=linux-2.6 diff --git a/arch/arm/oprofile/op_model_xscale.c b/arch/arm/oprofile/op_model_xscale.c index 6576143f25..7c3289c2ac 100644 --- a/arch/arm/oprofile/op_model_xscale.c +++ b/arch/arm/oprofile/op_model_xscale.c @@ -20,7 +20,8 @@ #include #include #include -#include +#include + #include #include "op_counter.h" @@ -33,9 +34,6 @@ #define PMU_CNT64 0x008 /* Make CCNT count every 64th cycle */ /* TODO do runtime detection */ -#ifdef CONFIG_ARCH_IOP310 -#define XSCALE_PMU_IRQ IRQ_XS80200_PMU -#endif #ifdef CONFIG_ARCH_IOP32X #define XSCALE_PMU_IRQ IRQ_IOP32X_CORE_PMU #endif @@ -344,7 +342,7 @@ static void inline __xsc2_check_ctrs(void) __asm__ __volatile__ ("mcr p14, 0, %0, c5, c1, 0" : : "r" (flag)); } -static irqreturn_t xscale_pmu_interrupt(int irq, void *arg, struct pt_regs *regs) +static irqreturn_t xscale_pmu_interrupt(int irq, void *arg) { int i; u32 pmnc; @@ -359,7 +357,7 @@ static irqreturn_t xscale_pmu_interrupt(int irq, void *arg, struct pt_regs *regs continue; write_counter(i, -(u32)results[i].reset_counter); - oprofile_add_sample(regs, i); + oprofile_add_sample(get_irq_regs(), i); results[i].ovf--; }