This is an automated email from the ASF dual-hosted git repository. jerpelea pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit 0b949f7bd2689d24ecb63abcf776a7c60c81aa76 Author: p-szafonimateusz <[email protected]> AuthorDate: Thu Oct 30 15:23:30 2025 +0100 can/ctucanfd_pci.c: fix spurious RX interrupt for socketCAN. Fix spurious RX interrupt for socketCAN in CTU CAN FD. We have to clear RX interrupt status before re-enabling interrupts. Signed-off-by: p-szafonimateusz <[email protected]> --- drivers/can/ctucanfd_pci.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/can/ctucanfd_pci.c b/drivers/can/ctucanfd_pci.c index 7b99299ff89..ba9399ff118 100644 --- a/drivers/can/ctucanfd_pci.c +++ b/drivers/can/ctucanfd_pci.c @@ -1255,6 +1255,10 @@ static FAR netpkt_t *ctucanfd_sock_recv(FAR struct netdev_lowerhalf_s *dev) regval = ctucanfd_getreg(priv, CTUCANFD_RXSETSTAT); if ((regval & CTUCANFD_RXSTAT_RXE) != 0) { + /* Clear RX interrupt before re-enabling interrupts */ + + ctucanfd_putreg(priv, CTUCANFD_INTSTAT, CTUCANFD_SOCK_RXINT); + /* Re-enable RX interrupts if no more messages to read */ ctucanfd_rxint(priv, true);
