This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

PROCESSOR-SDK-AM57X: custom board : SBL : view logs through UART

Part Number: PROCESSOR-SDK-AM57X
Other Parts Discussed in Thread: AM5729

Hi,

please help me with this problem, I've spent two weeks on it and I will really appreciate your help.

I followed TI wiki pages to create a board library for my custom board (based on AM5729). I used the EVM5729 board library, made a copy, and modified it since my custom board is similar to that. Now I want to create an MLO file for this custom board SBL but I couldn't find a guide on how to do that.

What I did so far, was to just copy sbl folder (boot/sbl/board/evmAM572x) for evmAM572xand rename the folder to my custom board (same name as steps above for the actual board library). Then I called make to create MLO for the board and it created that. now I copy that to a bootable sd card but I don't see anything on my UART, I think the initialization should printt something on uart but I don't see anything. I did this renaming because I thought the make file uses the folder name to use the previously built files.

I also changed BOARD_UART_INSTANCE to my custom board uart that I am using (INSTANCE=0, relating to uart 1). why is nothing happening? do I need an app file as well or the MLO should be enough to trigger print on uart ? What steps did I miss ?

I think the files for evm572x that I used already had clocks for UART1 (INSTANCE=0) because I see the following lines in my customboard_clock.c: 

CSL_FINST(l4PerCmReg->CM_L4PER_UART1_CLKCTRL_REG,
L4PER_CM_CORE_COMPONENT_CM_L4PER_UART1_CLKCTRL_REG_MODULEMODE, ENABLE);

while(CSL_L4PER_CM_CORE_COMPONENT_CM_L4PER_UART1_CLKCTRL_REG_IDLEST_FUNC !=
CSL_FEXT(l4PerCmReg->CM_L4PER_UART1_CLKCTRL_REG,
L4PER_CM_CORE_COMPONENT_CM_L4PER_UART1_CLKCTRL_REG_IDLEST));

I guess UART1 here maps to instance 0 of UART that I've set. (because initially the instance was 2 and there is clock code for uart3, so I figured the naming convention).

what am I doing wrong here? why am I not getting any output on the UART ?

I know the UART connection is fine because when I run Linux that is designed for this board, I get uart prints. 

Please note that I'm using RTOS SDK not Linux. 

One possibility, could it be an EEProm check? I deleted some code related to EEprom because I figured evmAM572x checks for that for validity check, if this could be a problem, can you tell me where in the code I should make changes or comment EEPROM code? 

please guide me on the right path, I think I'm almost there but stuck. (p.s I did the ddr config and pinmux, etc too)

Thanks a lot.