Tool/software:
Hi,
we develop a full functional application with 4 cores of 2 F28384D (3C28 and 1CM): we call them Main (1C28 and 1CM) and Control (2 C28 cores). Now, we updated the board hardware and we made some modifications to the pinout: by the way, the main change is that now we use only the CPU1 core of the Main MCU, almost nothing changed for the Control MCU.
In the first deployment, I was in debug in CPU1 core of the Main (with FreeRTOS) and after the init part, the tasks started but very soon the core resetted. I repeated a lot of times and I got the same behaviour. Thus, I switched to example projects (e.g empty and blink, because we used the GPIO31 and GPIO34 for leds as the examples for the development board) and I checked that the empty project could run with no issue but I get the same reset behaviour after init part with the blink examples. No difference between FLASH or RAM execution.
Moreover, I tried the same examples on the Control MCU and they perfectly executes with no issue.
So, I supposed an hardware problem on the Main MCU and I changed board, but I got the same behaviour. Then, I measured the clock an power supplys and everything seems ok.
Then, I tried to disable some init part in the Device_Init() funciton and I got that disabling Device_enableAllPeripherals();, the blink example starts and execute well.
//
// Turn on all peripherals
//
// Device_enableAllPeripherals();
Device_initGPIO();
I tried to comment som parts in it, but it seems that I can get different combinations where the program starts, but then reset after some seconds or other combinations where it starts in debug but it does not start if I reset manually the board (FLASH execution with correct boot pins) or with a power supply cycle or other combinations where it starts and executes, after some seconds resets, then return to start and execute.
Finally, I have I monitored the CpuSysRegs.RESC register and in debug I could check that, after deleting any previous cause:
//
// Initialize device clock and peripherals
//
Device_init();
EALLOW;
uint16_t cause = SysCtl_getResetCause();
SysCtl_clearResetCause(cause);
SysCtl_disableWatchdog(); // try to disable it again
EDIS;
I got that, even though the WD is disabled, a WDRSn reset happens and sometimes I got also the XRSn reset:

The MCU keeps resetting avery 14.4ms, if it can help. In the following the schematic of the custom circuitry:

Thus, I'm little confused: I can see a code dependency, but I still think to some hardware issue/interaction between pinout/reset circuitry and peripherals: can you help me, please?
Fabio
