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.

SK-AM62: EVM Setup - Flash SOC Initialization Binary

Part Number: SK-AM62
Other Parts Discussed in Thread: UNIFLASH, SYSCONFIG

In following the steps outlined in the AM62x MCU+ SDK 08.05.00 documentation, I'm stuck on this step in the EVM Setup section. Running on Windows 10.

AM62x MCU+ SDK: EVM Setup (ti.com)

I have the SDK extracted to the recommended location and the following directory exists. C:\ti\mcu_plus_sdk_am62x_08_05_00_14\tools\boot\deviceManagerAppimageGen

I opened command prompt in the directory and ran the make command. I did not have make in my path so I followed other steps for "Enabling make in Windows". https://software-dl.ti.com/mcu-plus-sdk/esd/AM62X/08_04_00_16/exports/docs/api_guide_am62x/MAKEFILE_BUILD_PAGE.html#autotoc_md65

This only added 'gmake' to the PATH so I ran the command gmake BOARD=am62x-sk all and got the following error.

Fullscreen
1
2
3
4
5
6
7
C:\ti\mcu_plus_sdk_am62x_08_05_00_14\tools\boot\deviceManagerAppimageGen>gmake BOARD=am62x-sk all
Creating ATF RPRC image
C:/ti/sysconfig_1.14.0/nodejs/node C:/ti/mcu_plus_sdk_am62x_08_05_00_14/tools/boot/out2rprc/elf2rprc.js board/am62x-sk/sciserver_freertos.release.xer5f >> temp_stdout.txt
C:/ti/ccs1210/ccs/utils/cygwin/cp sciserver_freertos.release.rprc board/am62x-sk/sciserver_freertos.release.rprc >> temp_stdout.txt
The system cannot find the path specified.
makefile:60: recipe for target 'board/am62x-sk/sciserver_freertos.release.rprc' failed
gmake: *** [board/am62x-sk/sciserver_freertos.release.rprc] Error 1
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

In the directory C:\ti\mcu_plus_sdk_am62x_08_05_00_14\tools\boot\deviceManagerAppimageGen\board\am62x-sk only the following files exist:

config.mak
sciserver_freertos.release.xer5f
sciserver_freertos_for_qnx.release.xer5f

  • To overcome this problem in the meantime, I ended up getting the deviceManagerAppimageGen compiled in linux and moved the sciserver_freertos.release.appimage file back to my windows SDK directory.

    Moving onto further steps, I was met with other obstacles.

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    C:\ti\mcu_plus_sdk_am62x_08_05_00_14\tools\boot>python uart_uniflash.py -p COM12 --cfg=sbl_prebuilt/am62x-sk/default_sbl_null.cfg
    Parsing config file ...
    Parsing config file ... ERROR. 2 error(s).
    [ERROR] Parsing error found on line 20 of sbl_prebuilt/am62x-sk/default_sbl_null.cfg
    [ERROR] File not found !!!
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    The file from line 20 is "../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage" which is not present in the SDK and there were no earlier steps to prepare this. (maybe the failed make in my original issue is the cause?)

    Again, I went back to my linux SDK directories compiled it with just make. I moved examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage back to my Windows SDK instance.

    Then I recycled the power to my EVM and was able to flash the images.

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    C:\ti\mcu_plus_sdk_am62x_08_05_00_14\tools\boot>python uart_uniflash.py -p COM12 --cfg=sbl_prebuilt/am62x-sk/default_sbl_null.cfg
    Parsing config file ...
    Parsing config file ... SUCCESS. Found 5 command(s) !!!
    Executing command 1 of 5 ...
    Found flash writer ... sending sbl_prebuilt/am62x-sk/sbl_uart_uniflash_stage1.release.tiimage
    Sent flashwriter sbl_prebuilt/am62x-sk/sbl_uart_uniflash_stage1.release.tiimage of size 236286 bytes in 22.48s.
    Executing command 2 of 5 ...
    Command arguments : --file=../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage --operation=flash --flash-offset=0x0
    Sending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uSending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uSending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uSending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uSending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uSending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uSending ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_u
    Sent ../../examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage of size 109784 bytes in 13.72s.
    [STATUS] SUCCESS !!!
    Executing command 3 of 5 ...
    Command arguments : --operation=flash-phy-tuning-data
    Sent flash phy tuning data in 3.77s.
    [STATUS] SUCCESS !!!
    Executing command 4 of 5 ...
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Furthermore, I was able to load the M4 firmware via CCS and get the "Hello World!"

  • Hi Slawek,

    Thanks for coming up with a workaround. About the original issue, your log shows the system cannot find a path. Can you please confirm if you have CCS 12.1 installed in the default directory C:\ti?

    Regards,

    Prashant

  • Hello, yes, my CCS is in c:\ti along with these as well

    ccs1220
    mcu_plus_sdk_am62x_08_05_00_14
    sysconfig_1.14.0
    ti-cgt-armllvm_2.1.2.LTS

  • Hi Slawek,

    ccs1220

    AM62x MCU+ SDK 08.05.00 uses CCS1210. The log also shows the cp command is taken from ccs1210. Please ensure you have CCS1210 installed at C:\ti. After that, the build should run successfully.

    Regards,

    Prashant

  • I knew it was probably a PEBKAC error. :) Thanks for noticing that. I was lazy and just renamed my ccs directory to c:\ti\ccs1210 and temporarily put my original ccs\utils\bin directory back in place (from PATH) so gmake still worked. Was able to compile after a gmake clean and then gmake BOARD=am62x-sk all.

    It would be helpful for future users of this process to have the SDK docs updated with a hyperlink to the "Enabling make in Windows" process in the "Flash SOC Initialization Binary" section and noting that it will be gmake and not make in this case for windows users.

  • Hi Slawek,

    Thank you for the feedback. I have taken note of this & will create ticket internally for the documentation update.

    Thanks,

    Prashant

  • Hi all,

    i have a question:

    with ccs1220 installed i was able to rebuild sbl_uart_uniflash_stage2.release.appimage.

    I only had to change the CCS_PATH?=$(TOOLS_PATH)/ccs1220/ccs  in file C:\ti\mcu_plus_sdk_am62x_08_05_00_14\imports.mak.

     Boot image: am62x:r5fss0-0:nortos:ti-arm-clang C:/ti/mcu_plus_sdk_am62x_08_05_00_14/examples/drivers/boot/sbl_uart_uniflash_multistage/sbl_uart_uniflash_stage2/am62x-sk/r5fss0-0_nortos/ti-arm-clang/sbl_uart_uniflash_stage2.release.appimage Done !!!

    Can this be a solution for the future?

    BR's

    Martin

  • Hi Martin,

    I only had to change the CCS_PATH?=$(TOOLS_PATH)/ccs1220/ccs  in file C:\ti\mcu_plus_sdk_am62x_08_05_00_14\imports.mak.

    This certainly is one way to build the example if you have CCS1220 installed and can be adopted as a solution. You should not have any problems going forward. CCS1210 is recommended to install for mcu_plus_sdk_am62x_08_05_00_14 just because the SDK was built and tested with it so CCS1210 is supposed to provide better stability. However, you may use CCS1220 with this SDK by modifying the appropriate variable in imports.mak file.

    Regards,

    Prashant