Other Parts Discussed in Thread: TMDX654IDKEVM, UNIFLASH
Hello All,
I have some questions regarding SBL development/debugging on AM6548 Sitara.
My configuration is:
CCS ver 8.3.0
Windows version - Windows 10 Pro version 1803
TI-RTOS SDK 6.01
PDK - pdk_am65xx_1_0_6
AM65x (IDK) - TMDX654IDKEVM
Custom board based on AM6548
In our custom board with AM6548 we use as primary boot device qspi nor flash memory. So in order to boot application from NOR flash on our custom board, qspi support must be added in SBL application.
As a starting point I decided to test existing OSPI SBL from pdk on AM65xx IDK board. My idea was to load and run original OSPI SBL for AM65xx IDK board via emulator(XDS200) from CCS. I wanted to see how SBL works, and to test debugging options (breakpoints , step by step execution etc.) in order to use debugging for further developing of SBL application with qspi support for our custom board.
What I did:
- I created target configuration file for IDK board, where i added .js script (ti\drv\sciclient\tools\ccsLoadDmsc\am65xx\launch.js) for basic initialization of SoC with GEL files (original GEL files from CCS were used).
- When SoC was initialized, the OSPI SBL application was loaded to the MCU_Cortex_R5_0 core
- Then I started to execute SBL code step by step
But following problems appeared:
1) MCU UART interface is printing messages on serial terminal on baud rate 230400 instead of configured 115200
2) in file `sbl_ospi.c` under function <int32_t SBL_ReadSysfwImage(void **pBuffer, uint32_t num_bytes)>, when function that opens flash instance is called `h = Board_flashOpen(BOARD_FLASH_ID_MT35XU512ABA1G12, BOARD_OSPI_NOR_INSTANCE, NULL);` the communication is not open (Board_flashHandle h == NULL).
I don't have any hardware problems with IDK board, I confirmed that by running ospi nor flash test. The second test i made was that I placed the OSPI SBL, SYSFW and some APP to OSPI nor flash on IDK board (by using Uniflash application), then i set OSPI as primary boot device and after power-up SBL, SYSFW and APP were loaded and executed without any problem.
I am wondering if TI used CCS for developing and debugging the SBL code?
Are there some special GEL files that are needed to initialize SoC (on the same way like ROM bootloader do), so that SBL can be run properly via CCS?
Best regards,
Novica