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.

[参考译文] PROCESSOR-SDK-AM62X:UBoot 阶段复位无法正常工作

Guru**** 2483885 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1550355/processor-sdk-am62x-uboot-stage-reset-not-working

器件型号:PROCESSOR-SDK-AM62X


工具/软件:

版本:RT-am62xx-EVM-09.02.01.10

我使用的是定制 AM62x 电路板、遇到了在 U-Boot 中执行“复位“命令不会导致重新启动的问题。 相反,系统似乎停止,当前消耗显著下降。控制台打印“正在重置...“


我已在 U-Boot defconfig 中启用以下配置:

CONFIG_SYSRESET=y
CONFIG_SPL_SYSRESET=y
CONFIG_SYSRESET_CMD_RESET=y
CONFIG_SYSRESET_TI_SCI=y
CONFIG_ESM_K3=y


相关的设备树节点也似乎存在:  

=> dm 树

 复位       0 []    ti-sci-reset       ||    |-复位控制器

 sysreset   0 [  ]  ti-sci-sysreset    ||    `- sysreset-controller

=> dm uclass

uclass 111:sysreset 0 sysreset-controller @ 8df467d0、Seq 0

uclass 95:RESET 0 reset-controller @ 8df466f0、seq 0

此外、我观察到尝试使用 RTI0 看门狗进行复位时出现了相同的行为:电路板不会重新启动、但电流再次降至与 RESET 命令类似的值。 我还尝试了将 0x6 写入 WKUP_MMR0_RST_CTRL 寄存器的位[3:0]、以触发从主域进行的复位。 结果相同:不重新启动、电流下降。 此行为是否与 PMIC 或其他硬件配置有关? 对于如何进一步调试或解决该问题、是否有任何建议?

提前感谢您的支持!

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

    你好、龙陈

    感谢您的查询。

    我正在使用定制 AM62x 电路板

    您能否确认电路板按预期启动并且所有其他电路板功能都正常工作。

    请共享您正在使用的软件开发环境。

    您是否在特定主板上观察到该问题?

    此致、

    Sreenivasa.

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

    你好、龙陈

    错过了提问:

    您是否有可以用于快速检查的 SK?

    此致、

    Sreenivasa.

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

    你好、龙陈

    您是否有机会查看以下常见问题解答:

    这是电路板启动常见问题解答: https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1358039/faq-board-bring-up-tips-for-sitara-devices-am64x-am243x-am62x-am62l-am62ax-am62d-q1-am62px

    此致、

    Sreenivasa.

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

    您好、Kallikuppa Sreenivasa

    SDK 版本:RT-am62xx-EVM-09.02.01.10

    我可以确认电路板按预期启动、并且所有其他电路板功能正常工作。 我没有用于快速检查的 AM62X-SK-EVM。
    电路板通常可进入 R5 SPL -> A53 U-boot ->内核。 我还想添加在进入 Linux 后运行“reboot"命令“命令的功能。
    我引用了:

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62AX/latest/exports/docs/linux/、Foundational_Components、Kernel/PMIC/pmic_tps6594.html Kernel_Drivers

    它提到:
    “TPS6594 是一款电源管理 IC、它提供稳压器(降压稳压器和 LDO)以及其他功能、如 GPIO、RTC、看门狗、ESM(错误信号监控器)和 PFSM(可预配置的有限状态机)“

    这是否与 PMIC 有关?

    提前感谢您的支持!

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

    你好、龙陈

    谢谢你。

    让我进行内部检查。

    您能否分享原理图以进行快速检查 — 以防出现硬件问题。

    此致、

    Sreenivasa.

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

    你好 Kallikuppa Sreenivasa,

    抱歉、由于保密原因、我无法分享原理图。 您能否建议一些可能导致此问题的潜在硬件问题?

    提前感谢您的支持!

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

    你好、龙陈

    感谢您发送编修。

    我正在内部进行检查。  猜测问题是一项挑战。

    此致、

    Sreenivasa.

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

    你好 Kallikuppa Sreenivasa,


    期待听到您的检查结果。


    提前感谢您的支持!

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

    你好、龙陈

    谢谢你。

    让我分配给专家。

    此致、

    Sreenivasa.

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

    你好 Kallikuppa Sreenivasa,

    好的、没问题。

    我将等待专家的答复。

    提前感谢您的支持!

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

    你好 Long、
    1/。 您的电路板上的闪存是什么?
    2/。 我们在您的电路板上是否具有 JTAG 访问权限?
    此致、
    - Hong

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

    Hong Hong:
    1.Winbond W25Q512JVEIQ
    2.是的
    提前感谢您的支持!

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

    你好 Long、
    我们是否可以如下所列在您的电路板上运行一个简单的测试并共享日志和 JTAG 转储?
    -启动主板,
    -停止@u-boot 提示符,并运行命令
    - Md.l 0x43018170 3.
    -重置
    -将 JTAG 连接到正在运行的板,其中“连接“表示在没有目标复位的情况下连接/连接 JTAG。
    -通过 JTAG 断开运行板,并转储三个 MMR @0x43018170/0x43018174/0x43018178
    此致、
    - Hong

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

    Hong Hong:
    由于我不熟悉 CCS、
    “通过 JTAG 断开运行板、并转储三个 MMR @0x43018170/0x43018174/0x43018178“
    将 JTAG 连接到正在运行的板后、如何断开正在运行的板?
    我还发现、运行“reset"命令“命令后、无法连接目标。


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

    Hong Hong:
    我尝试了,得到了你需要的
    提前感谢您的支持!

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

    你好 Long、

    请参阅< 14.2.1.1.3.275.1 WKUP_MMR0_RST_SRC 寄存器 >在 AM62x TRM 中
    “=>重置“后从 JTAG 转储中
    0x43018178=00010000 => WKUP_MMR0_RST_SRC[16]=1 =>软件热复位

    在<中 6.3.3.4 RESETSTATz 状态引脚 >在 AM62x TRM 中
    “该引脚指示 MAIN 域的热复位状态(低电平有效)。
    当为低电平时、表示主域处于热复位状态。
    高电平时、表示主域未复位。“

    例如、在 TI AM62x-SK 板上、只要 AM62x 主域通过内部热复位、RESETSTATz 就用作热复位控制输入、以复位系统上的外部器件。 下图显示了  TI AM62x-SK 上的 RESETSTATz =>复位 OSPI_NOR 时、供您参考。


    我们是否以类似的方式将 RESETSTATz 用作热复位控制引脚来复位您电路板上的闪存器件?

    此致、
    - Hong

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

    Hong Hong:
    我没有采用类似的设计、使用 RESETSTATz 引脚作为测试点。


    但我还发现、输入内核后、运行命令“reboot"</s>“
    0x43018178=00010000 => WKUP_MMR0_RST_SRC[16]=1 =>软件热复位
    它已成功重新启动。
    这两个不同阶段的指令之间是否有任何差异?

    提前感谢您的支持!

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

    你好 Long、
    在 W25Q512JV 数据表中
    “图 1a. W25Q512JV 焊盘分配、8 焊盘 WSON 8x6mm(封装代码 E)
    图 1b。 W25Q512JV 引脚分配、16 引脚 SOIC 300mil(封装代码 F)
    硬件/RESET 引脚仅在 TFBGA 或 SOIC16 封装中可用“

    您的设计中似乎使用了较小的封装(8 焊盘)。
    W25Q512JV 数据表中的<8.2.52 启用复位 (66h) 和复位器件 (99h)>
    “由于封装很小且引脚数量有限、W25Q512JV 提供了 软件复位指令、而不是专用的复位引脚...“

    在执行“reset"@“@u-boot 和“reboot"@“@kernel 时、我们能否在您的电路板上捕获 SW 复位命令序列“Enable Reset (66h)“和“Reset (99h)“波形、其中

    是参考波形

    我猜是 SW reset cmd 序列“Enable Reset (66h)“和“Reset (99h)“是通过运行“reboot"@“@kernel 而不是“reset"@“@u-boot 触发的。
    此致、
    - Hong

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

    Hong Hong:
    如您所料、我在执行“restart"@“@kernel 时捕获了 SW 复位 cmd 序列“Enable Reset (66h)“和“Reset (99h)“波形、但没有捕获“reset"@“@kernel。我也没有在看门狗复位期间捕获该波形。
    这意味着我需要修改 uboot 和 RTI 看门狗的源代码、以实现与“reboot"@“@内核相同的功能。
    提前感谢您的支持!

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

    你好 Long、

    但不进行“reset"@“@kernel.we 也没有在看门狗复位期间捕获波形。

    我想您的意思是“但不是“重置“ @u-boot 我也没有在看门狗复位期间捕获波形。“、对吗?

    这是内核软件复位代码
    https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/mtd/spi-nor/core.c?h=11.01.10#n3321

    u-boot 中有类似的软件复位、但用途不同
    https://git.ti.com/cgit/ti-u-boot/ti-u-boot/tree/drivers/mtd/spi/spi-nor-core.c?h=11.01.10#n4339

    您可以自行探索、是否能够在 u-boot 中为您的用例启用 SPI-NOR 上的软件复位。

    或者、按照“图 1b 中所列、选择 W25Q512JV 16 引脚封装。 W25Q512JV 引脚分配、16 引脚 SOIC 300mil(封装代码 F)“并将 AM62x SoC 的 RESETSTATz 连接到 W25Q512JV 上的硬件复位引脚。

    此致、
    - Hong