Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 25935
b: refs/heads/master
c: 93373ed
h: refs/heads/master
i:
  25933: f77ad7b
  25931: c253e44
  25927: 06dd42c
  25919: 317d4aa
v: v3
  • Loading branch information
Ralf Baechle committed Apr 19, 2006
1 parent 1808225 commit 58b5be8
Show file tree
Hide file tree
Showing 19 changed files with 41 additions and 45 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c9e321e095384f25f2b7ffef456794cfa876dafc
refs/heads/master: 93373ed4d87fb02554ce020d929388ac16913664
3 changes: 2 additions & 1 deletion trunk/arch/mips/au1000/common/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,6 @@ NESTED(au1000_IRQ, PT_SIZE, sp)

5:
move a0, sp
j spurious_interrupt
jal spurious_interrupt
j ret_from_irq
END(au1000_IRQ)
3 changes: 2 additions & 1 deletion trunk/arch/mips/ddb5xxx/ddb5476/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@
.set reorder

/* wrong alarm or masked ... */
// j spurious_interrupt
// jal spurious_interrupt
// j ret_from_irq
move a0, sp
jal vrc5476_irq_dispatch
j ret_from_irq
Expand Down
4 changes: 1 addition & 3 deletions trunk/arch/mips/ddb5xxx/ddb5476/vrc5476_irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,6 @@ vrc5476_irq_init(u32 base)
asmlinkage void
vrc5476_irq_dispatch(struct pt_regs *regs)
{
extern void spurious_interrupt(void);

u32 mask;
int nile4_irq;

Expand All @@ -107,5 +105,5 @@ vrc5476_irq_dispatch(struct pt_regs *regs)
return;
}
}
spurious_interrupt();
spurious_interrupt(regs);
}
4 changes: 2 additions & 2 deletions trunk/arch/mips/ddb5xxx/ddb5477/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@
.set reorder

/* wrong alarm or masked ... */
j spurious_interrupt
nop
jal spurious_interrupt
j ret_from_irq
END(ddb5477_handle_int)

.align 5
Expand Down
4 changes: 3 additions & 1 deletion trunk/arch/mips/dec/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,9 @@ fpu:
#endif

spurious:
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
nop
END(decstation_handle_int)

Expand Down
3 changes: 2 additions & 1 deletion trunk/arch/mips/galileo-boards/ev96100/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -29,5 +29,6 @@ NESTED(ev96100IRQ, PT_SIZE, sp)
jal ev96100_cpu_irq
j ret_from_irq

3: j spurious_interrupt
3: jal spurious_interrupt
j ret_from_irq
END(ev96100IRQ)
3 changes: 2 additions & 1 deletion trunk/arch/mips/gt64120/ev64120/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,9 @@
nop

/* wrong alarm or masked ... */
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
END(galileo_handle_int)


Expand Down
3 changes: 2 additions & 1 deletion trunk/arch/mips/jazz/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -263,7 +263,8 @@ loc_call: /*
/*
* "Jump extender" to reach spurious_interrupt
*/
3: j spurious_interrupt
3: jal spurious_interrupt
j ret_from_irq

/*
* Vectors for interrupts generated by local devices
Expand Down
26 changes: 0 additions & 26 deletions trunk/arch/mips/kernel/entry.S
Original file line number Diff line number Diff line change
Expand Up @@ -119,29 +119,3 @@ syscall_exit_work:
li a1, 1
jal do_syscall_trace
b resume_userspace

/*
* Common spurious interrupt handler.
*/
LEAF(spurious_interrupt)
/*
* Someone tried to fool us by sending an interrupt but we
* couldn't find a cause for it.
*/
PTR_LA t1, irq_err_count
#ifdef CONFIG_SMP
1: ll t0, (t1)
addiu t0, 1
sc t0, (t1)
#if R10000_LLSC_WAR
beqzl t0, 1b
#else
beqz t0, 1b
#endif
#else
lw t0, (t1)
addiu t0, 1
sw t0, (t1)
#endif
j ret_from_irq
END(spurious_interrupt)
5 changes: 5 additions & 0 deletions trunk/arch/mips/kernel/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,11 @@ int show_interrupts(struct seq_file *p, void *v)
return 0;
}

asmlinkage void spurious_interrupt(struct pt_regs *regs)
{
atomic_inc(&irq_err_count);
}

#ifdef CONFIG_KGDB
extern void breakpoint(void);
extern void set_debug_traps(void);
Expand Down
4 changes: 3 additions & 1 deletion trunk/arch/mips/mips-boards/generic/mipsIRQ.S
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,8 @@


spurious:
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
nop
END(mipsIRQ)
4 changes: 3 additions & 1 deletion trunk/arch/mips/mips-boards/sim/sim_irq.S
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,8 @@


spurious:
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
nop
END(simIRQ)
4 changes: 3 additions & 1 deletion trunk/arch/mips/momentum/ocelot_3/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,10 @@
.set reorder

/* wrong alarm or masked ... */
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
nop
END(ocelot3_handle_int)

.align 5
Expand Down
3 changes: 2 additions & 1 deletion trunk/arch/mips/momentum/ocelot_c/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,9 @@
.set reorder

/* wrong alarm or masked ... */
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
END(ocelot_handle_int)

.align 5
Expand Down
3 changes: 2 additions & 1 deletion trunk/arch/mips/philips/pnx8550/common/mipsIRQ.S
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,9 @@

/* wrong alarm or masked ... */

j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
END(cp0_irqdispatch)

.align 5
Expand Down
3 changes: 2 additions & 1 deletion trunk/arch/mips/tx4927/common/tx4927_irq_handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,9 @@
.set reorder

/* wrong alarm or masked ... */
j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
END(tx4927_irq_handler)

.align 5
Expand Down
4 changes: 3 additions & 1 deletion trunk/arch/mips/vr41xx/common/int-handler.S
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,10 @@
bnez t1, handle_irq
li a0, 1

j spurious_interrupt
jal spurious_interrupt
nop
j ret_from_irq
nop

handle_int:
jal irq_dispatch
Expand Down
1 change: 1 addition & 0 deletions trunk/include/asm-mips/irq.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,5 +46,6 @@ do { \
#endif

extern void arch_init_irq(void);
extern void spurious_interrupt(struct pt_regs *regs);

#endif /* _ASM_IRQ_H */

0 comments on commit 58b5be8

Please sign in to comment.