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.

[参考译文] TDA4VEN-Q1:安全启动

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot

器件型号: TDA4VEN-Q1

您好、

请提供此平台的 Keywriter 操作手册。

 

此致、

Cesar

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

    您好、

    分配给您查询的专家目前正在休假。 请期待下周初收到回复。

    此致、
    Sudheer

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

    你好  Sudheer,

    补充资料如下:

    器件型号: J722S SR1.0 FS

    日志:

    U-Boot 2025.01-ti (Oct 14 2025 - 20:39:15 +0800)
    
    SoC: J722S SR1.0 HS-FS
    Model: Texas Instruments J722S EVM

    此致、

    Cesar

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

    你好  Sudheer,

    此外、引导模式应使用 SPL 的安全启动

    此致、

    Cesar

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

    尊敬的 Cesar:

    操作手册随 Keywriter 包一起提供。 如果您无法访问 Keywriter 包、请联系当地的 FAE 以获取相同的信息。

    此致
    Diwakar

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

    尊敬的  Diwakar:

    下载:

    https://www.ti.com/secureresources/J7X-RESTRICTED-SECURITY

    使-sj 配置文件=调试 

    编译错误:

    此致、

    Cesar

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

    您好  Cesar

    可以尝试发布配置文件还是直接运行“make -sj“。

    此致
    Diwakar

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

    尊敬的  Diwakar:

    相同的错误消息。

    此致、

    Cesar

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

    尊敬的 Cesar:

    我看到您正在使用 11.00 SDK 生成 Keywriter 映像。 J722S Keywriter 包已通过 10.1 SDK 验证。 请使用相同的进行验证。

    此致
    Diwakar

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

    尊敬的  Diwakar:

    1.我们的产品已大规模生产并使用 sdk11 版本。 无法切换回版本 10.01

    2. Keywriter 的最新更新日期为  

    • 版本:  03.
    • 发布日期:  2024 年 12月 月 25 日
    • 最新

    您能对其进行测试吗? 此错误可能与 SDK 版本无关。

    此致、

    Cesar

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

    尊敬的  Cesar:

    我尝试使用默认的 11.0 SDK 构建它、但在构建它时没有遇到任何问题。 我可以看到 Keywriter 映像正在生成中。

    ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang$ make -sj
    Generating SysConfig files ...
    Running script...
    Validating...
    Generating Code (example.syscfg)...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_dpl_config.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_dpl_config.h...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_drivers_config.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_drivers_config.h...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_drivers_open_close.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_drivers_open_close.h...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_pinmux_config.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_power_clock_config.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_board_config.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_board_config.h...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_board_open_close.c...
    Writing /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/generated/ti_board_open_close.h...
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: ../main.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: ../keywriter_utils.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: ../board.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_drivers_config.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_drivers_open_close.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_board_config.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_board_open_close.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_dpl_config.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_pinmux_config.c
    Compiling: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out: generated/ti_power_clock_config.c
    .
    Linking: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out ...
    Linking: j722s:wkup-r5fss0-0:nortos:ti-arm-clang sbl_keywriter.release.out Done !!!
    .
    Boot image: j722s:wkup-r5fss0-0:nortos:ti-arm-clang /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/sbl_keywriter.release.tiimage ...
    Boot image: j722s:wkup-r5fss0-0:nortos:ti-arm-clang /home/<abc>/Desktop/j722s/ti-processor-sdk-rtos-j722s-evm-11_00_00_06/mcu_plus_sdk_j722s_11_00_00_12/source/security/sbl_keywriter/j722s-evm/wkup-r5fss0-0_nortos/ti-arm-clang/sbl_keywriter.release.tiimage Done !!

    此致、
    Diwakar

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

    尊敬的  Diwakar:

    我重新下载了 SDK、编译成功;

    1.生成证书

    ./gen_keywr_cert.sh -t tidfek/SR_10/ti_FEK_public.pem -b keys_devel/v15/bmpk.pem --bmek keys_devel/bmek.key -s keys_devel/v15/smpk.pem --smek keys_devel/smek.key --keycnt 2 --key1

    2.成功刻录

    3. 它是一个使用 spl 进行引导的引导卡,但无法启动。 串行端口上不打印任何信息

    使用相同的虚拟密钥;

    用于签名证书的私钥与用于 U-boot 固件的私钥相同

    此致、

    Cesar

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

    尊敬的  Cesar:

    第一步、我们将 在将根信任密钥刻录到效率中后、确认器件是否已成功转换到 HS-SE。 为此、我们可以按照此 常见问题解答中提到的步骤进行操作。

    我们对此信息更感兴趣:

    下一步是验证您正在用于 HS-SE 器件的引导映像。 共享用于引导器件的二进制详细信息。

    注意: tiboot3-j722s-hs-evm.bin 是 HS-SE 需要使用的二进制文件、而 对于 HS-SE、则是 tiboot3-j722s-hs-fs-evm.bin FS。

    此致
    Diwakar

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

    尊敬的  Diwakar:

    1. 如何对 mcu1_0 固件进行签名

    2.唤醒内核也需要签名,默认编译的没有签名的固件

    ti-dm/j722s/ipc_echo_testb_mcu1_0_release_strip.xer5f

    此致、

    Cesar

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

    尊敬的  Cesar:

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6179533

    1. 如何对 mcu1_0 固件进行签名

    [/报价]

    e2e.ti.com/.../core_2D00_secdev_2D00_k3.zip

    您可以使用上述软件包 对固件签名、将其解压缩并执行此 链接中提到的签名步骤

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6179533

    唤醒内核是否也需要签名、默认编译的内核没有签名的固件

    ti-dm/j722s/ipc_echo_testb_mcu1_0_release_strip.xer5f

    [/报价]

    DM 使用根信任密钥进行签名、并将 tispl.bin 作为 binman 构建流程的一部分打包、您不必对 dm 固件进行显式签名。  

    此致
    Diwakar

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

    尊敬的  Diwakar:

    SOC_TYPE=hs 使 Linux 

    每次编译后、dt.dtb 的文件大小都会增加:

    这将导致 u-boot.img 文件的大小相应地增加。

    请问这是否是一个错误。

    此致、

    Cesar

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

    尊敬的 Cesar:

    在创建拟合映像时、应该会增加 uboot dtb 的大小、原因是验证拟合映像嵌入到 uboot dtb 中的密钥。

    请浏览 uboot 公共 文档 、以获取更多 有关 Fitimage 的签名。   

    此致
    Diwkaar

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

    尊敬的  Diwakar:

    1.fitImage.it没有签名标记。 系统启动时、仅执行哈希值验证、不进行签名验证

    2.如何加密 eMMC ,防止 EMMC 被拆卸以破解内部的程序。

    此致、

    Cesar

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

    您好 Cesar

    1.fitImage.it没有签名标记。 系统启动时、仅执行哈希值验证、不进行签名验证

    我可以看到默认 fitimage.it 中有签名标记、您是否使用默认值?


    此外、用于在 uboot dtb 中创建 fitimage 的命令会包含软件包密钥  

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6183729

    2.如何加密 eMMC ,防止 EMMC 被拆卸以破解内部的程序。

    [/报价]

    我建议您为此推出新螺纹、因为它偏离了原始螺纹。 这有助于我们简化问题。 感谢您的理解。

    此致、
    Diwakar

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

    尊敬的  Diwakar:

    1. 你回答的第一个问题是你发送的照片失败了;

    SPL 引导、固件应用作 j722s-mcu-R5f0_0-fw-sec

    此致、

    Cesar

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

    您好  Cesar

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6186195

    1. 你回答的第一个问题是你发送的照片失败了;

    [/报价]

    更新了图像、请立即查看。

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6186195

    SPL 引导、固件应用作 j722s-mcu-R5f0_0-fw-sec

    [/报价]

    我  最后看不到 VT_mcu10_app 文件夹、这是定制的吗?


    您是如何创建 SD 卡的? Linux SDK 内有一个脚本 (ti-processor-sdk-linux-adas-j722s-evm-10_01_00_04/bin/create-sdcard.sh)、用于使用默认引导二进制文件和 rootfs 来准备 SD 卡。

    rootfs 确实有 j722s-mcu-R5f0_fw-sec 的签名映像、您可以尝试使用该映像。 请注意、您仍需要将 boot 文件夹中的二进制文件替换为 HS-SE 器件的二进制文件、默认脚本会复制 FS 器件的二进制文件。

    此致、
    Diwakar

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

    尊敬的  Diwakar:

    1.我这边的 SDK 默认情况下不带签名字段

    2. j722s-mcu-R5f0_0-fw-sec、如何编译

    此致、

    Cesar

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

    你(们)好  

    感谢您的联系、我们将在下周初就此做出回应。 感谢您的耐心。

    此致
    Diwakar

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

    你(们)好

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6188068

    1.我这边的 SDK 默认情况下不带签名字段

    [/报价]

    我在内部进行了检查、我们有一些与 dtb 大小的 mkimage bloat 相关的已知问题。 我们正在处理这一问题。

    [引述 userid=“557095" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1601856/tda4ven-q1-secure-boot/6188068

    2. j722s-mcu-R5f0_0-fw-sec、如何编译

    [/报价]

    这取决于要在 MCU10 上运行的固件、  j722s-mcu-R5f0_0-fw-sec 只是指向所需固件的软链接。 如果您只想验证引导流程、可以使用此 响应中建议的预编译映像

    此致、
    Diwakar

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

    尊敬的  Diwakar:

    维修完成后、请提供相应的补丁程序。

    此致、

    Cesar

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

    尊敬的  Cesar:

    JIRA 中提到的修复版本为 12.0 SDK。 您可以下载并在 SDK 关闭后进行检查。

    此致
    Diwakar

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

    尊敬的  Diwakar:

    现在、HS-SE 已经确定了看门狗无法正常工作的问题;FS 的看门狗工作;

    测试命令:echo 123 >/dev/watchdog

    在 HS-SE FS 超时一分钟后、系统将重新启动、但 HS-SE 超时不会导致系统重新启动。

    另外、请测试 HS-SE 器件的看门狗功能是否已激活。

    此致、

    Cesar

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

    您好  Cesar

    这是一个新问题、偏离了原线程主题。 我们建议您提出同样的新问题。

    此致
    Diwakar