On Wed, May 6, 2015 at 6:42 PM, Dmitry Eremin-Solenikov <dbaryshkov@xxxxxxxxx> wrote: > 2015-05-06 17:15 GMT+03:00 Linus Walleij <linus.walleij@xxxxxxxxxx>: >> On Tue, Apr 28, 2015 at 1:55 AM, Dmitry Eremin-Solenikov >> <dbaryshkov@xxxxxxxxx> wrote: >> >>> LoCoMo has a possibility to generate per-GPIO edge irqs. Support for >>> that was there in old locomo driver, got 'cleaned up' during old driver >>> IRQ cascading cleanup and is now reimplemented. It is expected that >>> SL-5500 (collie) will use locomo gpio irqs for mmc detection irq. >>> >>> Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@xxxxxxxxx> >> >> Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > > Thanks for review of the patches. > >> Assume this will also go through MFD. >> >>> + irq_set_chained_handler(lg->irq, NULL); >>> + irq_set_handler_data(lg->irq, NULL); >> >> Why is this needed? If the GPIOLIB_IRQCHIP code in >> gpiolib.c is not doing this then maybe it's the core code that >> needs fixing rather than having this in the driver. > > I have skimmed through the rest of drivers using > gpiochip_set_chained_irqchip(). Indeed none of the drivers NULL > the chained handled and handler data. However I couldn't locate > the code where they would be cleared. > > Should I still send the patch fixing the GPIOLIB_IRQCHIP? Yes I guess you need to save parent_irq in struct gpio_chip and remove it in gpiochip_irqchip_remove() if it's != 0. Yours, Linus Walleij -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html