Hello,
i have code:
static VOID InitializeUART(UARTPDD *pPdd)
//================
// Reset UART & wait until it completes
OUTREG8(&pUartRegs->SYSC, UART_SYSC_RST);
DEBUGMSG(ZONE_FUNCTION, (TEXT("+InitializeUART 0 \r\n")));
while ((INREG8(&pUartRegs->SYSS) & UART_SYSS_RST_DONE) == 0);
DEBUGMSG(ZONE_FUNCTION, (TEXT("InitializeUART here 1\r\n")));
//=============
this code used for soft reset of UART4, (here pUartRegs points on 0x4809e000 UART4 base address)
in debug terminal i have only output this:
PID:00400002 TID:014E000A +InitializeUART 0
and we sit in while() for infinity -(
Why UART4 not come back from soft reset?
I am check i and f clocks - they enabled:
PID:00400002 TID:014E000A CM_ICLKEN1_CORE (0xccd30a10) 0x80004a <------------------------------- bit 23 enable clock
PID:00400002 TID:014E000A CM_FCLKEN1_CORE (0xccd30a00) 0x800000 <------------------------------- bit 23 enable clock
PID:00400002 TID:014E000A CM_IDLEST1_CORE (0xccd30a20) 0xff7fffbd
PID:00400002 TID:014E000A CM_AUTOIDLE1_CORE (0xccd30a30) 0x7ffffed1
Can someone tell which bits in the control registers of AM3517 must be set for not stuck in UART reset?
TY.!