On Fri, Aug 23, 2019 at 11:12 AM Marc Zyngier <marc.zyngier@xxxxxxx> wrote: > > We should be encouraged to operate on IRQ descriptors rather > > than IRQ numbers when doing this kind of deep core work, > > right? > > Certainly, I'd like to gradually move over from the IRQ number to an > irq_desc. In interrupt-heavy contexts, this ends up being quite time > consuming. I have an old patch series somewhere changing irq domains to > use irq_descs internally instead of IRQ numbers, which I should maybe > revive. We currently interact most heavily with the irqchip by way of mapping GPIO lines to the corresponding IRQs, so I suppose the existing int gpiod_to_irq(struct gpio_desc *desc); Need a corresponding struct irq_desc *gpiod_to_irq_desc(struct gpio_desc *desc); at some point, and then we can start to de-pollute the kernel from this for all drivers using the modern GPIO descriptor API. It's a big task but can certainly be done with some help. On the driver back-end we are in surprisingly good shape thanks to all the abstractions provided for dealing with IRQ chip drivers. Yours, Linus Walleij