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 -闪存 SOC 初始化二进制-终端冻结

Guru**** 2459740 points
Other Parts Discussed in Thread: SYSCONFIG, UNIFLASH, SK-AM64B, TMDS64EVM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1476058/tmds64evm-mcu-sdk-v10-1---flash-soc-initialization-binary---terminal-freeze

器件型号:TMDS64EVM
主题中讨论的其他器件:SysConfigUNIFLASHSK-AM64B

工具与软件:

按照  用户指南中的步骤操作

UART 引导模式成功

但是

进入 OSPI 引导模式后

我们在 COM 端口上得到此冻结

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

Ÿ μ A
正在启动 NULL 引导加载程序...

DMSC 固件版本10.0.8--v10.00.08 (Fiery Fox)
DMSC 固件版本0xA
DMSC ABI 修订版4.0

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

最后一条消息后无响应。 无法判断 EVM 是否受到影响。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    这是一个已知问题。 这是由 BROKEN DebugP_logInfo、DebugP_logWarn、DebugP_logError API 引起的。

    请应用以下补丁来解决此问题。

    e2e.ti.com/.../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

    此致、

    Prashant

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Prashant -我是否需要重新编译? 还是仅对 SysConfig 树进行了文本更改?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我在 Windows 中想到这一点  DEBUG_LOG_INIT.c.xdt 文件位于……\mcu_plus_sdk_am64x_10_01_00_32\source\sysconfig\kernel\.meta\DPL 下

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Unknown 说:
    我是否需要重新编译? 还是仅对 SysConfig 树进行了文本更改?[/QUOT]

    您需要重新编译 SBL NULL 示例并引导生成的映像(而不是预编译的映像)。

    我正在 soc 中思考这一点  DEBUG_LOG_INIT.c.xdt 文件位于...\mcu_plus_sdk_am64x_10_01_00_32\source\sysconfig\kernel\.meta\dpl

    正确。

    建议使用 Git 初始化 SDK 以进行版本控制。 然后、您可以按原样应用先前的修补程序并提交更改。  

    [/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Prashant:

     您说"您需要重新编译 SBL NULL 示例并引导生成的映像、而不是预编译的映像"

    我对要加载的文件感到困惑;我们是否在讨论如何更改这些步骤? :

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


    如果是这样、SBL NULL 示例中的.cfg 是什么建议我尝试使用 python uart_uniflash?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、您好!

    您无需在 default_sbl_null.cfg 文件中进行任何更改。 重新编译 SBL NULL 示例后、sbl_prebuilt/am64x-evm 中预编译的 sbl_null 映像也替换为新映像。 重新编译后、可以再次使用该配置文件来刷写更新的 SBL。

    此致、

    开会。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    了解:

    此部分是否会消除适用于编译 SBLNULL (取自 闪存 SOC 初始化二进制文件)的 GEL 文件

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    了解:使用 CCS 12.8和 SysConfig 1.22时会遇到此错误

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    全部:

      按照 中"闪存 SOC 初始化二进制文件"一节的说明、仅发布默认的"sbl_prebuilt/am64x-evm/default_sbl_null.cfg"是否会更容易一些

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

    这样做占用了过多的时间来通过 SBL NULL 示例修复 SDK 10.1引导加载程序
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    本节是否要消除用于构建的 GEL 文件(取自 闪存 soc 初始化二进制文件)

    如果使用 SBL NULL (即使是修改过的 NULL)、这将适用。

    ]遇到以下问题:使用 soc 12.8和 SysConfig 1.22

    从错误消息来看、第122行似乎是语法错误(debug_log_init.c.xdt)、请检查相同的错误。

    Unknown 说:

      按照 中"闪存 SOC 初始化二进制文件"一节的说明、仅发布默认的"sbl_prebuilt/am64x-evm/default_sbl_null.cfg"是否会更容易一些

    [报价]

    我不确定这句话的意思、您可以澄清同样的内容、但 default_sbl_null.cfg 仅使用由 SBL_NULL 示例生成的二进制文件:

    # 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
    

    默认情况下、SBL_NULL 映像在 sbl_prebuilt 文件夹中已可用、但如果您进行了一些更改并重新编译了示例、则 SBL_null.release.hs_fs.tiimage 也将替换为新生成的映像、因此您可以按原样使用该配置文件。

    此致、

    开会。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    认识与 Prashant:

    首先,有一个额外的括号-谢谢会见。

    在 Windows 11上、对于 CCS v12.8、结果不会自动更新默认位置处的 sbl_null_release_hs_fs.timage 文件  

    MCU_PLUS_SDK_am64x_10_01_00_32/tools/boot/sbl_prebuilt/am64x-evm

    手动移动 SBL_NULL 生成的映像(请参阅屏幕截图)后、该 python 脚本将引导加载程序正常加载、然后我可以将其他 MCU+示例导入到 CCS v12.8中。

    我们需要在 SDK 11.0中更好地描述流程步骤(如果需要重新编译  sbl_null_release_hs_fs.timage)

    我还没有在 Ubuntu 上测试此功能。

    此致

    吉姆

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    另一个后续操作-引导加载程序上的 SK-AM64B 也需要进行同样的操作。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、您好!

    [报价 userid="576793" url="~/support/processors-group/processors/f/processors-forum/1476058/tmds64evm-mcu-sdk-v10-1---flash-CCS v12.8 -初始化二进制--terminal-freeze/5678226#5678226"]在 windows 11上、使用 soc v12.8时、结果不会自动更新默认位置的 sbl_null_release_hs_fs.timage 文件  

    是的、没错、使用 CCS 时、图像仅在工作区文件夹中生成、因此您需要手动更新它们。 如果使用 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

    [报价 userid="576793" url="~/support/processors-group/processors/f/processors-forum/1476058/tmds64evm-mcu-sdk-v10-1---flash-soc bootloader-initialization-binary--terminal-freeze/5679372#5679372"]另一项后续行动-引导加载程序上的 SK-AM64B 需要同样发生吗??

    此致、

    开会。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    了解:

     刚刚使用 MCU Plus SDK 在 Ubuntu 安装上进行了验证。

    注意:与我在 MCU+在线手册中读到的相反、python3调用行与文档中的调用行不同(突出显示了一些差异):   

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

    jmprowca@jmprowca-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
    用法: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:错误:需要以下参数:-p/--serial-port
    jmprowca@jmprowca-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

    正在解析配置文件...
    正在解析配置文件...成功。 找到2个命令!!!

    正在执行命令1、共2个...
    找到闪存写入器...正在发送 sbl_prebuilt/am64x-evm/sbl_uart_uniflash.release.hs_fs.tiimage

    发送了闪存写入器 sbl_prebuilt/am64x-evm/sbl_uart_uniflash.release.hs_fs.tiimage、大小为328542字节、在33.03s 内。

    正在执行命令2/共2个...
    命令参数:--file=sbl_prebuilt/am64x-evm/sbl_null.release.hs_fs.tiimage --operation=flash --flash-offset=0x0
    在29.37秒内发送了大小为296221字节的 sbl_prebuilt/am64x-evm/sbl_null.release.hs_fs.tiimage。
    [status]成功!!!

    执行配置文件中的所有命令!!!
    jmprowca@jmprowca-Kabylake-Client-platform:~/ti/mcu_plus_sdk_am64x_10_01_00_32/tools/boot $

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

    我稍后将查看 SK-AM64B;我们现在可以关闭票证(但需要注意 MCU+ SDK v11的文档以进行更新!!!)

    吉姆

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Jim、您好!

    感谢更新、文档中已提到使用-p 指定 uart_uniflash 脚本中的串行端口:

    此致、

    开会。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    会见:顺便说一下、如果还有人从早期版本的 CCS 升级到那个 EVM 上、那他们应该升级  

    首先尝试将 TMDS64EVM 连接到 MCU+SDK 示例项目、以便安装 XDS 固件更新并重启电源

    然后、运行 python 脚本、以便最终的 OPSI 引导模式配置可正常运行。