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.

[参考译文] AM6548:USB MSC 引导失败

Guru**** 2539500 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1058889/am6548-usb-msc-boot-fails

器件型号:AM6548

我们的定制板不具有 SDCard、但使用 eMMC 进行文件存储。  我需要一种初始引导至 Linux 的方法、以便可以对 eMMC 进行分区和格式化、因为 u-boot 不支持此功能。  在我们的情况下、USB MSC 引导是理想的、但无法进入 u-boot 提示符。

我遵循的指令类似于 : https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM65X/latest/exports/docs/linux/Foundational_Components/U-Boot/UG-DFU.html

我将使用为 R5内核提供的 configs/am65x_evm_r5_usbmsc_defconfig 从 TI SDK 08_00_00_02构建 u-boot。  configs/am65x_EVM_A53_defconfig 能够正确支持从存储器件进行 USB 引导。

我设置 AM65 EVM 自举 SW3[4:1]=b1000 (USB 引导) SW2[1]=B1 (MSC 模式)。

tibooot3.bin、sysfw.itb、tispl.bin、u-boot.img 复制到 FAT 格式的 USB 大容量存储设备(ID 0951:168A Kingston Technology DataTraveler Micro)。  USB 存储还具有第二个用于 Linux 的分区。

在 USB 存储设备 连接到 USB0 (PCIe 子板上的 J13)上电后、我 在 R5串行控制台上看到以下内容:

Bus usb@10000: Register 2001040 NbrPorts 2
Starting the controller
USB XHCI 1.10
scanning bus usb@10000 for devices... 2 USB Device(s) found
       scanning usb for storage devices... 1 Storage Device(s) found

然后、A53内核串行控制台显示:

U-Boot SPL 2021.01-08231-g563e4c8613-dirty (Nov 23 2021 - 21:07:53 +0100)
SYSFW ABI: 3.1 (firmware rev 0x0015 '21.5.0--v2021.05 (Terrific Llam')
Trying to boot from USB
       scanning usb for storage devices... 1 Storage Device(s) found
WARN halted endpoint, queueing URB anyway.
Unexpected XHCI event TRB, skipping... (41c72530 00000000 13000000 01008400)
BUG at drivers/usb/host/xhci-ring.c:500/abort_td()!
BUG!
resetting ...

 该 R5和 A53控制台输出由于复位而重复。

 我在 A53内核上执行了一些 printf 调试、在 common/spl/spl_fat.c 中调用 file_fat_read()、尝试从分区1读取 tispl.bin。  有趣的是、R5 SPL 代码以前成功读取 sysfw.it b.

您能帮我从 MSC 引导吗?

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

    我认为以太网引导也不适合我们、因为我们使用 MII PHY 接口。  AM65x 以太网引导仅支持 RMII 和 RGMII。

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

    布鲁诺

    您可以尝试使用 USB 进行 DFU 引导吗?

    该链接中也提到了这一点:

    https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM65X/latest/exports/docs/linux/Foundational_Components/U-Boot/UG-DFU.html

    也有 UART 引导以进入 U-Boot 提示符 :https://e2e.ti.com/support/processors/f/791/t/1021784 

    我将在内部检查 MSC 引导是否存在已知问题。

    此致、
    基尔西

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

    您好、Keerty、

    DFU Boot 正在工作以引导至 u-boot 提示符。

    那么、如何启动 Linux?  可能会通过 DFU 将内核加载到 RAM 中。  RAM 有限、我们 可以格式化 eMMC、 但如何将映像复制到 eMMC?  可能通过以太网或?  USB MSC 引导是理想选择、因为内核可以从 USB 介质加载、该介质还包含 eMMC 映像。

    我们没有暴露 UART。 即使我们这么做、UART 也存在与 DFU 相同的引导 Linux 内核问题。

    我了解到、SDK 8.1计划使用 USB 引导至 Linux。  我可以等到释放后再试一次。

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

    布鲁诺

    你是对的。 正在内部跟踪此错误。 8.1大多数情况下不会有此修复程序、但对于8.2 SDK、肯定会有此修复程序。

    此致、
    基尔西

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

    您好、Keerty、

    能否给出8.2 SDK 发布日期的粗略估算?

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

    2022年第1季度末或2022年第2季度初。

    8.1将在几周内结束。

    如果没有其他问题、请单击验证答案。

    -凯尔西

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

    8.1是否支持 AM64x-EVM 上的 MSC 引导?

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

    布鲁诺

    我相信您是指 AM65x。 答案是否定的 根据开发团队提供的信息、计划发布8.2版。

    此致、
    基尔西

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

    我最初指的是 AM65x。  但我也对 AM64x 感兴趣。