Looks like a silIcon bug in MAC Ethernet controller on STM32H753 MCU: unexpected IRQ execution after transmittion of 0x80000000 packets
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2021-07-07 12:52 AM
Hi everybody.
We're facing some issues with MAC Ethernet controller on STM32H753 MCU. Situation looks like a silicon bug: after transmitting of 2147483648 (0x80000000) packets over Ethernet the internal MAC controller in the specific circumstances starts generating the unexpected interrupts that cannot be handled in IRQ handler since there are no appropriate bits available in DMACSR register. As a result the normal MCU working is stopped by the infinite Ethernet interrupt execution. Only reinitialization of the MAC controller helps to recover a normal MCU working.
Has anyone faced the same behaviour during MAC Ethernet packets transmittion?
- Labels:
-
Ethernet
-
STM32H7 Series
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2021-07-07 1:11 AM
Sounds like the MMC interrupts.
https://community.st.com/s/question/0D50X0000AIdSc0SQF/unwanted-interrupts-for-ethernetmac-mmc
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2021-07-07 1:17 AM
Yes, this is a very similar to our situation, except that we are using STM32H7 MCU. It looks strange that we didn't face it in our earlier projects that used STM32F7 MCUs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2021-07-07 1:42 AM
There are differences in the details of implementation, see given thread and the RM. Also, if you use any "library" such as Cube, it might've been adressed there, in the 'F7 version.
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2021-07-07 2:03 AM
You're right! We were using MAC Ethernet driver EMAC_STM32F7xx from MRK-ARM library that already contained some code to disable the MMC interrupts.
