regmap-irq: Fix a bug in regmap_irq_enable() for type_in_mask chips
authorAidan MacDonald <aidanmacdonald.0x0@gmail.com>
Mon, 20 Jun 2022 20:05:56 +0000 (21:05 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 22 Jun 2022 10:59:51 +0000 (11:59 +0100)
commit485037ae9a095491beb7f893c909a76cc4f9d1e7
tree621c5f19c75c608cf93cf4e9cdaab8bc0cd897da
parent2a166929bc0a3ae754365dabc455039fd1be82ca
regmap-irq: Fix a bug in regmap_irq_enable() for type_in_mask chips

When enabling a type_in_mask irq, the type_buf contents must be
AND'd with the mask of the IRQ we're enabling to avoid enabling
other IRQs by accident, which can happen if several type_in_mask
irqs share a mask register.

Fixes: bc998a730367 ("regmap: irq: handle HW using separate rising/falling edge interrupts")
Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com>
Link: https://lore.kernel.org/r/20220620200644.1961936-2-aidanmacdonald.0x0@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/base/regmap/regmap-irq.c