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.

TMDS64EVM: MCU+ SDK v10.1 - Flash SOC Initialization Binary - terminal freeze

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

Tool/software:

Followed the steps as per  User Guide

UART Boot mode was success

BUT

once in OSPI boot mode

we get this freeze on the COM port

-------------------------------

ÿ
Starting NULL Bootloader ...

DMSC Firmware Version 10.0.8--v10.00.08 (Fiery Fox)
DMSC Firmware revision 0xa
DMSC ABI revision 4.0

-----------------------------------

No response after last message. Cannot tell if EVM compromised.

  • Hello,

    This is a known issue. It is caused by the broken DebugP_logInfo, DebugP_logWarn, DebugP_logError APIs.

    Please apply the following patch to resolve the issue.

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/791/0001_2D00_all_2D00_syscfg_2D00_fix_2D00_debugp_5F00_prints_2D00_restricted_2D00_to_2D00_HSM_2D00_cores.patch

    ❯ pwd
    /home/p-shivhare/ti/mcu_plus_sdk/am64x/10_01_00_32
    ❯ git apply --directory=source/sysconfig ~/Downloads/0001-all-syscfg-fix-debugp_prints-restricted-to-HSM-cores.patch
    ❯ git status
    On branch main
    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git restore <file>..." to discard changes in working directory)
            modified:   source/sysconfig/kernel/.meta/dpl/debug_log_init.c.xdt

    Regards,

    Prashant

  • Prashant - do I need recompile? Or is this just textual changes to the sysconfig tree? 

  • I am thinking in WIndows this debug_log_init.c.xdt file is under ....\mcu_plus_sdk_am64x_10_01_00_32\source\sysconfig\kernel\.meta\dpl

  • do I need recompile? Or is this just textual changes to the sysconfig tree?

    You would need to recompile the SBL NULL example and boot the generated image instead of the prebuilt one.

    I am thinking in WIndows this debug_log_init.c.xdt file is under ....\mcu_plus_sdk_am64x_10_01_00_32\source\sysconfig\kernel\.meta\dpl

    That is correct.

    It is recommended to initialize the SDK with Git for version control. You may then apply the previous patch as it is and commit the changes. 

  • Prashant:

     you said "You would need to recompile the SBL NULL example and boot the generated image instead of the prebuilt one"

    I am confused as to what file to load; are we talking changing these steps? :

      cd ${SDK_INSTALL_PATH}/tools/boot
      python uart_uniflash.py -p COM<x> --cfg=sbl_prebuilt/am64x-evm/default_sbl_null.cfg


    If so what .cfg from the SBL NULL example recomple am I trying to python uart_uniflash ??

  • Hi Jim,

    You don't need to make any changes in the default_sbl_null.cfg file. Once you rebuild the SBL NULL example, the prebuilt sbl_null image in sbl_prebuilt/am64x-evm also gets replaced with the new image. After recompilation you can use this config file again to flash the updated sbl.

    Best Regards,

    Meet.

  • Meet:

    Does this section to eliminate the GEL files apply for building SBLNULL (taken from Flash SOC Initialization Binary)

  • Meet: getting this error with CCS 12.8 and sysconfig 1.22

  • All:

    would it not be easier to just release the default "sbl_prebuilt/am64x-evm/default_sbl_null.cfg" as specified in the section "Flash SOC Initialization Binary" in

      cd ${SDK_INSTALL_PATH}/tools/boot
      python uart_uniflash.py -p COM<x> --cfg=sbl_prebuilt/am64x-evm/default_sbl_null.cfg

    This is taking way too much time to fix the SDK 10.1 bootloader via the SBL NULL example.
  • Does this section to eliminate the GEL files apply for building SBLNULL (taken from Flash SOC Initialization Binary)

    This will apply if the SBL NULL is used (even the modified one).

    Meet: getting this error with CCS 12.8 and sysconfig 1.22

    From the error message, seems like a syntax error on line 122 debug_log_init.c.xdt, please check the same.

    would it not be easier to just release the default "sbl_prebuilt/am64x-evm/default_sbl_null.cfg" as specified in the section "Flash SOC Initialization Binary" in

    I am not exactly sure on what you mean by this, you can clarify the same, but default_sbl_null.cfg uses the binary generated by the SBL_NULL example only:

    # When sending bootloader make sure to flash at offset 0x0. ROM expects bootloader at offset 0x0
    --file=sbl_prebuilt/am64x-evm/sbl_null.release.hs_fs.tiimage --operation=flash --flash-offset=0x0
    

    By default SBL_NULL image is already available in the sbl_prebuilt folder, but in case you make some changes and rebuild the example, then sbl_null.release.hs_fs.tiimage at sbl_prebuilt also gets replaced with the new generated image, so you can use this config file as it is.

    Best Regards,

    Meet.

  • Meet & Prashant:

    First, there was an extra parenthesis - thanks Meet.

    On windows 11, with CCS v12.8, the result does not automatically update the sbl_null_release_hs_fs.timage file in the default location 

    mcu_plus_sdk_am64x_10_01_00_32/tools/boot/sbl_prebuilt/am64x-evm

    Once I manually moved the SBL_NULL generated image, (see screenshot) that python script loaded the bootloader fine & I am able to get other MCU+ examples into CCS v12.8.

    We need better process steps description in SDK 11.0 (if one needs to rebuild the sbl_null_release_hs_fs.timage)

    I did not test this on Ubuntu yet.

    regards

    Jim

  • another followup - same would need to happen for the SK-AM64B on the bootloader???

  • Hi Jim,

    On windows 11, with CCS v12.8, the result does not automatically update the sbl_null_release_hs_fs.timage file in the default location 

    Yes you are right, while using CCS the images are generated only in the workspace folder so you need to manually update them. The image would be automatically updated if you build is using the makefile: https://software-dl.ti.com/mcu-plus-sdk/esd/AM64X/10_01_00_32/exports/docs/api_guide_am64x/GETTING_STARTED_BUILD.html#autotoc_md51

    another followup - same would need to happen for the SK-AM64B on the bootloader???

    Yes

    Best Regards,

    Meet.

  • Meet:

     Just verified on Ubuntu installation with the MCU Plus SDK.

    Note: contrary to what I read in the MCU+ online manual, the python3 invocation line differs from what is in the docs (highlighting some differences):  

    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    jmrowca@jmrowca-Kabylake-Client-platform:~/ti/mcu_plus_sdk_am64x_10_01_00_32/tools/boot$ python3 uart_uniflash.py /dev/ttyUSB0 --cfg=/home/jmrowca/ti/mcu_plus_sdk_am64x_10_01_00_32/tools/boot/sbl_prebuilt/am64x-evm/default_sbl_null.cfg
    usage: uart_uniflash.py [-h] -p SERIAL_PORT [-f FILE] [-o FLASH_OFFSET] [--operation OPERATION] [--flash-writer FLASH_WRITER] [--erase-size ERASE_SIZE] [--flash-remap FLASH_REMAP]
    [--cfg CFG] [--chunk-size-kb CHUNK_SIZE_KB]
    uart_uniflash.py: error: the following arguments are required: -p/--serial-port
    jmrowca@jmrowca-Kabylake-Client-platform:~/ti/mcu_plus_sdk_am64x_10_01_00_32/tools/boot$ python3 uart_uniflash.py --serial-port=/dev/ttyUSB0 --cfg=/home/jmrowca/ti/mcu_plus_sdk_am64x_10_01_00_32/tools/boot/sbl_prebuilt/am64x-evm/default_sbl_null.cfg

    Parsing config file ...
    Parsing config file ... SUCCESS. Found 2 command(s) !!!

    Executing command 1 of 2 ...
    Found flash writer ... sending sbl_prebuilt/am64x-evm/sbl_uart_uniflash.release.hs_fs.tiimage

    Sent flashwriter sbl_prebuilt/am64x-evm/sbl_uart_uniflash.release.hs_fs.tiimage of size 328542 bytes in 33.03s.

    Executing command 2 of 2 ...
    Command arguments : --file=sbl_prebuilt/am64x-evm/sbl_null.release.hs_fs.tiimage --operation=flash --flash-offset=0x0
    Sent sbl_prebuilt/am64x-evm/sbl_null.release.hs_fs.tiimage of size 296221 bytes in 29.37s.
    [STATUS] SUCCESS !!!

    All commands from config file are executed !!!
    jmrowca@jmrowca-Kabylake-Client-platform:~/ti/mcu_plus_sdk_am64x_10_01_00_32/tools/boot$

    ----------------------------------------------------------------------

    I'll check the SK-AM64B later; we can close out the ticket for now (but documentation for MCU+ SDK v11 should be noted for updates!!!!)

    Jim

  • Hi Jim,

    Thanks for the update, using -p to specify the serial port in the uart_uniflash script is already mentioned in the documentation:

    Best Regards,

    Meet.

  • Meet: incidentally, if one is also upgrading from an earlier version of CCS onto that EVM, they should 

    FIRST attempt to connect the TMDS64EVM to MCU+SDK example project in order to get the XDS firmware updates installed, and recycle power

    THEN, go run the python script so that the eventual OPSI boot mode configuration runs correctly.