Messages in this thread | | | Date | Thu, 6 Aug 2015 15:29:26 +0200 | From | Andrew Lunn <> | Subject | Re: Armadaxp GPIO interrupts |
| |
> mvebu_gpio_irq_handler is only called if I register a another handler > at irq=82/83/84/85/87/88/89/90/92. I am registering this handler using > minimal kernel module.
This is totally wrong. The gpio driver needs these interrupts, and will register a chained interrupt handle for these. Don't mess around with them. Here is the code in the driver:
/* Setup the interrupt handlers. Each chip can have up to 4 * interrupt handlers, with each handler dealing with 8 GPIO * pins. */ for (i = 0; i < 4; i++) { int irq = platform_get_irq(pdev, i);
if (irq < 0) continue; irq_set_handler_data(irq, mvchip); irq_set_chained_handler(irq, mvebu_gpio_irq_handler); }
Andrew
| |