Hi Marc, On Thu, 30 Sept 2021 at 22:53, Marc Zyngier <maz@xxxxxxxxxx> wrote: > Somehow, the handler for this interrupt is set to handle_bad_irq(), > which probably isn't what you want. You'll have to find out who sets > this (there is a comment about that in gpiolib.c, but I haven't had a > chance to find where this is coming from). > > Do you happen to set it in your driver? The gpio driver (gpio-msc313.c) sets it during probe: gpioirqchip = &gpiochip->irq; gpioirqchip->chip = &msc313_gpio_irqchip; gpioirqchip->fwnode = of_node_to_fwnode(dev->of_node); gpioirqchip->parent_domain = parent_domain; gpioirqchip->child_to_parent_hwirq = match_data->child_to_parent_hwirq; gpioirqchip->populate_parent_alloc_arg = match_data->populate_parent_fwspec; gpioirqchip->handler = handle_bad_irq; gpioirqchip->default_type = IRQ_TYPE_NONE; Cheers, Daniel