On Fri, Mar 6, 2020 at 1:18 PM Marc Zyngier <maz@xxxxxxxxxx> wrote: > On 2020-03-06 12:12, Linus Walleij wrote: > > +static void msm_gpio_irq_eoi(struct irq_data *d) > > +{ > > + if (d->parent_data) > > + irq_chip_eoi_parent(d); > > +} > > + (...) > > - pctrl->irq_chip.irq_eoi = irq_chip_eoi_parent; > > + pctrl->irq_chip.irq_eoi = msm_gpio_irq_eoi; > > pctrl->irq_chip.irq_set_type = msm_gpio_irq_set_type; > > pctrl->irq_chip.irq_set_wake = msm_gpio_irq_set_wake; > > pctrl->irq_chip.irq_request_resources = msm_gpio_irq_reqres; > > Long term, it may me better to offer a different set of callbacks > for interrupts that are terminated at the pinctrl level. Yeah, it's gpiolib here actually. Pin control is pretty much innocent, it's just that the driver doubles as a GPIO driver with an irqchip inside it. > In the meantime, and as a fix: > > Acked-by: Marc Zyngier <maz@xxxxxxxxxx> > > I assume you'll take this via the pinctrl tree? Yeps, thanks Marc! Yours, Linus Walleij