Hello Dmitry, On 08/07/2014 08:09 AM, Dmitry Torokhov wrote: >> >> > irq_of_parse_and_map() already sets up IRQ trigger type based on DT >> > data, by calling irq_create_of_mapping() which in turn calls >> > irq_set_irq_type(). >> > >> >> Right but somehow when the IRQ is actually requested the type is overwritten >> by >> the value passed to request_threaded_irq() and interrupts are not being >> generated by the device without this patch. >> >> Do you think that this is a bug in the "interrupt-parent" irqchip driver or >> the >> IRQ core? I'm not that familiar with the IRQ subsystem. > > No, this is clearly driver fault - it smashed previously done setup with new > flags. >
Thanks a lot for the clarification. That was my understanding as well but wanted to be sure. >> > >> > It might be a bit cleaner to just assign the flags to pdata->irqflags in >> > mxt_parse_dt() instead. That would also account for the fact that pdata, >> > if provided, should have priority over DT. >> > >> >> You are totally right, also this will break if CONFIG_OF is not enabled since >> dev.of_node will not be defined. While this already is taken into account for >> mxt_parse_dt() by defining an empty function. >> >> I'll change it in v2 if getting the flags from the driver is the right >> approach > > Yes, please. > Just posted a v2 [0] with Tomasz suggestion and the patch is indeed a lot cleaner. Best regards, Javier [0]: https://lkml.org/lkml/2014/8/7/82 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/