Part Number:AM5728
Tool/software: TI-RTOS
I'm having some trouble getting a multicore application to load and execute properly. I've followed the instructions outlined in section 4.6.3.2.6.3 of the Processor SDK RTOS documentation for version 05_01_00_11 which we are using. I'm trying to launch the examples from the C:\ti\pdk_am57xx_1_0_12\packages\ti\boot\sbl\example folder. I'm wanting to just use the mpuMulticoreApp and the ipu1MulticoreApp projects.
In my sbl, I added some print statements to see if the cores are being loaded properly and I get the following output when launching the combined app file:
if (evmAM572xEntry.entryPoint_IPU1_CPU0 != 0) { UART_printf("entryPoint_IPU1_CPU0...\n"); /* Release the IPU1 core out of reset and set the Entry point */ SBL_IPU1_CPU0_BringUp(evmAM572xEntry.entryPoint_IPU1_CPU0); } /*Jump to MPU CPU0 APP*/ if (evmAM572xEntry.entryPoint_MPU_CPU0 != 0) { UART_printf("entryPoint_MPU_CPU0...\n"); func_ptr = (EntryFunPtr_t) evmAM572xEntry.entryPoint_MPU_CPU0; CSL_a15WbAllDataCache(); CSL_a15InvAllInstrCache(); __sync_synchronize(); func_ptr(); }
**** PDK SBL ****
SBL Revision: 01.00.07.00 (Nov 5 2018 - 15:02:21)
Begin parsing user application
SD Boot - file open completed successfully
Jumping to user application...
entryPoint_IPU1_CPU0...
entryPoint_MPU_CPU0...
So it appears that the .out files are being loaded to the correct cores, but then nothing else happens. I'm not getting the print statements as expected from the mailbox communication. When I debug both projects on their respective cores through CCS they both run properly and I get the expected output. But not when I'm trying to launch it from the SD card.
I guess I'm a little confused on how the SBL is supposed to actually launch both applications. To further explore the multicoreImageGen tool I created two simple projects, one that blinks a red LED from the MPU_CPU0 core and the other blinks the green LED from the IPU1_CPU0 core. I found that if I listed the red LED out file last in the script, then it would blink as expected but the green LED would never launch:
"%TOOLS_PATH%\multicoreImageGen\bin\MulticoreImageGen.exe" LE %Dev_ID% app %IPU1_CPU0% %APP_IPU1_CPU0_RPRC% %MPU_CPU0% %APP_MPU_CPU0_RPRC%
If I listed it first, as it is by default, then neither blinked:
"%TOOLS_PATH%\multicoreImageGen\bin\MulticoreImageGen.exe" LE %Dev_ID% app %MPU_CPU0% %APP_MPU_CPU0_RPRC% %IPU1_CPU0% %APP_IPU1_CPU0_RPRC%
Any direction on how to launch a multicore project would be greatly appreciated!