[PATCH 5/5] ARM: msm: update GPIO chained IRQ handler to use EOI in parent chip

Thomas Gleixner tglx at linutronix.de
Thu Feb 24 10:42:08 EST 2011


On Thu, 24 Feb 2011, Will Deacon wrote:
> > On Wed, 23 Feb 2011, Abhijeet Dharmapurikar wrote:
> 
> Something like this?
> 
> diff --git a/arch/arm/mach-msm/gpio-v2.c b/arch/arm/mach-msm/gpio-v2.c
> index 0de19ec..90a968f 100644
> --- a/arch/arm/mach-msm/gpio-v2.c
> +++ b/arch/arm/mach-msm/gpio-v2.c
> @@ -310,6 +310,7 @@ static int msm_gpio_irq_set_type(unsigned int irq, unsigned int flow_type)
>  static void msm_summary_irq_handler(unsigned int irq, struct irq_desc *desc)
>  {
>         unsigned long i;
> +       struct irq_chip *chip = get_irq_desc_chip(desc);
>  
>         for (i = find_first_bit(msm_gpio.enabled_irqs, NR_GPIO_IRQS);
>              i < NR_GPIO_IRQS;
> @@ -318,7 +319,7 @@ static void msm_summary_irq_handler(unsigned int irq, struct irq_desc *desc)
>                         generic_handle_irq(msm_gpio_to_irq(&msm_gpio.gpio_chip,
>                                                            i));
>         }
> -       desc->chip->ack(irq);
> +       chip->irq_eoi(&desc->irq_data);

Yep. Thanks,

     tglx
> 



More information about the linux-arm-kernel mailing list