aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/cevt-r4k.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/mips/kernel/cevt-r4k.c')
-rw-r--r--arch/mips/kernel/cevt-r4k.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/arch/mips/kernel/cevt-r4k.c b/arch/mips/kernel/cevt-r4k.c
index 6acaad0480af..82bd2b278a24 100644
--- a/arch/mips/kernel/cevt-r4k.c
+++ b/arch/mips/kernel/cevt-r4k.c
@@ -11,7 +11,6 @@
11#include <linux/percpu.h> 11#include <linux/percpu.h>
12#include <linux/smp.h> 12#include <linux/smp.h>
13#include <linux/irq.h> 13#include <linux/irq.h>
14#include <linux/irqchip/mips-gic.h>
15 14
16#include <asm/time.h> 15#include <asm/time.h>
17#include <asm/cevt-r4k.h> 16#include <asm/cevt-r4k.h>
@@ -40,7 +39,7 @@ int cp0_timer_irq_installed;
40 39
41irqreturn_t c0_compare_interrupt(int irq, void *dev_id) 40irqreturn_t c0_compare_interrupt(int irq, void *dev_id)
42{ 41{
43 const int r2 = cpu_has_mips_r2; 42 const int r2 = cpu_has_mips_r2_r6;
44 struct clock_event_device *cd; 43 struct clock_event_device *cd;
45 int cpu = smp_processor_id(); 44 int cpu = smp_processor_id();
46 45
@@ -85,10 +84,7 @@ void mips_event_handler(struct clock_event_device *dev)
85 */ 84 */
86static int c0_compare_int_pending(void) 85static int c0_compare_int_pending(void)
87{ 86{
88#ifdef CONFIG_MIPS_GIC 87 /* When cpu_has_mips_r2, this checks Cause.TI instead of Cause.IP7 */
89 if (gic_present)
90 return gic_get_timer_pending();
91#endif
92 return (read_c0_cause() >> cp0_compare_irq_shift) & (1ul << CAUSEB_IP); 88 return (read_c0_cause() >> cp0_compare_irq_shift) & (1ul << CAUSEB_IP);
93} 89}
94 90