Re: [PATCH] Compile __do_IRQ() when really needed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux