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.

[参考译文] EVMK2EX:通过以太网引导模式从 TFTP 设置程序引导 u-boot

Guru**** 2540720 points
Other Parts Discussed in Thread: EVMK2EX

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/601236/evmk2ex-booting-u-boot-from-a-tftp-setver-through-ethernet-bootmode

器件型号:EVMK2EX

您好!

我尝试  通过 TFTP 服务器通过以太网引导模式引导 Keystone 2 66AK2Ex 开发板、并从 MCSDK 构建用于以太网引导模式的 uboot 二进制文件。

我使用了下面链接中的 Keystone 2引导示例中的第一个映像、并首先从 UART 引导(因为有勘误表)、然后器件切换到以太网引导模式、而 uboot 映像是 tftpd sucessFully。

http://processors.wiki.ti.com/index.php/KeystoneII_Boot_Examples#Running_Ethernet_examples

但之后、uboot 被卡住、我在串行端口控制台上看不到任何消息。  

我使用 uboot UART 二进制文件从 UART 引导模式引导 uboot、但发现了相同的问题。

我从 TI 软件专家那里得到了答复、他也可能重现此问题、并且在较旧的 MCSDK 版本中未找到此问题:

https://e2e.ti.com/support/dsp/c6000_multi-core_dsps/f/639/p/600663/2209187#2209187

您能否为我提供 uboot 工作正常的旧 MCSDK 版本? 我需要一个适当的 uboot 映像、以便从以太网引导模式引导 Keystone 2器件及其紧急情况。

请帮助。

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

    器件型号:EVMK2EX

    您好!

    我尝试使用以下链接中的步骤从 TFTP 服务器引导 u-boot:

    http://processors.wiki.ti.com/index.php/KeystoneII_Boot_Examples#Running_Ethernet_examples

    我按照以下链接下载了软件包、并为以太网模式构建了 uboot 二进制文件:

    processors.wiki.ti.com/.../KeystoneII_Boot_Examples

    在我构建 uboot 二进制文件后、我看到 uboot_eth.bin 在以下文件夹中生成:

    boot_examples_1/examples/k2e/uboot/

    我使用第一个映像通过 UART 引导模式引导 K2E 器件(如上面的链接中所述、有一个 K2E 器件的勘误表)、然后将上面的 uboot_eth.bin 放置在 tftp 服务器中。

    K2E 器件发送的 BOOTP 数据包和 uboot_eth.bin 映像也通过 tftp 发送。 但是、我看不到 Keystone 上的 Uboot 加载。 串行控制台上没有显示 msgs,且为空。

    您能否告诉我我我是使用正确的 uboot 二进制文件、还是应该以不同的方式构建?

    此致、

    Ashwini

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

    我已通知软件团队。 他们的反馈将在此处发布。

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

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

    Ashwini、

    我最终能够重现此问题 我能够引导 Keystone II 引导示例中的第二级示例、其中该示例引导并显示 UART 输出、但当 Uboot 通过 tftp 传输时、它无法向串行控制台发送日志。 由于 PC 位于存储器映射所在的区域、uboot 已引导、但 uboot 中存在在第二阶段引导后挂起的代码。 当我们发布该软件包时、它可以与较旧版本的 MCSDK 配合使用、但较新版本的 u-boots 似乎挂起。

    您是否尝试加载符号并查看 uboot 中的哪个函数未执行? 我认为 uboot 以太网引导的引导映像是正确的、因为 uboot 正在 SOC 上加载、Wireshark 显示完整二进制文件的 TFTP 传输。 您是否已使用 I2C 的第一级对此进行了测试?  

    此致、
    Rahul

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

    非常感谢您的回复。
    是的、即使我能够成功引导第二级示例。 我仅在 Uboot 映像上看到问题。

    您能告诉我在哪里可以下载 Uboot 工作的旧版 MCSDK、以便我可以使用它吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Rahul、

    我还尝试使用 uboot_uart.bin 通过串行端口发送映像、从 UART 引导模式启动 uboot。 即使通过此图像、我也看到了相同的问题、即 uboot 挂起。

    如果您告诉我 MCSDK 版本、在 Uboot 二进制文件中测试并正常工作、那将会有所帮助。

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

    Ashwini、

    我正在尝试查看我的笔记以找到版本号、但这是在2014年完成的、并于2015年第1季度发布。 这与 MCSDK 3.12和 MCSDK 3.1.3版本一致。

    您能否澄清为什么您需要 u-boot 以太网引导、即使器件有相关的勘误表? 我想知道的一个问题是 u-boot 使用引导监控器代码来执行某些监控器级配置、因此如果没有引导监控器、它将能够执行这些监控器功能。 早期版本的 MCSDK 具有2级 uboot、您可以从此处看到:
    processors.wiki.ti.com/.../MCSDK_UG_Chapter_Exploring

    此外、我还看到了另一件事、即在以太网引导加载从0x0c000000开始的映像时、uboot 入口点配置为0x0c001000、因此您需要将4K 零连接到此处所示的二进制文件中:

    DD if=/dev/zero of=4K_0" bs=4096 count=1
    > cat 4K_0 u-boot.bin > u-boot.UART

    请参阅 :processors.wiki.ti.com/.../MCSDK_UG_Chapter_Exploring


    请按照此处所述使用 UART 引导进行此尝试、然后您可以使用相同的映像通过以太网进行 TFTP 引导。


    此致、
    Rahul

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

    您好、Rahul、
    谢谢。 我们需要通过另一个板启动 K2E 板。 现在、我们需要在 K2E 上使用以太网引导模式。
    我尝试过较旧的 MCSDK 版本3.1.2 (software-dl.ti.com/.../index_FDS.html) 、但仍然看到当 Uboot 映像 tftpd 成功时、我没有看到串行端口上出现 Uboot 消息。

    但是、我发现对于适用于 K2E (software-dl.ti.com/.../index_FDS.html)的较新 TI 处理器 SDK 和较早的 MCSDK 3.1.2版本、一旦我通过 UART 发送 Keystone 2引导示例第一个映像以应用器件勘误表的修复、 K2E 发送 BOOTP 和 tftp 请求并获取 Uboot 映像、我无法在控制台上看到任何 Uboot 消息。 但是,在这之后,如果我在 BMC 上设置以太网引导模式并执行重新引导,我会看到 Uboot 映像再次是 tftpd,并且能够在控制台上看到 Uboot 消息。
    那么、这是它应该如何工作的呢? 在 Keystone 2引导示例中、器件本身在应用 UART 第一映像修复并引导后切换到以太网引导模式、并在控制台上显示消息、因此我不必将引导模式更改为以太网引导模式并重新引导。

    如果不更改 BMC 的引导模式并重新启动电路板、我无法在串行端口上获得 Uboot 消息?

    谢谢、
    Ashwini