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.

[参考译文] AM62A3-Q1:生成 mcur5 appimage.hs_fs 导致 SBL2在引导过程中解析它

Guru**** 2487425 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1441318/am62a3-q1-generation-of-mcur5-appimage-hs_fs-is-causing-to-parse-it-during-boot-process-by-sbl2

器件型号:AM62A3-Q1
主题中讨论的其他器件:SysConfig

工具与软件:

您好!

我们使用了 cmake 命令来创建 mcur5.appimage.hs_fs 映像和其他文件。 映像已刷写到 NAND 闪存中并且现在正在运行、但 SBL2无法理解附加到输出文件(tiimage.hs_fs)的 rprc 标头。 Hexview 确认文件包含零。 根据附加的创建文件、即使 elf (.out)也包含零、这也会导致 rprc 中出现零。 因此、我们开始使用 Lauterbach 调试映像、并发现 bootloader.c 文件(source/drivers/bootloader/bootloader.c)中的以下函数失败。 这让我们怀疑.out 文件以及 rprc 标头的映像生成未正确完成、显示"解析 MultiCoreAppImage 失败"的控制台映像和调试表明了这一点、这反过来导致 SBL2无法加载。

Status = Bootloader_parseMultiCoreAppImage (bootHandle、bootImageInfo);

以下命令用于在我们的构建系统中生成.appimage.hs_fs

CD /sw/MCU/Applications/BSW/build/tirtos8.5.11/Release src / MCUR5_Startup / src
/prjtools/tools/compiler/ti/sysconfig_1.20.0/nodejs/node /SDK/RTOS/mcu_plus_sdk_am62ax_10/tools/boot/out2rprc/elf2rprc.js mcur5_startup.out

CD /sw/MCU/Applications/BSW/build/tirtos8.5.11/Release src / MCUR5_Startup / src
/prjtools/tools/compiler/ti/sysconfig_1.20.0/nodejs/node /SDK/RTOS/mcu_plus_sdk_am62ax_10/tools/boot/multicoreImageGen/multicoreImageGen.js --DevID 55 --out mcur5_startup.appimage mcur5_startup.rprc@5.

CD /sw/MCU/Applications/BSW/build/tirtos8.5.11/Release src / MCUR5_Startup / src
python3 /SDK/RTOS/mcu_plus_sdk_am62ax_10/tools/boot/signing/appimage_x509_cert_gen.py --bin mcur5_startup.appimage --authtype 0 --loadaddr 88A80000 --key /SDK/RTOS/mcu_plus_sdk_am62ax_10/tools/boot/signing/custMpk_am62ax.pem --output mcur5_startup.appimage.hs_fs --keyversion 1.5

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

    您好!

    [报价 userid="602357" url="~/support/processors-group/processors/f/processors-forum/1441318/am62a3-q1-generation-of-mcur5-appimage-hs_fs-is-causing-to-parse-it-during-boot-process-by-sbl2 "]python3 /SDK/RTOS/mcu_plus_sdk_am62ax_10/tools/boot/signing/appimage_x509_cert_gen.py --bin mcur5_startup.appimage --authtype 0 --loadaddr 88A80000 - key /SDK/RTOS/mcu_plus_sdk_am62ax_10/tools/boot/signing/custMpk_am62ax.pem --output mcur5_startup.appimage.hs_fs --keyversion 1.5[/报价]

    这是不正确的命令。 除非在 SBL stage1链接器文件中手动更改、否则默认加载地址为84000000。

    作为参考、请构建用于将 ELF 转换为签名的 appimage 文件的确切命令的任何 MCU R5F 示例、如下所示:

    ❯ make -C ./examples/hello_world/am62ax-sk/mcu-r5fss0-0_nortos/ti-arm-clang/ scrub all
    ...
    Boot image: am62ax:mcu-r5fss0-0:nortos:ti-arm-clang /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/examples/hello_world/am62ax-sk/mcu-r5fss0-0_nortos/ti-arm-clang/hello_world.release.appimage ...
    chmod a+x /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/xipGen/xipGen.out
    /home/p-shivhare/ti/sysconfig_1.20.0/nodejs/node /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/out2rprc/elf2rprc.js hello_world.release.out >> temp_stdout_release.txt
    cp hello_world.release.rprc hello_world.release.rprc_tmp
    rm -f hello_world.release.rprc
    /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/xipGen/xipGen.out -i hello_world.release.rprc_tmp -o hello_world.release.rprc -x hello_world.release.rprc_xip --flash-start-addr 0x60000000 -v > temp_stdout_release.txt
    /home/p-shivhare/ti/sysconfig_1.20.0/nodejs/node /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/multicoreImageGen/multicoreImageGen.js --devID 55 --out hello_world.release.appimage hello_world.release.rprc@5  >> temp_stdout_release.txt
    /home/p-shivhare/ti/sysconfig_1.20.0/nodejs/node /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/multicoreImageGen/multicoreImageGen.js --devID 55 --out hello_world.release.appimage_xip hello_world.release.rprc_xip@5  >> temp_stdout_release.txt
    python3 /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/signing/appimage_x509_cert_gen.py --bin hello_world.release.appimage --authtype 0  --loadaddr 84000000 --key /home/p-shivhare/ti/mcu_plus_sdk/am62a/10_00_00_14/tools/boot/signing/app_degenerateKey.pem --output hello_world.release.appimage.hs_fs --keyversion 1.5
    Generating certificate for hello_world.release.appimage ...
    ...

    此致、

    Prashant