upgrade to linux 2.6.10-1.12_FC2
[linux-2.6.git] / arch / mips / pmc-sierra / yosemite / irq-handler.S
index ebe2e64..e577c32 100644 (file)
@@ -1,6 +1,7 @@
 /*
- * Copyright 2003 PMC-Sierra Inc.
+ * Copyright 2003, 04 PMC-Sierra Inc.
  * Author: Manish Lachwani (lachwani@pmc-sierra.com
+ * Copyright 2004 Ralf Baechle (ralf@linux-mips.org)
  *
  * First-level interrupt router for the PMC-Sierra Titan board
  *
@@ -27,6 +28,7 @@
                CLI
                .set    at
                .set    noreorder
+               la      ra, ret_from_irq
                mfc0    t0, CP0_CAUSE
                mfc0    t2, CP0_STATUS
 
@@ -69,42 +71,36 @@ ll_pcia_irq:
                li      a0, 2
                move    a1, sp
 #ifdef CONFIG_HYPERTRANSPORT
-               jal     ll_ht_smp_irq_handler
+               j       ll_ht_smp_irq_handler
 #else
-               jal     do_IRQ
+               j       do_IRQ
 #endif
-               j       ret_from_irq
 
 ll_pcib_irq:
                li      a0, 3
                move    a1, sp
-               jal     do_IRQ
-               j       ret_from_irq
+               j       do_IRQ
 
 ll_duart_irq:
                li      a0, 4
                move    a1, sp
-               jal     do_IRQ
-               j       ret_from_irq
+               j       do_IRQ
 
 ll_smp_irq:
                li      a0, 5
                move    a1, sp
 #ifdef CONFIG_SMP
-               jal     jaguar_mailbox_irq
+               j       titan_mailbox_irq
 #else
-               jal     do_IRQ
+               j       do_IRQ
 #endif
-               j       ret_from_irq
 
 ll_ht_irq:
                li      a0, 6
                move    a1, sp
-               jal     ll_ht_smp_irq_handler
-               j       ret_from_irq
+               j       ll_ht_smp_irq_handler
 
 ll_timer_irq:
                li      a0, 7
                move    a1, sp
-               jal     do_IRQ
-               j       ret_from_irq
+               j       do_IRQ