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.

[参考译文] AM620-Q1:使用 SBL 引导时出现 ESM 配置错误

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1633903/am620-q1-esm-configuration-error-when-using-sbl-boot

器件型号: AM620-Q1

您好:

    我正在尝试将主 RTI0 设置为看门狗、如果 Linux 内核挂起、必须在早期启动阶段初始化看门狗、从而导致系统复位。 使用 SPL 引导流程进行测试时、该文件适用。 但是、对于 SBL 引导流程、看门狗超时不会触发复位。 SPL 和 SBL 的看门狗配置相同。 我怀疑 ESM 配置在 SPL 中正确完成、而它不在 SBL 中。  

 

ESM 是否应该只由 R5 内核完成?

如果是这种情况、SPL 中的 tispl.bin 可能会执行初始化。

是否不是 SBL 引导流程的情况?

是否有任何关于使用 SBL 引导流程配置看门狗和 ESM 的参考资料?

 

 

SYSFW 固件版本 11.1.2--v11.01.02 (Fancy Rat)
SYSFW 固件版本 0xb
SYSFW ABI 修订版 4.0

从加载映像
[bootloader_profile]引导介质   :闪存
[bootloader_profile]引导介质时钟:166.667MHz
[bootloader_profile]引导映像大小 :230 KB
[bootloader_profile]存在内核  :
m4f0-0
r5f0-0
【引导加载程序配置文件】System_init            :   29129us
【引导加载程序配置文件】Board_init            :      0us
【引导加载程序配置文件】Drivers_open           :    209us
【引导加载程序配置文件】Board_drivers 打开         :    120 美元
【引导加载程序配置文件】Sciclient Get Version       :   10203us
【引导加载程序配置文件】App_waitForMcuPbist        :    102us
【引导加载程序配置文件】App_waitForMcuLbist        :   7689us
【引导加载程序配置文件】App_loadImages          :   11075us
【引导加载程序配置文件】App_loadSelfcoreImage       :   11136us
[bootloader_profile] SBL 所用的总时间       :   69667us

图像加载完成、切换到应用程序...
启动 MCU-M4F 和第二阶段引导加载程序

SYSFW 固件版本 11.1.2--v11.01.02 (Fancy Rat)
SYSFW 固件版本 0xb
SYSFW ABI 修订版 4.0

从加载映像
[bootloader_profile]引导介质   :闪存
[bootloader_profile]引导介质时钟:166.667MHz
[bootloader_profile]引导映像大小 :1107 KB
[bootloader_profile]存在内核  :
r5f0-0
A530-0
【引导加载程序配置文件】System_init            :   2806us
【引导加载程序配置文件】Board_init            :      1 μ s
【引导加载程序配置文件】Drivers_open           :    270 μ s
【引导加载程序配置文件】Board_drivers 打开         :    130us
【引导加载程序配置文件】Sciclient Get Version       :   10284us
【引导加载程序配置文件】App_loadSelfcoreImage       :   14881us
【引导加载程序配置文件】App_loadLinuxImages        :   55059us
[bootloader_profile] SBL 所用的总时间       :   83434us

图像加载完成、切换到应用程序...
启动 Linux 和 RTOS/裸 机应用程序
注意: BL31:v2.11.0(发行版):T7RX_BOOT_2026.1.0
注意:BL31: 建造:14:56:24, Apr 6 2026
I/O TC:
I/UTC:OP-TEE 版本:T7RX_BOOT_2026.1.0 (gcc 版本 13.3.0 (BuildRoot 2024.02.6))#1 周一 4 月 6 日 09:26:31 TC Aarch64
I/OP-TEE:警告:此 TC 配置可能不安全!
TC:警告:请访问 https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
I/O:主 TC 初始化
I/GIC:未提供 TC 转销商基地址
I/GIC:假定默认的 TC 组状态和修饰符
I/SYSFW TC ABI:4.0(固件版本 0x000b '11.1.2--v11.01.02(花哨 Rat)')
I/HUK:TC 已初始化
I/UL:已激活 TC 设备
I/TRNG:已为 SA2UL TC 器件启用防火墙
I/TRNG:SA2UL TC 已初始化
I/UL:已初始化 TC 驱动程序
I/O:主 TC 切换到正常世界引导

U-Boot SPL 2025.04-00012-ge81f00002473-dirty (Apr 07 2026 - 15:55:43 +0530)
检查 IO 隔离
SYSFW ABI:4.0(固件版本 0x000b'11.1.2--v11.01.02(花哨 Rat)')
ESM 主初始化失败:–96
ESM MCU 初始化失败:–96
SPL 初始堆栈使用量:1952 字节
尝试从 SPI 引导
引导区域 A
身份验证已通过
身份验证已通过

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

    您好、

    我怀疑 ESM 配置在 SPL 中正确完成、而它不在 SBL 中。  [/报价]

    如果从 R5F 内核配置 ESM 和 WDG、则应该确保在 Linux 器件树中禁用它。  

    是否有任何参考资料用于使用 SBL 引导流程配置看门狗和 ESM?

    我附上了我之前为 AM62Ax 创建的示例、其中 MCU RTI0 集成在 SBL Null 中。 AM62Ax 的代码应该非常相似、因为大多数 API 都是相同的。 您可以查看此内容以供参考。  

    e2e.ti.com/.../SBL_5F00_NULL.zip

    此致、

    Nihar Potturu

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

    尊敬的 Nihar:

        感谢您的答复。 此示例提供了良好的基准。 我将尝试在由 SBL 加载的 R5F 二进制文件中实现此实现。 一个主要区别是、我计划使用其中一个主要的 TI 来实现这一点。 因此、我必须配置主 ESM、以便在看门狗超时时生成系统复位。 这可以通过使用 R5F 应用程序来实现吗? 我将看门狗配置保留为 u-boot。

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

    您好、

    因此、我必须配置主 ESM、以便在发生看门狗超时时生成系统复位。 这可以通过使用 R5F 应用程序来实现吗? I [/报价]

    是的、初始化序列将非常相似。 您只需启用主 ESM 而不是 MCU ESM 并启用 RTI0 事件。  

    请确保 WKUP_MMR0_RST_CTRL 寄存器的第 17 位设置为 0、以便 ESM 模块可以在 WDG 到期时触发 SoC 复位。

    此致、

    Nihar Potturu

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

    尊敬的 Nihar:

       这里还有一个问题。 ESM 寄存器是否不可由其他内核(而不是 R5F)配置? 为什么只能通过 R5F 内核配置它们?

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

    您好、

       这里还有一个问题。 ESM 寄存器是否不可由其他内核(而不是 R5F)配置? 为什么只能通过 R5F 内核配置它们?

    SDL 通常用于配置 ESM 模块。 在 M4F 和 R5F 内核上支持 SDL。 您可以使用 M4F 或 R5F 内核来配置 ESM。 由于 SBL 在 R5F 上运行、因此共享的示例具有来自 R5F 的 ESM 配置。

    此致、
    Nihar Potturu