]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
misc: microchip: pci1xxxx: Fix incorrect IRQ status handling during ack
authorRengarajan S <rengarajan.s@microchip.com>
Thu, 13 Mar 2025 17:08:56 +0000 (22:38 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 05:50:49 +0000 (07:50 +0200)
commit5d5e8a880c48d4901632a8c4ade7e2e8ab81489f
tree57465e0fb5bb440884e9f9c9412424107832423a
parent62957f58ab3aa7fa792dc6ff3575624062539a4d
misc: microchip: pci1xxxx: Fix incorrect IRQ status handling during ack

commit e9d7748a7468581859d2b85b378135f9688a0aff upstream.

Under irq_ack, pci1xxxx_assign_bit reads the current interrupt status,
modifies and writes the entire value back. Since, the IRQ status bit
gets cleared on writing back, the better approach is to directly write
the bitmask to the register in order to preserve the value.

Fixes: 1f4d8ae231f4 ("misc: microchip: pci1xxxx: Add gpio irq handler and irq helper functions irq_ack, irq_mask, irq_unmask and irq_set_type of irq_chip.")
Cc: stable <stable@kernel.org>
Signed-off-by: Rengarajan S <rengarajan.s@microchip.com>
Link: https://lore.kernel.org/r/20250313170856.20868-3-rengarajan.s@microchip.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/mchp_pci1xxxx/mchp_pci1xxxx_gpio.c