Skip to content

Commit

Permalink
[MIPS] do_IRQ cleanup
Browse files Browse the repository at this point in the history
Now we have both function and macro version of do_IRQ() and the former
is used only by DEC and non-preemptive kernel.  This patch makes
everyone use the macro version and removes the function version.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Atsushi Nemoto authored and Ralf Baechle committed Nov 30, 2006
1 parent 617667b commit 187933f
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 26 deletions.
2 changes: 1 addition & 1 deletion arch/mips/dec/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ handle_it:
LONG_L s0, TI_REGS($28)
LONG_S sp, TI_REGS($28)
PTR_LA ra, ret_from_irq
j do_IRQ
j dec_irq_dispatch
nop

#ifdef CONFIG_32BIT
Expand Down
6 changes: 6 additions & 0 deletions arch/mips/dec/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -761,3 +761,9 @@ void __init arch_init_irq(void)
if (dec_interrupt[DEC_IRQ_HALT] >= 0)
setup_irq(dec_interrupt[DEC_IRQ_HALT], &haltirq);
}

asmlinkage unsigned int dec_irq_dispatch(unsigned int irq)
{
do_IRQ(irq);
return 0;
}
19 changes: 0 additions & 19 deletions arch/mips/kernel/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -88,25 +88,6 @@ atomic_t irq_err_count;
unsigned long irq_hwmask[NR_IRQS];
#endif /* CONFIG_MIPS_MT_SMTC */

#undef do_IRQ

/*
* do_IRQ handles all normal device IRQ's (the special
* SMP cross-CPU interrupts have their own specific
* handlers).
*/
asmlinkage unsigned int do_IRQ(unsigned int irq)
{
irq_enter();

__DO_IRQ_SMTC_HOOK();
__do_IRQ(irq);

irq_exit();

return 1;
}

/*
* Generic, controller-independent functions:
*/
Expand Down
6 changes: 0 additions & 6 deletions include/asm-mips/irq.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,6 @@ static inline int irq_canonicalize(int irq)
#define irq_canonicalize(irq) (irq) /* Sane hardware, sane code ... */
#endif

extern asmlinkage unsigned int do_IRQ(unsigned int irq);

#ifdef CONFIG_MIPS_MT_SMTC
/*
* Clear interrupt mask handling "backstop" if irq_hwmask
Expand All @@ -43,8 +41,6 @@ do { \
#define __DO_IRQ_SMTC_HOOK() do { } while (0)
#endif

#ifdef CONFIG_PREEMPT

/*
* do_IRQ handles all normal device IRQ's (the special
* SMP cross-CPU interrupts have their own specific
Expand All @@ -61,8 +57,6 @@ do { \
irq_exit(); \
} while (0)

#endif

extern void arch_init_irq(void);
extern void spurious_interrupt(void);

Expand Down

0 comments on commit 187933f

Please sign in to comment.