This update (to this patch) resolves that problem ... please merge this into the next version. --- beagle.orig/drivers/gpio/twl4030-gpio.c 2008-09-29 17:19:37.000000000 -0700 +++ beagle/drivers/gpio/twl4030-gpio.c 2008-09-29 17:16:04.000000000 -0700 @@ -41,9 +41,22 @@ #include <linux/i2c/twl4030-gpio.h> +static inline void activate_irq(int irq) +{ +#ifdef CONFIG_ARM + /* ARM requires an extra step to clear IRQ_NOREQUEST, which it + * sets on behalf of every irq_chip. Also sets IRQ_NOPROBE. + */ + set_irq_flags(irq, IRQF_VALID); +#else + /* same effect on other architectures */ + set_irq_noprobe(irq); +#endif +} + +static struct gpio_chip twl_gpiochip; static int twl4030_gpio_irq_base; static int twl4030_gpio_irq_end; -static struct gpio_chip twl_gpiochip; /* genirq interfaces are not available to modules */ #ifdef MODULE @@ -839,9 +852,9 @@ static int __devinit gpio_twl4030_probe( /* install an irq handler for each of the gpio interrupts */ for (irq = twl4030_gpio_irq_base; irq < twl4030_gpio_irq_end; irq++) { - set_irq_noprobe(irq); set_irq_chip_and_handler(irq, &twl4030_gpio_irq_chip, do_twl4030_gpio_irq); + activate_irq(irq); } /* gpio module IRQ */ -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html