On Tue, Nov 23, 2021 at 01:08:30PM +0200, Mika Westerberg wrote: > On Mon, Nov 22, 2021 at 11:04:23PM +0100, Hans de Goede wrote: > > The byt_irq_type function ends with the IRQ masked, this means that calls > > to irq_set_irq_type() while the IRQ is enabled end up masking it, which > > is wrong. Add the IRQCHIP_SET_TYPE_MASKED flag to fix this. > > > > This will make the IRQ core call mask() + unmask() on the IRQ around > > a set_type() call when the IRQ is enabled at the type of the call. > > > > Note in practice irq_set_irq_type() getting called while the IRQ is enabled > > almost never happens. I hit this with a buggy DSDT where a wrongly active > > (_STA returns 0xf) I2C ACPI devices point to an IRQ already in use by an > > _AEI handler, leading to the irq_set_irq_type() call in > > acpi_dev_gpio_irq_get_by() getting called while the IRQ is enabled. > > > > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > > Acked-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> Pushed to my review and testing queue, thanks! -- With Best Regards, Andy Shevchenko