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:在 SK-AM62上下载 DFU 大文件失败

Guru**** 2553450 points
Other Parts Discussed in Thread: SK-AM62

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1220709/am623-dfu-download-large-file-failed-on-sk-am62

器件型号:AM623
主题中讨论的其他器件:SK-AM62

您好、专家:

我访问了此页面(https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1127618/faq-sk-am62-how-to-flash-emmc-using-usb-dfu-on-am62x-sk-e2)并尝试将 rootfs.ext4 (文件大小:2G)下载到 SK-AM62。 但始终失败了。 DFU 消息如下所示。 我的 SDK 版本是08.06。  您能了解一下 发生了什么情况吗? 谢谢。

dfu-util 0.11

版权所有2005-2009年 Weston Schmidt、Harald Welte 和 OpenMoko Inc.
版权所有2010-2021 Tormod Volden 和 Stefan Schmidt
该程序是自由软件,没有任何担保
请将错误报告给 sourceforge.net/.../

dfu-util:警告:DFU 后缀签名无效
dfu-util:未来的 dfu-util 版本中将需要有效的 dfu 后缀
正在打开支持 DFU 的 USB 设备...
设备 ID 0451:6165
器件 DFU 版本0110
正在申请 USB DFU 接口...
正在设置备用接口#1……
正在确定设备状态...
DFU 状态(2)= dfuIDLE、STATUS (0)=不存在错误条件
DFU 模式器件 DFU 版本0110
设备返回的传输大小4096
将数据从 PC 复制到 DFU 器件
下载[=] 8% 173219840字节失败!
DFU 状态(10)= dfuERROR、STATUS (14)=出现问题、但器件不知道是什么

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

    添加了注释:我的 SK-AM62硬件版本是 E3。

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

    我可以成功下载约1.5G 的文件大小。 但仍然不知道它失败,当我尝试下载2G 文件。

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

    你好,尼尔

    重要的主题是上周发布的-我们将查看此帖子并在接下来的几天内与您联系

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

    您好 Neil:
    我似乎无法重现您的误差。 如果您不介意、我使用的是 DFU util 版本0.9版本、它可以正常运行。您可以尝试使用0.9来查看是否获得相同的错误吗?

    此致、

    朱迪斯

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

     Judith、您好!

    感谢您的信息。

    我以前使用过 dfu-util 0.9。 但当我尝试下载我的 rootfs.ext4时,系统弹出了这样的消息: dfu-util: file size is too big: succe. 因此、我更改为 dfu-util 0.11。

    测试1:我正在使用 dfu-util 源代码构建 dfu-util v0.9,并修复了"Dfu-util:file size is too big: success."。 但仍然失败了。

    测试2:测试1后,我尝试将不同大小的 rootfs.ext4下载到 eMMC,1800M 1900m 2000M 2048M 2100M 通过了。  

    考虑到上述情况、这种情况可能与原始 rootfs.ext4文件相关。 请帮助我关闭此问题。  

    此致、

    尼尔

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

    您好 Neil:

    我看到您使用的 rootfs 比我要大。 我将尝试使用更大的 rootfs 来尝试复制错误。

    另外、您能解释一下什么吗? 您首先提到2G rootfs 没有引导。 然后,您提到最多有2.1G rootfs 启动,但您自己的 rootfs 没有启动。 因此、问题在于"Your rootfs"?

    还可以提供有关如何构建 rootfs 的详细信息。

    此致、

    朱迪斯

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

     Judith、您好!

    抱歉、我 先单击"此已解决我的问题"按钮。 我想单击"回复"按钮...

    第一个2G rootfs 无法完成下载过程。 但我可以使用我昨天制作的其他 rootfs 完成下载过程。 因此、我认为此问题可能是由第一个 rootfs 导致的。

    我通过以下步骤创建了第一个 rootfs。

    1. sudo su su
    2. DD if=/dev/zero of=rootfs.ext4 bs=1M count=2048
    3. mkfs.ext4 rootfs.ext4
    4.安装-o loop rootfs.ext4 temp/
    5.将 tisdk-default-image rootfs 文件复制到临时文件夹
    6.卸载温度

    此致、

    尼尔

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

    您好 Neil:

    这是不一致的行为。 所以我们无法证明这是一个尺寸问题、因为您提到可以下载2.1G fs。

    下面我们来运行几个测试。 您是否可以尝试使用 SD 卡引导来刷写 eMMC 器件?

    我最后会尝试使用大型文件系统来刷写 eMMC、从而尝试复制错误。

    此致、

    朱迪斯

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

     Judith、您好!

    我们并不研究使用 SD 卡引导来刷写 eMMC 器件。 我们将计划这样做。

    不幸的是、我们再次遇到了这个问题。 我不明白发生了什么。  我使用了相同的2G rootfs.ext4文件来替换内容文件。 有时它成功,大多数时候它失败。

    此致、

    尼尔

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

    您好 Neil:

    驱动器似乎可能存在一些不稳定性。 在接下来的几天里、我会深入了解驾驶员。 谢谢你。

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

     Judith、您好!

    谢谢、我期待您的回复。  

      现在、我们将通过 SD 卡引导刷写 eMMC 器件。

    此致、

    尼尔

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

    Judith、您好!

    更新我们的状态。

    我们尝试了使用 SD 卡引导和闪存 eMMC。 我们发现、有时将文件复制到分区失败。 我们在 e2e 上探讨过、 在 e2e.ti.com/.../4573854上发现了同样的问题。 您的专家建议为 eMMC 禁用 HS 200模式来解决此问题。 我在 u-boot 中执行了相同的操作。 到目前为止、我们的 DFU 下载过程是稳定的。 您是否认为这也是 eMMC 稳定问题?

    此致、

    尼尔

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

    您好!

    如果您能够共享发生故障的 rootfs?

    此致、

    朱迪斯

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

     Judith、您好!

    抱歉、我无法将 rootfs 分享给您。

    此致、

    尼尔

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

    您好 Neil:

    很抱歉这么晚才回复、点击"解决"后、我很难找到该主题。

    没关系。 MMC 驱动程序存在一些不稳定问题。 我看到您已经尝试从 HS200模式改用其他模式。

    您能否验证 HS200模式是否是问题所在? 如果您无法更改、请将此补丁应用于切换模式:

    From b59867885d6b75a5ac29b767df424bd40cc0f731 Mon Sep 17 00:00:00 2001
    From: Judith Mendez <jm@ti.com>
    Date: Wed, 24 May 2023 11:20:21 -0500
    Subject: [PATCH] Remove HS200 mode for eMMC.
    
    Signed-off-by: Judith Mendez <jm@ti.com>
    ---
     arch/arm/dts/k3-am62-main.dtsi | 4 ++--
     1 file changed, 2 insertions(+), 2 deletions(-)
    
    diff --git a/arch/arm/dts/k3-am62-main.dtsi b/arch/arm/dts/k3-am62-main.dtsi
    index f3296f2671b..78ca7c34066 100644
    --- a/arch/arm/dts/k3-am62-main.dtsi
    +++ b/arch/arm/dts/k3-am62-main.dtsi
    @@ -349,10 +349,10 @@
                    ti,clkbuf-sel = <0x7>;
                    ti,otap-del-sel-legacy = <0x0>;
                    ti,otap-del-sel-mmc-hs = <0x0>;
    -               ti,otap-del-sel-ddr52 = <0x5>;
    -               ti,otap-del-sel-hs200 = <0x5>;
                    ti,itap-del-sel-legacy = <0xa>;
                    ti,itap-del-sel-mmc-hs = <0x1>;
    +               /delete-property/mmc-ddr-1_8v;
    +               /delete-property/mmc-hs200-1_8v;
            };
     
            sdhci1: mmc@fa00000 {
    -- 
    2.17.1


    在 U-boot 中进行以下验证:

    $ MMC 开发0
    $ MMC 信息

    此致、
    朱迪斯

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

    Judith、您好!

    我 在 uboot 中的 CONFIGS/am62x_EVM_A53_defconfig 中将 CONFIG_MMC_HS200_SUPPORT 的设置从 y 更改为 n。 我以前做过一些测试、没有出现任何错误。 我认为这个问题源于 eMMC 在运行 HS200模式时并非不稳定。

    此致、

    尼尔

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

    您好 Neil:

    我们尝试了使用 SD 卡引导和闪存 eMMC。 我们发现、有时将文件复制到分区失败。 我们在 e2e 上探讨过、 在 e2e.ti.com/.../4573854上发现了同样的问题。 您的专家建议为 eMMC 禁用 HS 200模式来解决此问题。 我在 u-boot 中执行了相同的操作。 到目前为止、我们的 DFU 下载过程是稳定的。 您是否认为这也是 eMMC 稳定问题?

    ---这里你提到,删除 HS200模式的工作是你闪存到 eMMC,在 Linux。

    AM62x 上的 eMMC 存在问题、存在正在进行的调试会话、但临时权变措施是删除 HS200模式。 我上面发送的补丁也允许您在没有 HS200模式的情况下引导引导加载程序。

    将引导加载程序引导至低于 HS200只是一项建议、目前、您能否验证删除适用于 Linux 的 HS200是否符合您的要求?

    此致、

    朱迪斯

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

    Judith、您好!

    是的、删除了 HS200无法解决我的问题。 但我没有使用您的贴片。 我  在 u-boot 的 configs/am62x_EVM_A53_defconfig 中禁用 t CONFIG_MMC_HS200_SUPPORT。

    => MMC 开发0
    切换到分区#0,确定
    mmc0 (第0部分)是当前器件
    => MMC 信息
    设备: MMC@fa10000
    制造商 ID:13
    OEM:14E
    姓名:S0J56
    公共汽车速度:52000000
    模式:MMC DDR52 (52MHz)
    RD 块长度:512
    MMC 版本5.1
    高容量:是
    容量:14.8 GiB
    总线宽度:8位 DDR
    擦除组大小:512 KiB
    HC WP 组大小:8 MIB
    用户容量: 14.8 GiB WRREL
    引导容量:31.5MiB 增强版
    RPMB 容量:4 MIB 增强版
    引导区域0不受写保护
    引导区域1不受写保护

    最棒的酒店

    尼尔

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

    您好!

    感谢您的验证、我们在 AM62x 上遇到了 MMC 稳定性问题。 目前这是一个正在进行的调试。

    ~朱迪斯