aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/mips/sibyte/bcm1480/irq.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/arch/mips/sibyte/bcm1480/irq.c b/arch/mips/sibyte/bcm1480/irq.c
index e28d626255a3..3ba5ef358162 100644
--- a/arch/mips/sibyte/bcm1480/irq.c
+++ b/arch/mips/sibyte/bcm1480/irq.c
@@ -412,18 +412,6 @@ static void bcm1480_kgdb_interrupt(void)
412 412
413extern void bcm1480_mailbox_interrupt(void); 413extern void bcm1480_mailbox_interrupt(void);
414 414
415static inline void dispatch_ip4(void)
416{
417 int cpu = smp_processor_id();
418 int irq = K_BCM1480_INT_TIMER_0 + cpu;
419
420 /* Reset the timer */
421 __raw_writeq(M_SCD_TIMER_ENABLE|M_SCD_TIMER_MODE_CONTINUOUS,
422 IOADDR(A_SCD_TIMER_REGISTER(cpu, R_SCD_TIMER_CFG)));
423
424 do_IRQ(irq);
425}
426
427static inline void dispatch_ip2(void) 415static inline void dispatch_ip2(void)
428{ 416{
429 unsigned long long mask_h, mask_l; 417 unsigned long long mask_h, mask_l;
@@ -451,6 +439,7 @@ static inline void dispatch_ip2(void)
451 439
452asmlinkage void plat_irq_dispatch(void) 440asmlinkage void plat_irq_dispatch(void)
453{ 441{
442 unsigned int cpu = smp_processor_id();
454 unsigned int pending; 443 unsigned int pending;
455 444
456#ifdef CONFIG_SIBYTE_BCM1480_PROF 445#ifdef CONFIG_SIBYTE_BCM1480_PROF
@@ -467,7 +456,7 @@ asmlinkage void plat_irq_dispatch(void)
467#endif 456#endif
468 457
469 if (pending & CAUSEF_IP4) 458 if (pending & CAUSEF_IP4)
470 dispatch_ip4(); 459 do_IRQ(K_BCM1480_INT_TIMER_0 + cpu);
471#ifdef CONFIG_SMP 460#ifdef CONFIG_SMP
472 else if (pending & CAUSEF_IP3) 461 else if (pending & CAUSEF_IP3)
473 bcm1480_mailbox_interrupt(); 462 bcm1480_mailbox_interrupt();