Part Number: AM5718
Hi,
I have made a custom board based on AM5718. I have 10 of them. In one of the boards , I observe a reset issue.
Issue manifests as follows
1. When I try to boot Linux from SD card it reboots continuously
I have traced in hardware source for reboot and it is observed that processor issues RSTOUT_N while booting
2. I am able to connect to device using JTAG and perform DDR read and writes properly
3. I have checked the voltage rails of AM5718 . Rail voltages seems ok.
4. i do not observe this problem on other boards
5. On running code using JTAG, reset causing function is identified as
----------##########----------
S16 S16_PinMux_Config()
{
U32 size;
/* i890: MMC1 IOs and PBIAS Must Be Powered-Up before Isolation:
* Power-up the MMC1 IOs and PBIAS before starting the Isolation Sequence. This can be
* done by setting the CTRL_CORE_CONTROL_PBIAS[27] SDCARD_BIAS_PWRDNZ
* and CTRL_CORE_CONTROL_PBIAS[26] SDCARD_IO_PWRDNZ bits to 1.
*/
CSL_control_core_padRegs *hCtrlCorePad =
(CSL_control_core_padRegs *) CSL_MPU_CTRL_MODULE_CORE_CORE_PAD_REGISTERS_REGS;
U32 regVal = hCtrlCorePad->CONTROL_PBIAS;
CSL_FINST(regVal, CONTROL_CORE_PAD_CONTROL_PBIAS_SDCARD_BIAS_PWRDNZ, DISABLE);
CSL_FINST(regVal, CONTROL_CORE_PAD_CONTROL_PBIAS_SDCARD_IO_PWRDNZ, DISABLE);
hCtrlCorePad->CONTROL_PBIAS = regVal;
/* Check to make sure IO Delay stack and functions are in local memory */
if (((U32) &ioStack >= 0x80000000) || ((U32)BoardCtrlPadIoDelayConfig >= 0x80000000))
return BOARD_PINMUX_BAD_MEM_REGION;
size = boardPadGetSize();
asm("STR r13, [%0]\n"::"r"(&ioStack[IO_DELAY_STACK_SIZE-1]));
asm("MOV r13, %0\n"::"r"(&ioStack[IO_DELAY_STACK_SIZE-2]));
/* Configure the pinmux and virtual/manual timing modes for all pads. */
BoardCtrlPadIoDelayConfig(pad, size);
asm("MOV r13, %0\n"::"r"(ioStack[IO_DELAY_STACK_SIZE-1]));
return SDR_MP_NO_ERROR;
}
----------#########----------
When we call “ BoardCtrlPadIoDelayConfig(pad, size);” in following code snippet using JTAG, it disconnects from JTAG with following error
“CortexA15_0: Error: (Error -1 @ 0x0) Internal error: Invalid error code. Restart the application. If error persists, please report the error. (Emulation package 8.4.0.00006)
CortexA15_0: JTAG Communication Error: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 8.4.0.00006)”
This is the point where AM5718 issues RSTOUT_N.
What could be the issue??