diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-11-04 19:29:45 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-11-15 18:21:49 -0500 |
commit | a8401fa57f1600ca0ad74b958c2c9eb494f40dc8 (patch) | |
tree | 5ac72807d2335a9a345ada669232b4e654862960 /arch/mips/sibyte | |
parent | 07a80e49240ff57bccc3c65944d35947c3d33697 (diff) |
[MIPS] BCM1480: Remove duplicate acknowledge of timer interrupt.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/sibyte')
-rw-r--r-- | arch/mips/sibyte/bcm1480/irq.c | 15 |
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 | ||
413 | extern void bcm1480_mailbox_interrupt(void); | 413 | extern void bcm1480_mailbox_interrupt(void); |
414 | 414 | ||
415 | static 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 | |||
427 | static inline void dispatch_ip2(void) | 415 | static 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 | ||
452 | asmlinkage void plat_irq_dispatch(void) | 440 | asmlinkage 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(); |