[MIPS] Rewrite all the assembler interrupt handlers to C.
Saves like 1,600 lines of code, is way easier to debug, compilers frequently do a better job than the cut and paste type of handlers many boards had. And finally having all the stuff done in a single place also means alot of bug potencial for the MT ASE is gone. The only surviving handler in assembler is the DECstation one; I hope Maciej will rewrite it. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
@@ -36,7 +36,7 @@
|
||||
.text
|
||||
.set noreorder
|
||||
/*
|
||||
* decstation_handle_int: Interrupt handler for DECstations
|
||||
* plat_irq_dispatch: Interrupt handler for DECstations
|
||||
*
|
||||
* We follow the model in the Indy interrupt code by David Miller, where he
|
||||
* says: a lot of complication here is taken away because:
|
||||
@@ -125,11 +125,7 @@
|
||||
* just take another exception, big deal.
|
||||
*/
|
||||
.align 5
|
||||
NESTED(decstation_handle_int, PT_SIZE, ra)
|
||||
.set noat
|
||||
SAVE_ALL
|
||||
CLI # TEST: interrupts should be off
|
||||
.set at
|
||||
NESTED(plat_irq_dispatch, PT_SIZE, ra)
|
||||
.set noreorder
|
||||
|
||||
/*
|
||||
@@ -286,7 +282,7 @@ spurious:
|
||||
nop
|
||||
j ret_from_irq
|
||||
nop
|
||||
END(decstation_handle_int)
|
||||
END(plat_irq_dispatch)
|
||||
|
||||
/*
|
||||
* Generic unimplemented interrupt routines -- cpu_mask_nr_tbl
|
||||
|
@@ -48,8 +48,6 @@ extern void dec_machine_halt(void);
|
||||
extern void dec_machine_power_off(void);
|
||||
extern irqreturn_t dec_intr_halt(int irq, void *dev_id, struct pt_regs *regs);
|
||||
|
||||
extern asmlinkage void decstation_handle_int(void);
|
||||
|
||||
unsigned long dec_kn_slot_base, dec_kn_slot_size;
|
||||
|
||||
EXPORT_SYMBOL(dec_kn_slot_base);
|
||||
@@ -744,7 +742,6 @@ void __init arch_init_irq(void)
|
||||
panic("Don't know how to set this up!");
|
||||
break;
|
||||
}
|
||||
set_except_vector(0, decstation_handle_int);
|
||||
|
||||
/* Free the FPU interrupt if the exception is present. */
|
||||
if (!cpu_has_nofpuex) {
|
||||
|
Reference in New Issue
Block a user