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.

[参考译文] AM623:EVM 板不支持 USB 主机引导模式(MSC)

Guru**** 2487425 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1434795/am623-usb-host-boot-mode-msc-unsupported-on-evm-board

器件型号:AM623

工具与软件:

尊敬的 TI 团队:

我目前使用的是 AM62x EVM 板、我在使用 USB 主机引导模式(MSC)时遇到了问题。 根据引导配置设置、设置 B7-B0至11010011应启用从 USB MSC 进行主引导。 然而、此配置在此电路板上似乎未能正常工作。

请确认 AM62x EVM 是否正式支持 USB MSC 引导模式? 如果有任何与此模式相关的具体要求或限制、我希望您能提供任何指导或文档。


此致、
Murali Vikash

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

    对于 USB MSC 引导、B7应为"0"、B8应为"1"。

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

    刘斌、您好!

    感谢您的答复。

    我按照以下步骤尝试了在 AM62x EVM 上进行 USB MSC 引导、但遇到了错误:

    已使用 BalenaEtcher 将.wic 映像刷写到 USB 驱动器中。
    已将用于 USB MSC 引导的引导模式开关配置为以下设置:
    开关2 (位置0-7):11001010
    开关1 (位置8-15):10000000
    已尝试从 USB 驱动器引导。
    尽管执行了这些步骤、但电路板仍然无法从 USB MSC 设备启动。 您能否就此问题提供进一步指导?





    此致、
    Murali Vikash

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

    尊敬的 Murali:

    若要使用 USB MSC 引导、应使用 defconfigam62x_evm_r5_defconfig am62x_r5_usbmsc.config ""编译 U-Boot R5 SPL。 请参阅下面链接的 U-Boot 文档中的表。

    https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/10_00_07_04/exports/docs/linux/Foundational_Components U-Boot/UG-General-Info.html

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

    您好!

    感谢您分享链接。 我注意到、它指的是 U-Boot 文档的版本10、而我目前正在使用 Yocto 的版本9 SDK。 您能否确认使用编译 U-Boot R5 SPL 的步骤是否am62x_evm_r5_defconfig am62x_r5_usbmsc.config也适用于 V9、或者是否应该遵循 V9的特定步骤或配置?

    相关联的相位 UBOOT_MACHINE="am62x_evm_r5_usbmsc_defconfig"对于 V9、会出现消息"Please reset Board。" 同样、设置 UBOOT_MACHINE="am62x_evm_r5_defconfig am62x_r5_usbmsc.config"对于 V10、也会出现"请重置电路板"。

    是否需要应用任何配置更改或补丁来解决此问题?

    此致、Vikash

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

    您好!

    当前、设置时 UBOOT_MACHINE="am62x_evm_r5_usbmsc_defconfig"对于 V9、[/报价]

    是的、这对于 SDK9.x 是正确的

    我遇到消息"Please reset Board"。 [报价]

    您可能需要以下 U-Boot 补丁。

    diff --git a/arch/arm/dts/k3-am625-sk.dts b/arch/arm/dts/k3-am625-sk.dts
    index 823e4320c3c4..9b19c3153a19 100644
    --- a/arch/arm/dts/k3-am625-sk.dts
    +++ b/arch/arm/dts/k3-am625-sk.dts
    @@ -569,11 +569,11 @@
     };
     
     &usb0 {
    -       dr_mode = "peripheral";
    +       dr_mode = "host";
     };
     
     &usb1 {
    -       dr_mode = "host";
    +       dr_mode = "peripheral";
            pinctrl-names = "default";
            pinctrl-0 = <&main_usb1_pins_default>;
     };
    diff --git a/arch/arm/dts/k3-am62x-sk-common-u-boot.dtsi b/arch/arm/dts/k3-am62x-sk-common-u-boot.dtsi
    index 4265b434168b..b1a724a117fd 100644
    --- a/arch/arm/dts/k3-am62x-sk-common-u-boot.dtsi
    +++ b/arch/arm/dts/k3-am62x-sk-common-u-boot.dtsi
    @@ -122,7 +122,7 @@
     };
     
     &usb0 {
    -       dr_mode = "peripheral";
    +       dr_mode = "host";
            /* Since role switching is not supported in U-Boot */
            /delete-property/ extcon;
            bootph-pre-ram;
    @@ -133,6 +133,7 @@
     };
     
     &usb1 {
    +       dr_mode = "peripheral";
            bootph-pre-ram;
     };

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

    您好、Bin Liu。

    感谢您提供该补丁; uboot 现在已启动并正在运行。 但是、在调用日志以供您参考后、我会遇到问题。

    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    SPL initial stack usage: 13408 bytes
    Trying to boot from USB
    Bus usb@31000000: Register 1000840 NbrPorts 1
    Starting the controller
    USB XHCI 1.10
    scanning bus usb@31000000 for devices... 2 USB Device(s) found
           scanning usb for storage devices... 1 Storage Device(s) found
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty
    NOTICE:  BL31: Built : 16:09:05, Feb  9 2024
    
    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    SPL initial stack usage: 1856 bytes
    MMC: no card present
    ** Bad device specification mmc 1 **
    Couldn't find partition mmc 1:1
    Error: could not access storage.
    Trying to boot from USB
    Bus usb@31000000: Register 1000840 NbrPorts 1
    Starting the controller
    USB XHCI 1.10
    scanning bus usb@31000000 for devices... 2 USB Device(s) found
           scanning usb for storage devices... 1 Storage Device(s) found
    Authentication passed
    Authentication passed
    
    
    U-Boot 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    
    SoC:   AM62X SR1.0 HS-FS
    Model: Texas Instruments AM625 SK
    EEPROM not available at 80, trying to read at 81
    Board: AM62B-SKEVM-P1 rev A
    DRAM:  no bloblist found!2 GiB
    Core:  72 devices, 32 uclasses, devicetree: separate
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial
    Out:   serial
    Err:   serial
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0
    switch to partitions #0, OK
    mmc0(part 0) is current device
    SD/MMC found on device 0
    ** Invalid partition 1 **
    Couldn't find partition mmc 0
    Can't set block device
    ** Invalid partition 1 **
    Can't set block device
    ** Invalid partition 1 **
    ## Error: "main_cpsw0_qsgmii_phyinit" not defined
    ** Invalid partition 1 **
    Couldn't find partition mmc 0:1
    Can't set block device
    ** Invalid partition 1 **
    Couldn't find partition mmc 0:1
    Can't set block device
    Working FDT set to 88000000
    Bad Linux ARM64 Image magic!
    switch to partitions #0, OK
    mmc0(part 0) is current device
    ** Invalid partition 1 **
    Couldn't find partition mmc 0:1
    MMC: no card present
    starting USB...
    Bus usb@31000000: generic_phy_get_bulk : no phys property
    Register 1000840 NbrPorts 1
    Starting the controller
    USB XHCI 1.10
    scanning bus usb@31000000 for devices... 2 USB Device(s) found
           scanning usb for storage devices... 1 Storage Device(s) found
    
    Device 0: Vendor: UFD_3.0  Rev:      Prod: Silicon-Power
                Type: Removable Hard Disk
                Capacity: 29660.0 MB = 28.9 GB (60743680 x 512)
    ... is now current device
    Scanning usb 0:1...
    Scanning usb 0:1...
    Working FDT set to 88000000
    MMC: no card present
    No EFI system partition
    No EFI system partition
    Failed to persist EFI variables
    "Synchronous Abort" handler, esr 0x96000044
    elr: 000000008085909c lr : 0000000080859038 (reloc)
    elr: 00000000fff5f09c lr : 00000000fff5f038
    x0 : 00000000fdf09cf0 x1 : ffffffffff700000
    x2 : fffffffffffca000 x3 : 0000000000000000
    x4 : 0000000000000000 x5 : 0000000000000000
    x6 : 00000000fdf09cf0 x7 : 0000000000000000
    x8 : 00000000fded7820 x9 : 0000000000000008
    x10: 00000000000024bc x11: 00000000fded50ac
    x12: 0000000000002488 x13: 0000000000000000
    x14: 00000000fded7820 x15: 0000000000000002
    x16: 00000000fff5f0cc x17: 0000000000000000
    x18: 00000000fdee6d80 x19: 0000000000000000
    x20: 00000000fdeea650 x21: 00000000fded53a0
    x22: 00000000fffb5491 x23: 0000000000000003
    x24: 00000000fffe4574 x25: 0000000000000000
    x26: 0000000000000000 x27: 0000000000000000
    x28: 00000000fdf0a710 x29: 00000000fded5340
    
    Code: f9401001 8b020022 eb02003f 54fffec2 (b8004433)
    


    此致、Vikash

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

    刘斌、您好!

    您能否就 bootcmdbootargs启用从 USB 引导所需的任何特定更改提供建议? 请告诉我需要修改的确切参数。

    此致、Vikash

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

    尊敬的 Vikash:

    随处加载环境... 好的
    输入:   串行
    输出:  串行
    错误:  串行
    net:  eth0:以太网@8000000port@1
    按任意键以停止自动引导: 0

    uboot 显示上述消息时、请按任意键进入 U-Boot 提示符并运行以下命令从 USB 引导内核。

    =>运行 usbboot

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

    刘斌、您好!

    [报价 userid="7730" url="~/support/processors-group/processors/f/processors-forum/1434795/am623-usb-host-boot-mode-msc-unsupported-on-evm-board/5508486 #5508486"]运行 usbboot

    我收到以下 消息: ##错误:"usbboot"未定义。
    此致、Vikash

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

    刘斌、您好!

    附加屏幕截图以供参考

    [报价 userid="7730" url="~/support/processors-group/processors/f/processors-forum/1434795/am623-usb-host-boot-mode-msc-unsupported-on-evm-board/5508486 #5508486"]运行 usbboot


    此致、Vikash

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

    我会在我的 EVM 上尝试它、然后给您回看。

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

    尊敬的 Vikash:

    您是否可以在 U-Boot 提示符中执行"run usbboot"而不是"run usbboot"?

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

    您好!

    请不要使用"Run usbboot"、而是在 U-Boot 提示符下使用"Run usbboot"?

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

    尊敬的 Vikash:

    我可以使用 SDK9.2在 EVM 上重现此问题。 似乎 U-Boot ENV 未正确设置用于 USB MSC 引导。

    请不运行"run usb_boot"命令、而是运行以下 U-Boot 命令序列以从 MSC 引导内核。

    => setenv bootargs console=${console}root=/dev/sda2 rw rootfsttype=ext4 rootwait
    => setenv devtype usb;setenv bootpart 0:2;setenv bootfile image
    => USB reset;运行 findfdt;运行 loadfdt;运行 loadimage
    => booti ${loadaddr}-${fdtaddr}

    请注意、您需要修改内核配置以将所有 USB 相关选项设置为"=y"、以便在挂载 rootfs 之前枚举 USB MSC 器件。