I have a device with an MCXN947. It's running FreeRTOS. Using LPTMR, it periodically goes into power-down mode, wakes up on the timer interrupt, maybe does a few things, then goes back into power-down mode. Something like this:
vTaskSuspendAll(); // FreeRTOS
PM_EnterLowPower(); // LPTMR interrupt will wake us up
xTaskResumeAll(); // FreeRTOS
There's really only one other task running when it wakes up and it does some I2C comms.
The problem is that the processor occasionally resets (can't reliably reproduce). The CMC SRS register reads 0x00004010, a warm SW reset. Code isn't calling reset anywhere, maybe NXP's assert() or FreeRTOS's configASSERT().
Are there other internal sources could be causing a SW reset?