On Tue, Sep 21, 2021 at 10:27 AM Marc Zyngier <maz@xxxxxxxxxx> wrote: > Linus: is there a reason why the gpiolib insist on setting its own > handler while building the hierarchy? Is it this? /* * We set handle_bad_irq because the .set_type() should * always be invoked and set the right type of handler. */ irq_domain_set_info(d, irq, hwirq, gc->irq.chip, gc, girq->handler, NULL, NULL); irq_set_probe(irq); (...) IIUC it's because sometimes, on elder systems (such as ixp4xx) some machines are still using boardfiles, and drivers are not obtaining IRQs dynamically from device tree or ACPI, instead they are set up statically at machine init. I assume it would otherwise be done as part of ops->translate? I suppose it could be solved with a patch that take this route only if we're not using device tree or ACPI? If this is the totally wrong answer then forgive me... a bit tired. Yours, Linus Walleij