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.

[参考译文] AM62P:TEYE 工具:UBoot 支持

Guru**** 2473260 points
Other Parts Discussed in Thread: AM62P

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1460585/am62p-teye-tool-uboot-support

器件型号:AM62P

工具与软件:

您好!

TI 是否可以通过 bootelf 命令添加对从 Uboot 运行此工具的支持?

我尝试过以下操作:

按任意键以停止自动引导:0
=>
=>
=>
=>
=>
=>
=> USB 开始
正在启动 USB...
总线 USB@31000000:寄存器1000840 NbrPorts 1.
启动控制器
USB xHCI 1.10
总线 USB@31100000:寄存器1000840网络端口1.
启动控制器
USB xHCI 1.10
正在扫描总线 USB@31000000... 找到2个 USB 设备
正在扫描总线 USB@31100000设备... 找到1个 USB 设备
正在扫描存储设备的 USB ... 1找到存储设备
=> fatls USB 0 /
EFI/
19186176图像
315539 tiboot3-am62px-hs-fs-evm.bin
315539 tiboot3.bin
12285 ti_logo_414x97_32bpp.bmp.gz
1601499 tispl.bin
1179267 u-boot.img
574 uEnv.txt
系统卷信息/
338672 AM62A_AM62P_TEYE_A53_READ.out

8个文件、2个目录

=> fatload USB 0 0x82000000 /AM62A_AM62P_TEYE_A53_READ.out
在26 ms (12.4 MiB/s)内读取338672字节
=> MD 0x82000000
82000000:464c457f 00010102 00000000 00000000 .ELF .................
82000010:00b70002 00000001 791179c0 00000000 .......... Y.Y...
82000020: 00000040 00000000 0004ee30 00000000 @… 0…
82000030:00000000 00380040 00400002 00f200f3...@@…
82000040:00000001 00000006 00010000 00000000 ..........
82000050: 70000000 00000000 70000000 00000000 .. 第页...
82000060:00010000 00000000 00010000 00000000 ..........
82000070:00010000 00000000 00000001 00000007 ..........
82000080:00020000 00000000 79100000 00000000 .......... Y...
82000090: 79100000 00000000 0002d737 00000000…………………………………………………………………………………
820000a0:0005dd30 00000000 00010000 00000000 0..........
820000b0:00000000 00000000 00000000 ..........
820000c0:00000000 00000000 00000000 ..........
820000d0:00000000 00000000 00000000 ..........
820000e0:00000000 00000000 00000000 ..........
820000f0:00000000 00000000 00000000 ..........
=> bootelf 0x82000000
=>
=>
=>
=>

请注意、我们将 UART5用作控制台端口、但我仍然看不到 UART0上有任何输出、知道它可以正常工作、因为在引导期间会打印一条消息(uboot 的引导、不是 elf)。

UART0上出现的消息:

.10.0-367-g00f1ec6b87-dirty
通知:BL31:创建时间:2024年2月9日16:09:05

谢谢!

道格

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

    我们意识到、需要将"autocstart"设置为"yes"、U-Boot 才能实际 运行映像。 但是、它随后会立即遇到异常:

    => tftp AM62A_AM62P_TEye_A53_read.out
    link up on port 2, speed 1000, full duplex
    Using ethernet@8000000port@2 device
    TFTP from server 192.168.253.127; our IP address is 192.168.253.125
    Filename 'AM62A_AM62P_TEye_A53_read.out'.
    Load address: 0x82000000
    Loading: #################################################################
             ##  0 Bytes
             3.4 MiB/s
    done
    Bytes transferred = 338672 (52af0 hex)
    => setenv autostart yes
    => bootelf 0x82000000
    ## Starting application at 0x791179c0 ...
    "Synchronous Abort" handler, esr 0x8600000d
    elr: 0000000039a4c9c0 lr : 00000000808141ec (reloc)
    elr: 00000000791179c0 lr : 00000000bfedf1ec
    x0 : 0000000000000000 x1 : 00000000bdea9260
    x2 : 00000000791179c0 x3 : 0000000002850000
    x4 : 0000000002850000 x5 : 00000000bde77895
    x6 : 0000000000000030 x7 : 00000000bde77d20
    x8 : 0000000000000004 x9 : 0000000000000008
    x10: 00000000ffffffd0 x11: 0000000000000010
    x12: 000000000001869f x13: 0000000000000004
    x14: 0000000000000001 x15: 0000000000000021
    x16: 00000000bfedf0c0 x17: 0000000000000000
    x18: 00000000bde8ad80 x19: 0000000000000000
    x20: 0000000000000000 x21: 00000000bffa036c
    x22: 00000000bff9904f x23: 00000000bdea9260
    x24: 00000000bdea9250 x25: 0000000000000002
    x26: 0000000000000000 x27: 0000000000000000
    x28: 00000000bdea9190 x29: 00000000bde77d20
    
    Code: f27d001f 9a870042 9a850063 17ffffc8 (aa1f03e0)
    Resetting CPU ...
    
    resetting ...
    

    有人知道导致这种情况的原因吗?

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

    您好、Christian:

    我不确定 TEYS 工具是否可以在 U-Boot 中加载/运行。 您能解释一下为何要将其加载到 U-Boot 中、而不是工具中提供的方法吗?

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

    因为我们的定制设计中没有 JTAG 或 UART 引导。

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

    如果您没有可供使用的项目或未使用与 JTAG 完全类似的设计、则设置 EV 是很困难的。  我们的软件用户不使用 TI IDE 进行开发。  我们已对 EV 进行了硬件更改以满足我们的产品目标、TI IDE 项目与我们使用的项目不同。  在这方面使用 JTAG 的唯一原因是用于调试或此工具。  到目前为止、我们尚未设置任何使用 JTAG 的调试。

    为什么您不支持 U-Boot 之类的工具、此类工具将在您的产品中通用、并且不需要任何额外的硬件并且不依赖于运行的 TI IDE?

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

    尊敬的 Doug:

    我不熟悉这个 TEYE 工具、除了它用于 DDR 验证。 因此、我想此工具应该在内部 SRAM (而不是 DDR)上运行、但 U-Boot 已经在 DDR 上运行。 开箱即用的 U-Boot 无法将代码执行从 DDR 跳回至 SRAM。

    不管怎样,我想从 TEYE 工具开发人员那里获得详细信息,看看您可以选择哪些选项。

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

    您好、Bin:

    开箱后,U-Boot 无法将代码执行从 DDR 跳回到 SRAM。

    这不是问题。 据推测、该工具正在 向 UART0打印一份报告、我们需要获取该报告。 这就是我们需要的一切。

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

    您好、Christian:

    我与开发人员沟通过、该工具由 A53在 SRAM 上运行、而 A53必须退出复位和未配置状态。 因此、无法在 U-Boot 提示符下加载并运行该工具、A53已经在此处运行。

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

    谢谢 Bin。

    但是、这表明工具可能会在由 R5上运行的 U-Boot SPL 实例加载时运行。 对吗?

    您是否可以提供有关如何执行该操作的说明?

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

    您好、Christian:

    我可以让 tiboot3.bin 加载并运行该工具。 让我尝试一下它、看看我是否能使它正常工作。

    同时、我正在等待开发人员对是否有其他方式在没有 JTAG 或 UART0访问的情况下加载和运行该工具进行评论。

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

    您好、Christian:

    因为我们的定制设计方案没有 JTAG 或 UART 引导选项。

    当我在 U-Boot 中尝试加载/运行该工具时遇到一些挑战、我注意到包 readme.txt 中显示以下消息:

    ===
       固件将处理所有 A53内核设置(引导代码、MMU 等)并配置
       UART 寄存器、用于通过 UART0进行通信。
    ===

    该工具看起来会直接将消息打印到 UART0、但如果您的定制板上没有 UART0、您将如何收集日志?

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

    我们只需进行一些修改即可做到这一点。 UART0可用、但通常用作 RS485线路。

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

    好的、我想您会绕过 RS485收发器、然后可以使用 UART0作为控制台。 如果是、您可以按照 TEYE 工具 readme.txt 的说明操作并使用 UART0引导加载/运行该工具吗? 我认为这应该是您用例中的最佳选择。

    以下是我在 U-Boot 中加载该工具的更新:

    不应在 U-Boot 提示符下加载工具二进制文件。 该工具在 SRAM 地址0x79100000上运行、但 SRAM 受 U-Boot 保护、从 U-Boot 提示符将工具二进制文件加载到0x79100000失败。 此外、工具 readme.txt 指出 A53应刚刚通电、但不会运行任何指令;但在 U-Boot 提示符下、A53已运行。

    因此、我的下一个想法是通过 R5 SPL (tiboot3.bin)加载/运行该工具。 在过去的几天里、我在这方面取得了一些进展、但随后面临着几个挑战。 下一级引导加载程序的 R5 SPL 加载例程需要一个时基故障映像(tispl.bin)、其中 mush 具有 ATF、OPTEE、DM 和 Linux 内核的其他组件、并且应该对所有组件进行签名。 我从 ELF 转换了工具二进制文件、并将其打包成一个拟合映像、并且修改了 R5 SPL 代码尝试加载它、但未正确加载到0x79100000。

    我仍然有兴趣让这种方法发挥作用、但我认为不能在几天内完成。 为了不延迟您的项目、我建议您考虑使用 UART 引导方法在电路板上加载/运行该工具。

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

    箱、

    感谢您提供信息。 我们必须检查是否可以修改板以从 UART 引导/通过 UART 引导。

    如果您碰巧收集了一些其他信息、请告知我。