Dmitry Eremin-Solenikov <dbaryshkov@xxxxxxxxx> writes: > 2014-11-27 1:12 GMT+03:00 Robert Jarzmik <robert.jarzmik@xxxxxxx>: >> OK Dmitry, I pulled through, the interrupts are working back. > > What was the problem? Hardware issues? Firmware in CPLD being of old > revision? There were basically 2 problems : - hardware: switch S13 was in a position that disabled interrupts all the time One other problem which fooled me was the incorrect gate schematics I had, and which make my understanding of linear function foo such as GPIO0 = foo(LUB_IRQ_EN, LUB_SET_CLR) false. - software: lubbock.c error Since gpio-pxa was ported to device/gpio, it is probed *after* lubbock_init_irq() is called. As lubbock_init_irq() installs lubbock_irq_handler() and sets the irq to falling edge detect before gpio-pxa is probed, gpio-pxa probe overwrites this by : - clearing any edge detection (probe state reset) - installing generic handle_edge_irq() instead of the lubbock irq handler So the conclusion is that I have to rework lubbock_init_irq(), remove from it the PXA_GPIO_TO_IRQ(0) stuff, and move it to a code in lubbock.c which will provide the guarantee of being executed _after_ gpio-pxa is probed. When I'm happy with my patch I'll submit it. Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html