On 08.12.20 17:18, Grygorii Strashko wrote: >>>> Having all GPIO drivers doing their IRQ management entirely through the >>>> GPIO subsystem (eg. never calling generic_handle_irq() and using the >>>> builtin >>>> IRQ handling) would also allow a more direct (eg. callback-based) >>>> pin change >>>> notification for GPIO consumers, that doesn't involve registering >>>> them as >>>> generic IRQ handlers. > > Above part makes me worry - why? Why so ? Little clarification, in case i've been a bit confusion - there're two separate topics: a) consolidating repeated patterns (eg. calling the actual irq handling) into gpiolib, (and later possibly use more fields already existing in struct gpio_chip for irq handling) b) a direct consumer callback for change, where the consumer doesn't have to care about IRQs at all (some drivers could even do polling, when hw doesn't have IRQs). This is for consumers that don't use GPIOs as interrupt source, but more more like a very raw serial port, eg. bitbanging of other interfaces (maybe an gpio bus type ? ;-)) The above paragraph just outlines that b) might be much easier to implement, once the suggested refactoring is done and no driver would call irq handlers directly anymore. But this hasn't much to do with the proposal itself, just an idea for future use. --mtx -- --- Hinweis: unverschlüsselte E-Mails können leicht abgehört und manipuliert werden ! Für eine vertrauliche Kommunikation senden Sie bitte ihren GPG/PGP-Schlüssel zu. --- Enrico Weigelt, metux IT consult Free software and Linux embedded engineering info@xxxxxxxxx -- +49-151-27565287