SPRZ447E July 2017 – July 2024 AM5746 , AM5748 , AM5749
MPU COUNTER_REALTIME saturates after several hundred days
Major
After several hundred days (specific duration depends on the primary input clock SYS_CLK1 frequency, see table below for example durations) of continuous operation the MPU COUNTER_REALTIME saturates at 0xBB8000000000 and no longer generates interrupts. There is no way to reset the counter except for a system reset.
For software/systems that use this timer and operate for extended periods of time without any type of reset or power cycle, this can lead to a system hang. For systems that regularly go through a power cycle or reset there is no issue.
SYS_CLK1 | Days until saturation |
---|---|
19.2 MHz | 404 |
20 MHz | 388 |
27 MHz | 287 |
Workaround 1: Avoid the issue by requiring the user to preform a scheduled reset/restart of the system sometime prior the saturation time.
Workaround 2: Recover from the issue by enabling a system watchdog reset to expire after the issue has occurred.
Workaround 3: Use GP Timer instead of COUNTER_REALTIME in systems requiring continuous up time.