From: Thomas Gleixner Date: Sat, 1 Jul 2006 22:01:50 +0000 (+0100) Subject: [ARM] 3683/2: ARM: Convert at91rm9200 to generic irq handling X-Git-Tag: v2.6.18-rc1~144^2 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=07d265dd59456f702b7d2a1ac471f06ee4adc9ef;p=linux-2.6-omap-h63xx.git [ARM] 3683/2: ARM: Convert at91rm9200 to generic irq handling Patch from Thomas Gleixner From: Thomas Gleixner Fixup the conversion to generic irq subsystem. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar Signed-off-by: Russell King --- diff --git a/arch/arm/mach-at91rm9200/gpio.c b/arch/arm/mach-at91rm9200/gpio.c index 83c34747087..5783c282ae7 100644 --- a/arch/arm/mach-at91rm9200/gpio.c +++ b/arch/arm/mach-at91rm9200/gpio.c @@ -10,12 +10,13 @@ */ #include +#include +#include #include #include #include #include -#include #include #include @@ -340,7 +341,7 @@ static void gpio_irq_handler(unsigned irq, struct irqdesc *desc, struct pt_regs void __iomem *pio; u32 isr; - pio = desc->base; + pio = get_irq_chip_data(irq); /* temporarily mask (level sensitive) parent IRQ */ desc->chip->ack(irq); @@ -350,12 +351,12 @@ static void gpio_irq_handler(unsigned irq, struct irqdesc *desc, struct pt_regs if (!isr) break; - pin = (unsigned) desc->data; + pin = (unsigned) get_irq_data(irq); gpio = &irq_desc[pin]; while (isr) { if (isr & 1) { - if (unlikely(gpio->disable_depth)) { + if (unlikely(gpio->depth)) { /* * The core ARM interrupt handler lazily disables IRQs so * another IRQ must be generated before it actually gets @@ -364,7 +365,7 @@ static void gpio_irq_handler(unsigned irq, struct irqdesc *desc, struct pt_regs gpio_irq_mask(pin); } else - gpio->handle(pin, gpio, regs); + desc_handle_irq(pin, gpio, regs); } pin++; gpio++; diff --git a/arch/arm/mach-at91rm9200/time.c b/arch/arm/mach-at91rm9200/time.c index f2f080350cc..1f080e6ea50 100644 --- a/arch/arm/mach-at91rm9200/time.c +++ b/arch/arm/mach-at91rm9200/time.c @@ -21,13 +21,13 @@ #include #include +#include #include #include #include #include #include -#include #include static unsigned long last_crtr;