On Wed, May 6, 2015 at 6:42 PM, Dmitry Eremin-Solenikov
[off-list ref] wrote:
2015-05-06 17:15 GMT+03:00 Linus Walleij [off-list ref]:
quoted
On Tue, Apr 28, 2015 at 1:55 AM, Dmitry Eremin-Solenikov
[off-list ref] wrote:
quoted
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 <redacted>
Reviewed-by: Linus Walleij <redacted>
Thanks for review of the patches.
quoted
Assume this will also go through MFD.
quoted
+ 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