]> git.hungrycats.org Git - linux/commit
net: txgbe: fix GPIO interrupt blocking
authorJiawen Wu <jiawenwu@trustnetic.com>
Fri, 1 Mar 2024 09:29:55 +0000 (17:29 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 May 2024 07:49:52 +0000 (09:49 +0200)
commit40503e6045704b0a4f071568ffaabb2eee3d9431
treeeb5b4771661101b3262415e28fd664e7582e265a
parentc273577b185360be2fed143f4f05ba115569c606
net: txgbe: fix GPIO interrupt blocking

[ Upstream commit b4a2496c17ed645f8d51061047c9c249b58c74ba ]

The register of GPIO interrupt status is masked before MAC IRQ
is enabled. This is because of hardware deficiency. So manually
clear the interrupt status before using them. Otherwise, GPIO
interrupts will never be reported again. There is a workaround for
clearing interrupts to set GPIO EOI in txgbe_up_complete().

Fixes: aefd013624a1 ("net: txgbe: use irq_domain for interrupt controller")
Signed-off-by: Jiawen Wu <jiawenwu@trustnetic.com>
Link: https://lore.kernel.org/r/20240301092956.18544-1-jiawenwu@trustnetic.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/wangxun/txgbe/txgbe_main.c
drivers/net/ethernet/wangxun/txgbe/txgbe_phy.c
drivers/net/ethernet/wangxun/txgbe/txgbe_phy.h