]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/mips/kernel/smtc-asm.S
Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6
[linux-2.6-omap-h63xx.git] / arch / mips / kernel / smtc-asm.S
index 72c6d98f8854283cc2dad1e1dc1ac593fe4edd4c..1cb9441f1474f76692319df943b8ee20b4bf994a 100644 (file)
@@ -8,7 +8,7 @@
 #include <asm/regdef.h>
 #include <asm/asmmacro.h>
 #include <asm/stackframe.h>
-#include <asm/stackframe.h>
+#include <asm/irqflags.h>
 
 /*
  * "Software Interrupt" linkage.
@@ -96,15 +96,13 @@ FEXPORT(__smtc_ipi_vector)
        /* Save all will redundantly recompute the SP, but use it for now */
        SAVE_ALL
        CLI
-       move    a0,sp
+       TRACE_IRQS_OFF
        /* Function to be invoked passed stack pad slot 5 */
        lw      t0,PT_PADSLOT5(sp)
        /* Argument from sender passed in stack pad slot 4 */
-       lw      a1,PT_PADSLOT4(sp)
-       jalr    t0
-       nop
-       j       ret_from_irq
-       nop
+       lw      a0,PT_PADSLOT4(sp)
+       PTR_LA  ra, _ret_from_irq
+       jr      t0
 
 /*
  * Called from idle loop to provoke processing of queued IPIs