MIPS: oprofile: Only do performance counter handling for counter interrupts

In Loongson2f IP6 is shared by bonito and perfcounters so we need to avoid
do_IRQ for perfcounter when the interrupt is from bonito.

Signed-off-by: Wu Zhangjin <wuzhangjin@gmail.com>
Cc: linux-mips@linux-mips.org
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
Wu Zhangjin 2009-11-06 18:45:06 +08:00 committed by Ralf Baechle
parent a3ed495190
commit 937893cf5b

View file

@ -1,7 +1,7 @@
/* /*
* Loongson2 performance counter driver for oprofile * Loongson2 performance counter driver for oprofile
* *
* Copyright (C) 2009 Lemote Inc. & Insititute of Computing Technology * Copyright (C) 2009 Lemote Inc.
* Author: Yanhua <yanh@lemote.com> * Author: Yanhua <yanh@lemote.com>
* Author: Wu Zhangjin <wuzj@lemote.com> * Author: Wu Zhangjin <wuzj@lemote.com>
* *
@ -125,6 +125,9 @@ static irqreturn_t loongson2_perfcount_handler(int irq, void *dev_id)
*/ */
/* Check whether the irq belongs to me */ /* Check whether the irq belongs to me */
enabled = read_c0_perfcnt() & LOONGSON2_PERFCNT_INT_EN;
if (!enabled)
return IRQ_NONE;
enabled = reg.cnt1_enabled | reg.cnt2_enabled; enabled = reg.cnt1_enabled | reg.cnt2_enabled;
if (!enabled) if (!enabled)
return IRQ_NONE; return IRQ_NONE;