diff options
Diffstat (limited to 'arch/mips')
-rw-r--r-- | arch/mips/dec/ioasic-irq.c | 8 | ||||
-rw-r--r-- | arch/mips/include/asm/dec/ioasic.h | 2 |
2 files changed, 10 insertions, 0 deletions
diff --git a/arch/mips/dec/ioasic-irq.c b/arch/mips/dec/ioasic-irq.c index 824e08c73798..4b3e3a4375a6 100644 --- a/arch/mips/dec/ioasic-irq.c +++ b/arch/mips/dec/ioasic-irq.c | |||
@@ -51,6 +51,14 @@ static struct irq_chip ioasic_irq_type = { | |||
51 | .irq_unmask = unmask_ioasic_irq, | 51 | .irq_unmask = unmask_ioasic_irq, |
52 | }; | 52 | }; |
53 | 53 | ||
54 | void clear_ioasic_dma_irq(unsigned int irq) | ||
55 | { | ||
56 | u32 sir; | ||
57 | |||
58 | sir = ~(1 << (irq - ioasic_irq_base)); | ||
59 | ioasic_write(IO_REG_SIR, sir); | ||
60 | } | ||
61 | |||
54 | static struct irq_chip ioasic_dma_irq_type = { | 62 | static struct irq_chip ioasic_dma_irq_type = { |
55 | .name = "IO-ASIC-DMA", | 63 | .name = "IO-ASIC-DMA", |
56 | .irq_ack = ack_ioasic_irq, | 64 | .irq_ack = ack_ioasic_irq, |
diff --git a/arch/mips/include/asm/dec/ioasic.h b/arch/mips/include/asm/dec/ioasic.h index be4d62a5a10e..a6e505a0e44b 100644 --- a/arch/mips/include/asm/dec/ioasic.h +++ b/arch/mips/include/asm/dec/ioasic.h | |||
@@ -31,6 +31,8 @@ static inline u32 ioasic_read(unsigned int reg) | |||
31 | return ioasic_base[reg / 4]; | 31 | return ioasic_base[reg / 4]; |
32 | } | 32 | } |
33 | 33 | ||
34 | extern void clear_ioasic_dma_irq(unsigned int irq); | ||
35 | |||
34 | extern void init_ioasic_irqs(int base); | 36 | extern void init_ioasic_irqs(int base); |
35 | 37 | ||
36 | extern int dec_ioasic_clocksource_init(void); | 38 | extern int dec_ioasic_clocksource_init(void); |