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.

[参考译文] AM625:SD — 状态更新超时

Guru**** 2893300 points

Other Parts Discussed in Thread: AM625

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1643071/am625-sd---timeout-for-status-update

器件型号: AM625

早上好、

我遇到了这个问题。 我升级到 uboot 2025.04、而我在 uboot 2023.04 中的配置无法正常工作、它无法识别 DTS 上的 SD 节点。

vdd_mmc1:稳压器-SD{
兼容=“稳压器固定“;
regulator-name =“vdd_mmc1“;
稳压器 — 最小-微伏=<3300000>;
稳压器最大微伏=<3300000>;
常开稳压器;
稳压器启动;
};


main_mmc1_pins_default:main-mmc1-pins-default{
pinctrl-single、pins =<
AM62X_IOPAD (0x23c、PIN_INPUT、0)/*(A21) MMC1_CMD */
AM62X_IOPAD (0x234、PIN_OUTPUT、0)/*(B22) MMC1_CLK */
AM62X_IOPAD (0x230、PIN_INPUT、0)/*(A22) MMC1_DAT0 */
AM62X_IOPAD (0x22c、PIN_INPUT、0)/*(B21) MMC1_DAT1 */
AM62X_IOPAD (0x228、PIN_INPUT、0)/*(C21) MMC1_DAT2 */
AM62X_IOPAD (0x224、PIN_INPUT、0)/*(D22) MMC1_DAT3 */
AM62X_IOPAD (0x240、PIN_INPUT、0)/*(D17) MMC1_SDCD */
>;
};


&sdhci1{
/* SD/MMC */
状态=“正常“;
VMMC-SUPPLY =<&VDD_mmc1>;
// vqmmc-supply =<&VDD_SD_dv>;
/delete-property/ ti、otap-del-sel-sldr12;
/delete-property/ ti、otap-del-sel-sldr25;
/delete-property/ ti、otap-del-sel-sldr50;
/delete-property/ ti、otap-del-sel-ddr50;
/delete-property/ ti、OTAP-del-sel-sdr104;
pinctrl-names =“SD-MMC1“;
pinctrl-0 =<&main_mmc1_pins_default>;
TI,驱动器强度 — 欧姆=<50>;
总线宽度=<4>;
断裂 CD;
disable-WP;
NO-1-8-v;
bootph-pre-ram;
};




image.png

为该模块提供恒定的 3.3V 电压;我不切换到 1.8V。  

可能会出现什么问题?

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

    您好:

    您能否在 uboot 2025.04 中的默认 DTS 之上应用以下线程中的补丁、然后查看是否能够识别 SD 卡?

    e2e.ti.com/.../sk-am62p-lp-how-to-set-sd-card-to-3-3v-only-low-speed

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

    您好、Prashant、

    我应用了您建议的修补程序、结果就是您在日志中看到的。 还有其他选择吗?

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

    您能分享 A53 U-Boot 映像吗?

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

    “A53 uboot image“是什么意思? 为此:

     e2e.ti.com/.../1651.u_2D00_boot.zip

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

    在 SD 节点中、我看到从共享 U-Boot 映像中提取的 DTS 与从 SDK v11.02 中提取的 U-Boot 映像中提取的 DTS 之间存在一些差异。

    我希望您使用移植到的任何 SDK 版本中的 DTS 文件、并在上面应用更改。 您不应使用 DTS 文件、因为它从上一个 SDK 版本到您移植到的 SDK 版本。

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

    进行更改的原因如下:1) 我使用的是 3.3V 单电源、因此不会切换到 1.8V。 2) 标识它的名称。 3) SDR 和 DDR 是你在前一个答案中建议的。 4) 控制引脚相同;昨天我在此 SDK 版本中将 CLK 引脚更改为引脚配置中的输入。

    在 uboot 之前和 tiboot 之后出现错误。 所以我猜这是一个 SPL 问题,你认为什么?或 .env 文件?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 uboot 之前和 tiboot 之后出现错误。 所以我猜这是一个 SPL 问题、您认为什么?或者 .env 文件?

    错误出在 A53 U-Boot 正常位置、它公开了包括 MMC 在内的不同命令的 CLI 接口。

    所做的更改是由于以下原因:1) 我有一个 3.3V 电源、因此它不会切换到 1.8V。

    除了按照其他线程中的建议删除 OTAP 值之外、您不需要进行任何其他更改。 还有其他区别、例如 DTS 中的“bootph-pre-ram“和默认 DTS 中的“bootph-all“。

    我希望尽量减少 DTS 中的差异、以便我们继续前进。

    是否按从上一 U-Boot 版本到新 U-Boot 版本的顺序使用 DTS。 如果是、这可能会导致问题。 您应该使用默认 DTS 并将更改从上一个基准移植到新基准。

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

    我做了你告诉我的,但情况仍然是一样的:



    &sdhci1
    /* SD/MMC */
    状态 =“正常“
    VMMC-SUPPLY =<&VDD_mmc1>
    /delete-property/ ti、otap-del-sel-sldr12;
    /delete-property/ ti、otap-del-sel-sldr25;
    /delete-property/ ti、otap-del-sel-sldr50;
    /delete-property/ ti、otap-del-sel-ddr50;
    /delete-property/ ti、OTAP-del-sel-sdr104;
    pinctrl-names =“default“
    pinctrl-0 =<&main_mmc1_pins_default>
    总线宽度=<4>
    断裂 CD;
    disable-WP;
    NO-1-8-v;
    全部引导;
    };
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我做了你告诉我的事、但情况还是一样:

    在这种情况下、您能否分享您正在电路板上引导的最新 A53 U-Boot 映像?

    另外、请 应用补丁并共享日志

    diff --git a/configs/am62x_evm_a53_defconfig b/configs/am62x_evm_a53_defconfig
    index 70d6e04b108..923b124b531 100644
    --- a/configs/am62x_evm_a53_defconfig
    +++ b/configs/am62x_evm_a53_defconfig
    @@ -161,6 +161,9 @@ CONFIG_FS_FAT_MAX_CLUSTSIZE=16384
     CONFIG_EFI_SET_TIME=y
     CONFIG_SPL_GZIP=y
     
    +CONFIG_MMC_TRACE=y
    +
     #include <configs/k3_efi_capsule.config>
     #include <configs/am62x_a53_usbdfu.config>
     #include <configs/am62x_a53_splashscreen.config>
    +
    

    我假设您使用之前的 U-Boot 版本有一个有效的基线。 您能否在此工作基准上应用此修补程序并共享日志?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在这种情况下、您能否分享您正在电路板上引导的最新 A53 U-Boot 映像?

    e2e.ti.com/.../u_2D00_boot-_2800_1_2900_.zip

    此外、请 应用补丁并共享日志

    U-Boot SPL 2025.01-00847-gf8cc38c944e (2026年5月08日 — 12:15:45 +0000)
    SYSFW ABI:4.0(固件版本 0x000b '11.2.5--v11.02.05(花哨 Rat)')
    为'/A53@0'设置时钟速率、CPU:1000MHz 为速度等级's'
    SPL 初始栈使用量:13424 字节
    它会尝试从 DFU 进行引导
    ######################################################################### 下载...确定
    按 Ctrl+C 退出...
    ######################################################################### 下载...确定
    按 Ctrl+C 退出...
    身份验证已通过
    身份验证已通过
    身份验证已通过
    从无处加载环境... 好的
    不支持器件 10 的 init_env!
    身份验证已通过
    身份验证已通过
    在 ARM64 内核上启动 ATF……

    注意: BL31:v2.13.0(发行版):v2.13.0-259-ge0c4d3903b-dirty
    注意:BL31: 建造时间:07:01:36, Jul 1 2025

    U-Boot SPL 2025.01-00847-gf8cc38c944e (2026年5月08日 — 12:15:45 +0000)
    SYSFW ABI:4.0(固件版本 0x000b '11.2.5--v11.02.05(花哨 Rat)')
    SPL 初始栈使用量:1936 字节
    MMC:不存在卡
    **坏的设备规格 MMC 1 **
    找不到分区 MMC 1:1
    错误:无法访问存储。
    它会尝试从 DFU 进行引导
    身份验证已通过
    身份验证已通过


    U-Boot 2025.01-00847-gf8cc38c94444e (2026年5月08日 — 12:15:45 +0000)

    SoC:  AM62X SR1.0 HS-SOC FS
    型号:Texas Instruments AM625 CMI - UBoot
    DRAM: 448 MIB(共 512 MIB)
    内核: 67 个器件、29 个类、器件树:单独
      MMC:MMC@fa00000:1.
    从无处加载环境... 好的
    IN:   串行
    输出:  串行
    错误:  序列
    网络:  am65_cpsw_Nuss_port 以太网@8000000port@1:PHY 模式无效、端口 1
    am65_cpsw_Nuss_port 以太网@8000000port@2:PHY 模式无效、端口 2
    未找到以太网。


    按任意键停止自动引导: 0  
    =>

    我假设您使用以前的 U-Boot 版本具有工作基准。 您能否在此工作基准上应用此修补程序并共享日志?

    不、我将从头开始构建、并分阶段迁移驱动程序。 现在、我尝试让它识别 SD 卡并从它进行引导。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我已升级到 uboot 2025.04、并且我在 uboot 2023.04 中的配置无法正常工作

    我理解这一点、因为您已经具备 U-Boot 2023.04 的工作基准、然后迁移到 U-Boot 2025.04、在那里您会看到 SD 卡存在问题。 不是这样吗?

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

    当然,在以前的版本 2023.04 中,一切都正常工作,没有问题,初始启动和从 SD 引导。

    迁移到新版本并根据 2025.04 进行更改后、将无法从 SD 卡引导。 如果我从 USB DFU 引导、进入 uboot 提示符、SD 卡列为 DEV 1;我甚至可以从那里引导内核。 但它只是不起作用,这就是为什么我想知道该错误是否与 SPL 中的某些内容有关。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果我从 USB DFU 进行引导、我会到达 uboot 提示符、SD 卡列为 dev 1;我甚至可以从那里引导内核。

    这是否与 U-Boot v2025.04 相关? 如果是、第一个响应显示 A53 U-Boot 正常器件无法使用命令“MMC dev 1“识别 SD 卡。 到目前为止、所有日志都显示您正在通过 DFU 引导 U-Boot。

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

    从 USB-DFU 引导:

    U-Boot SPL 2025.01-00847-gf8cc38c944e (2026年5月08日 — 12:15:45 +0000)
    SYSFW ABI:4.0(固件版本 0x000b '11.2.5--v11.02.05(花哨 Rat)')
    为'/A53@0'设置时钟速率、CPU:1000MHz 为速度等级's'
    SPL 初始栈使用量:13424 字节
    它会尝试从 DFU 进行引导
    ######################################################################### 下载...确定
    按 Ctrl+C 退出...
    ######################################################################### 下载...确定
    按 Ctrl+C 退出...
    身份验证已通过
    身份验证已通过
    身份验证已通过
    从无处加载环境... 好的
    不支持器件 10 的 init_env!
    身份验证已通过
    身份验证已通过
    在 ARM64 内核上启动 ATF……

    注意: BL31:v2.13.0(发行版):v2.13.0-259-ge0c4d3903b-dirty
    注意:BL31: 建造时间:07:01:36, Jul 1 2025

    U-Boot SPL 2025.01-00847-gf8cc38c944e (2026年5月08日 — 12:15:45 +0000)
    SYSFW ABI:4.0(固件版本 0x000b '11.2.5--v11.02.05(花哨 Rat)')
    SPL 初始栈使用量:1936 字节
    MMC:不存在卡
    **坏的设备规格 MMC 1 **
    找不到分区 MMC 1:1
    错误:无法访问存储。
    它会尝试从 DFU 进行引导
    身份验证已通过
    身份验证已通过


    U-Boot 2025.01-00847-gf8cc38c94444e (2026年5月08日 — 12:15:45 +0000)

    SoC:  AM62X SR1.0 HS-SOC FS
    型号:Texas Instruments AM625 CMI - UBoot
    DRAM: 448 MIB(共 512 MIB)
    内核: 67 个器件、29 个类、器件树:单独
      MMC:MMC@fa00000:1.
    从无处加载环境... 好的
    IN:   串行
    输出:  串行
    错误:  序列
    网络:  am65_cpsw_Nuss_port 以太网@8000000port@1:PHY 模式无效、端口 1
    am65_cpsw_Nuss_port 以太网@8000000port@2:PHY 模式无效、端口 2
    未找到以太网。


    按任意键停止自动引导: 0  
    =>


    从 SD 引导 (MMC1):

    U-Boot SPL 2025.01-00847-gf8cc38c944e (2026年5月08日 — 12:15:45 +0000)
    SYSFW ABI:4.0(固件版本 0x000b '11.2.5--v11.02.05(花哨 Rat)')
    为'/A53@0'设置时钟速率、CPU:1000MHz 为速度等级's'
    SPL 初始栈使用量:13424 字节
    SPL:无法从所有引导设备引导
    ###错误###请重置主板###


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

    您没有在这些 DFU 引导日志中运行任何“MMC dev 1“命令。 在您的第一个响应中、随附的响应显示您正在通过 USB DFU 引导 U-Boot、并在会出现问题的 A53 U-Boot 中运行 MMC 命令。

    从 SD 引导 (MMC1):

    我认为这可能不是由 SD 卡导致的、因为 R5 SPL 日志至少会在尝试初始化 SD 卡并从中读取映像之前“尝试从 MMC2 引导“。

    您能否应用以下补丁并共享 SD 卡的引导日志

    diff --git a/arch/arm/mach-k3/am62x/boot.c b/arch/arm/mach-k3/am62x/boot.c
    index df5af9c0bce..50a4437bb4a 100644
    --- a/arch/arm/mach-k3/am62x/boot.c
    +++ b/arch/arm/mach-k3/am62x/boot.c
    @@ -3,6 +3,8 @@
     #include <asm/arch/hardware.h>
     #include <asm/arch/am62_spl.h>
     
    +#define debug printf
    +
     static u32 __get_backup_bootmedia(u32 devstat)
     {
     	u32 bkup_bootmode = (devstat & MAIN_DEVSTAT_BACKUP_BOOTMODE_MASK) >>
    diff --git a/configs/am62x_evm_r5_defconfig b/configs/am62x_evm_r5_defconfig
    index 3fab3598cc3..5fc8cbba11a 100644
    --- a/configs/am62x_evm_r5_defconfig
    +++ b/configs/am62x_evm_r5_defconfig
    @@ -127,3 +127,6 @@ CONFIG_SPL_TIMER=y
     CONFIG_OMAP_TIMER=y
     CONFIG_LIB_RATIONAL=y
     CONFIG_SPL_LIB_RATIONAL=y
    +
    +CONFIG_MMC_TRACE=y
    +
    

    如果您要迁移到更新的 U-Boot 版本、我建议将所用 SDK 版本的默认 TI U-Boot 版本的更改保持在最低版本。 基本上、您可以查看所用 Processor SDK 版本中使用的 U-Boot 标签、并进行最少的更改、例如集成 DDR 配置并在需要时更改存储器映射。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我建议将所用 SDK 版本的默认 TI U-Boot 版本的更改保持在最低版本。

    U-Boot v2025 最后用于 PSDK v11.02。 假设您使用此 SDK 版本、则应查看此 SDK 版本的 U-Boot 标签(这是经过测试的版本)、然后应用您的更改。

    software-dl.ti.com/.../Release_Specific_Release_Notes.html

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

    我不明白。我已经在同一个链接中检查了构造问题。SDK 版本是 11.02。您建议怎么做?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    U-Boot 2025.01-00847-gf8cc38c94444e (2026年5月08日 — 12:15:45 +0000)
    [/报价]

    这不是在 SDK v11.2 中用于 U-Boot 的提交 ID (f8cc38c944e)。 我建议 从 SDK v11.02 中查看使用 U-Boot 版本(提交:7493977a537、标签:11.02.08)、并进行最少的更改、例如更新 DDR 配置、并尝试从 SD 卡引导进行引导。 如果出现任何问题、调试会更容易。 如果 SD 卡引导正常、您可以将补丁从以前的 U-Boot 版本移植到新的 U-Boot 版本。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    U-Boot SPL 2025.01-00847-gf8cc38c944e (2026年5月08日 — 12:15:45 +0000)

    此映像是否使用其他 DFU 片段构建? 如果是、请注意、必须为 DFU 和其他引导介质(如 SD 卡)单独构建 U-Boot 二进制文件。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此映像是否使用其他 DFU 片段构建? 如果是、请注意、必须为 DFU 和其他引导介质(如 SD 卡)单独构建 U-Boot 二进制文件。

    问题是我在 R5 上启用了通过 DFU 进行引导的设置。 我移除它后、它启动时没有任何问题、因为电压设置为 3.3V、所以该路径也起作用。  我认为、如果 进入 DFU 模式时不包含#include、则会忽略它。



    &sdhci1
    /* SD/MMC */
    VMMC-SUPPLY =<&VDD_mmc1>
    // vqmmc-supply =<&VDD_SD_dv>;
    /delete-property/ ti、otap-del-sel-sldr12;
    /delete-property/ ti、otap-del-sel-sldr25;
    /delete-property/ ti、otap-del-sel-sldr50;
    /delete-property/ ti、otap-del-sel-ddr50;
    /delete-property/ ti、OTAP-del-sel-sdr104;
    pinctrl-names =“default“
    pinctrl-0 =<&main_mmc1_pins_default>
    TI,驱动器强度 — 欧姆=<50>
    总线宽度=<4>
    断裂 CD;
    disable-WP;
    NO-1-8-v;
    状态 =“正常“
    };