mcp251xfd strange interrupt configuration #74561
-
Hello zephyr community, I'm playing with the mcp251863-click board and with an EFR32MG24. In the init function, the interrupt is configured using
However, on the EFR32, the gpios cannot be configured using level interrupts, see gpio driver:
By curiosity, I've checked on stm32 and it seems it does not support it as well: --> see driver My question is:
Thanks, |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 7 replies
-
Ping @talih0, CC @henrikbrixandersen. |
Beta Was this translation helpful? Give feedback.
-
How would you change it? The MCP2518FD uses level-triggered interrupt lines (meaning the interrupt line is asserted as long as an interrupt flags is present). This is different from edge-triggered interrupts. |
Beta Was this translation helpful? Give feedback.
-
@henrikbrixandersen For example, STM32 also only supports edge-triggered interrupts (see this link). Any chance that the driver provides the option to enable usage with MCUs that only support edge-triggered interrupts? |
Beta Was this translation helpful? Give feedback.
-
Hello all, An update on this topic. In the end, I finally choose a solution in which I completely remove the interrupt and use I could not easily change the hardware, I don't need important CAN bitrate so that's fine. I don't think there's Regarding one of my initial question: "Am I the first one ever who have tried to connect an STM32 (or EFR32 in my case) with an MCP251x CAN controller ?" The answer is (probabbly) yes with this particular configuration. According to some discussion with the HW team, this I'm closing this topic, thanks for you explanations |
Beta Was this translation helpful? Give feedback.
Hello all,
An update on this topic. In the end, I finally choose a solution in which I completely remove the interrupt and use
polling of the pin. I agree with you henrik, this is not a good way to do it. However, for now, this is a solution
that suits my needs.
I could not easily change the hardware, I don't need important CAN bitrate so that's fine. I don't think there's
any change to bring to zephyr code, it's quite easy to spot when you're using the hardware that you have a misconfiguration
using GPIO_LEVEL_INTERRUPTS.
Regarding one of my initial question: "Am I the first one ever who have tried to connect an STM32 (or EFR32 in my case) with an MCP251x CAN controller ?"
The answer is …