On Fri, 1 Dec 2006, Franck Bui-Huu wrote:
> diff --git a/arch/mips/dec/ioasic-irq.c b/arch/mips/dec/ioasic-irq.c
> index 269b22b..c5248a1 100644
> --- a/arch/mips/dec/ioasic-irq.c
> +++ b/arch/mips/dec/ioasic-irq.c
> @@ -55,19 +55,12 @@ static inline void ack_ioasic_irq(unsign
> fast_iob();
> }
>
> -static inline void end_ioasic_irq(unsigned int irq)
> -{
> - if (!(irq_desc[irq].status & (IRQ_DISABLED | IRQ_INPROGRESS)))
> - unmask_ioasic_irq(irq);
> -}
> -
> static struct irq_chip ioasic_irq_type = {
> .typename = "IO-ASIC",
> .ack = ack_ioasic_irq,
> .mask = mask_ioasic_irq,
> .mask_ack = ack_ioasic_irq,
> .unmask = unmask_ioasic_irq,
> - .end = end_ioasic_irq,
> };
>
>
> @@ -77,20 +70,12 @@ static struct irq_chip ioasic_irq_type =
>
> #define ack_ioasic_dma_irq ack_ioasic_irq
>
> -static inline void end_ioasic_dma_irq(unsigned int irq)
> -{
> - clear_ioasic_irq(irq);
> - fast_iob();
> - end_ioasic_irq(irq);
> -}
> -
> static struct irq_chip ioasic_dma_irq_type = {
> .typename = "IO-ASIC-DMA",
> .ack = ack_ioasic_dma_irq,
> .mask = mask_ioasic_dma_irq,
> .mask_ack = ack_ioasic_dma_irq,
> .unmask = unmask_ioasic_dma_irq,
> - .end = end_ioasic_dma_irq,
> };
>
>
You have removed a call to clear_ioasic_irq() -- I/O ASIC DMA engines
will cease to work as a result.
Maciej
|