Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MCAN's RF0L and RF1L Interrupts not Handled #63544

Closed
legoabram opened this issue Oct 4, 2023 · 0 comments · Fixed by #63489
Closed

MCAN's RF0L and RF1L Interrupts not Handled #63544

legoabram opened this issue Oct 4, 2023 · 0 comments · Fixed by #63489
Assignees
Labels
area: CAN bug The issue is a bug, or the PR is fixing a bug priority: medium Medium impact/importance bug

Comments

@legoabram
Copy link
Collaborator

legoabram commented Oct 4, 2023

Describe the bug
The message lost interrupt in the mcan driver is being directed to the line 0 interrupt instead of line 1 which is what handles that interrupt. When this interrupt occurs, the controller will lock up since it never clears/handles the interrupt.

To Reproduce
I have not replicated the error using a built in Zephyr board, but I expect that it will exhibit identical behavior if paused during debug. In particular, I am operating on an STM32H753VI. The behavior that the MCAN is not halted when the cpu is halted may be specific to this family, but I haven't looked into it. That said, I have confirmed that my fix removes the problem, and aligns with the intended operation of the driver.

Expected behavior
MCAN driver should properly handle a Message Lost interrupt and not lock up the processor.

Impact
This is a critical fault as it prevents debugging (Since the MCAN isn't halted when the cpu is halted, it fills the FIFO and start missing messages which triggers the failure.) and also would lock up the processor in the event that the CPU can't process all of the messages in time.

Fix
RF0L and RF1L simply need to be moved to line 1 instead. I've already posted the pull request to fix it: #63489

Environment (please complete the following information):

  • OS: Windows 11
  • Toolchain: GCC arm-none-eabi 12.2.rel1
  • Commit: v3.4-branch or 3e75c22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: CAN bug The issue is a bug, or the PR is fixing a bug priority: medium Medium impact/importance bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants