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.

[参考译文] AM62L:某些电路板中出现 eMMC 引导故障

Guru**** 2872500 points

Other Parts Discussed in Thread: AM62L, TMDS62LEVM

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1603454/am62l-emmc-boot-failure-in-some-boards

器件型号: AM62L
主题中讨论的其他器件: CSDTMDS62LEVM

您好团队、  

在检查 eMMC 引导时、我们发现 某些电路板出现问题  
我附上了日志,我可能知道失败背后的原因.

Bootissue.log 

此致、

Ninad

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

    你好 Ninad、

    感谢您的查询!

    请留出一些时间来浏览日志、并检查 eMMC 硬件问题的任何提示。

    我将在几个小时内尝试跟进此事。

    感谢您的耐心!

    此致、

    Anastas Yordanov

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

    您好、Anastas、


    对此有任何更新?

    FYI:我们不会在每次启动中得到问题,有时板完全启动,而有时这个问题来了,
    我们还尝试了多次读取和写入 eMMC、但仍然没有问题、eMMC 引导中仍然存在不一致  

    此致、  
    Ninad

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

    你好 Ninad J S,

    我对答复的延误深表歉意。

    据我了解、eMMC 引导故障发生在一些 PCB 上、仅在某些情况下、AM62L ROM 加载程序从 MMCSD0 eMMC 引导。 因此、它可能源于 eMMC 硬件电气接口以及 PCB 布局实现。 根本原因也可能源于 eMMC 分区布局、SDK 等

    问题 1: 对于启动失败的 PCB、您是否确定这些 PCB 上安装的 eMMC 硬件接口的所有电气元件都遵循 TI 推荐的 eMMC 原理图 BOM 和检查清单?

    问题 2: 您能否在 AM62L 和 eMMC 闪存之间发送 eMMC 硬件接口示意图? 如果您无法在此处提供、请通过私人消息或电子邮件发送。

    问题 3 您能否在(成功和失败)引导期间提供一些 eMMC_DAT0、eMMC_CLK、eMMC_CMD 示波器。

    问题 4 什么是确切的引导模式[15:0]设置 — 需要知道所使用的 eMMC 引导模式的确切类型?

    此外、如果发现有关软件问题(eMMC 存储器布局问题,格式化,分区等)的任何提示、我还会让我们的 Linux eMMC 驱动程序专家对日志进行评论。

    我期待您的反馈!

    谢谢

    此致

    Anastas Yordanov

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

    感谢您的答复我将回到所有这一切的快速  
    然后、您才能澄清我们是否可以编写这个文件  
    “mmc extcsd“注册?

    我们可以这样做吗?

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

    你好 Ninad、

    EXT_CSD(卡专用数据寄存器)在 eMMC 存储器端可用。 通常、您应该能够写入 EXT_CSD 可写的  eMMC 硬件接口上的位字段。 请查看 eMMC 闪存的文档中有关相关位字段属性的信息、即它们是可写的、 详细信息等  

    以下是 EXT_CSD 相关示例线程摘录 、其中显示了 eMMC 闪存。EXT_CSD 寄存器位可写:

    这里也是以下 eMMC 相关常见问题解答的 EXT_CSD 相关摘录:常见问题解答 — eMMC 存储器接口 :

    谢谢

    此致

    Anastas Yordanov

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

    是否必须为 eMMC 引导写入“mmc extcsd“?

    U 能否判断 这是 EVM 板值?


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

    这来自 eMMC 卡。 由于您能够从 eMMC 引导、因此无需手动向 EXTCSD 写入任何内容。 您报告的问题与 EXTCSD 寄存器无关。

    EXTCSD 寄存器中包含所有内容、此时用于从 eMMC 引导。

    关于这个问题、我认为它与以下主题中报告的相同

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1602042/am62l-am62l-sr1-1-emmc-boot-instability-inconsistent-boot-behavior

    正如另一个线程和这里所指出的、问题也可能是由硬件引起的。 请检查 TI 的原理图。

    谢谢!

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

    您好 Prashant、

     感谢您及时确认并提示、这可能与 eMMC 硬件电气连接实施密切相关。

     Ninad、

    请提供所请求的硬件数据吗?

    我还有几个问题:

    [Q5]如果 eMMC 存储器数据表在公共域中不可用、请提供该数据表。 如果收到保密协议 (NDA)、请使用 E2E 私人消息或我的电子邮件、您无法在此处提供。  

    问题 6. 在非 ROM 阶段引导时尝试使用的最大 eMMC 速度(最大速度模式)是多少?  

    我在 AM62Lx 器件勘误表 SR1.0 - SR1.1 中看到了一些有关 AM62L eMMC 引导模式可能问题的提示。 但我将会在 Q1-Q4 详细信息中确认您是否提供了所需的。

    Q7 — 您是否检查过隔离式 PCB 样片的 eMMC 信号布线上是否没有不良的焊接连接。

    如果您可以根据我的 Q3 提供示波图 — 能否在信号目标点探测信号(如果布局设计允许)-即在 eMMC 存储器侧探测 eMMC_CLK、在 AM62L 侧探测 eMMC_DS 等  

    谢谢!

    此致

    Anastas Yordanov

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

    您好、Anastas、  

    我已经通过 PM 向您发送了文档  

    Q4-15:12 低引脚数引导模式被使用
    Q6 –200MHz - HS200 模式
    Q7-再次验证是  

    此致、  

    Ninad



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

    你好 Ninad、

    感谢您提供的数据。

    1.我认为安装了正确的上拉和下拉电阻器 (我认为您可以保持外部 10k 拉电阻器、无需将数据和命令 I/O 上的上拉电阻器替换为 47k)。 另一个问题来了:您是否有任何串联终端电阻器的占位符、它们尽可能靠近 eMMC 信号源引脚(信号驱动器)。 一个好的方法是使用 0r 个串联电阻值开始测试、并使用示波器探测 eMMC_CLK、eMMC_DAT0-eMMC_DAT7、eMMC_CMD 线路以评估信号完整性。 如果存在过冲/下冲、您可以逐渐将串联电阻增加至 10R、22R、33R、直到信号形状得到改善并保持上升和下降时间仍然可接受。

    由于这似乎是一种更复杂的情况(间歇性发生引导故障): 如果可能、我更倾向于根据我的 Q3 设置示波图、因为可以从测量的信号参数中最好地推断出信号完整性图。 我无法排除其他高速信号源可能存在的噪声干扰。

    2.我了解在您的电路板上、AM62L ROM 应在 eMMC 交替引导模式((BOOTMODE[15:12]=4b'1000 或 4b'1011、处于 5MHz 的 eMMC_CLK 频率处)引导(请参阅 AM62L 器件勘误表中的 i2465 公告)。 我怀疑在执行 ROM eMMC 引导期间、5MHz 频率可能会发生引导故障。

    3.是否可以确认提供的引导日志实际上反映了引导失败?

    如果 eMMC 引导成功、您能否提供日志?  

    4.对于 eMMC HS200 速度模式,应考虑一些 PCB 原理图和布局规则。 请参阅以下 E2E 主题:

    HS200 模式 eMMC 时钟原理图/布局注意事项

    Prashant,

    请确认我的理解、即使在 AM62L ROM 引导阶段也存在问题、并观察到挂起、因为我能够在日志中看到多个重复的文本片段。 看起来 ROM 代码无法成功运行 U-Boot SPL 多次、并且复位是手动或自动触发 (WDT)。  在结束时、U-Boot SPL 加载并尝试执行 U-Boot.img、但失败。

    NOTICE:  bl1_plat_arch_setup arch setup 
    [2026-01-06 17:56:00] NOTICE:  Booting Trusted Firmware
    [2026-01-06 17:56:00] NOTICE:  BL1: v2.12.0(release):9f56914fa-dirty
    [2026-01-06 17:56:00] NOTICE:  BL1: Built : 13:13:15, Nov 27 2025
    [2026-01-06 17:56:00] NOTICE:  BL1: dram_class: 11
    [2026-01-06 17:56:00] NOTICE:  lpddr4: post start - PI training status=0x27c0a000 
    [2026-01-06 17:56:00] NOTICE:  bl1_platform_setup DDR init done
    [2026-01-06 17:56:00] NOTICE:  k3_bl1_handoff ENTERING WFI - end of bl1
    [2026-01-06 17:56:01] NOTICE:  BL31: v2.12.0(release):9f56914fa-dirty
    [2026-01-06 17:56:01] NOTICE:  BL31: Built : 13:13:15, Nov 27 2025
    [2026-01-06 17:56:01] NOTICE:  SYSFW ABI: 4.0 (firmware rev 0x000b '11.2.3-v11.02.03 (Fancy Rat)')
    [2026-01-06 17:56:01] ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported
    [2026-01-06 17:56:01] 
    [2026-01-06 17:56:01] U-Boot SPL 2025.01-g674977ce0b8d (Dec 17 2025 - 13:20:57 +0000)
    [2026-01-06 17:56:01] SPL initial stack usage: 1936 bytes
    [2026-01-06 17:56:01] Trying to boot from MMC0
    [2026-01-06 17:56:01] mmc_load_image_raw_sector: mmc block read error
    [2026-01-06 17:56:01] Partition 1 invalid on device 0
    [2026-01-06 17:56:01] spl_register_fat_device: fat register err - -1
    [2026-01-06 17:56:01] spl_load_image_fat: error reading image u-boot.img, err - -1
    [2026-01-06 17:56:01] SPL: failed to boot from all boot devices
    [2026-01-06 17:56:01] ### ERROR ### Please RESET the board ###
    [2026-01-06 17:56:03] NOTICE:  bl1_plat_arch_setup arch setup 
    [2026-01-06 17:56:03] NOTICE:  Booting Trusted Firmware
    [2026-01-06 17:56:03] NOTICE:  BL1: v2.12.0(release):9f56914fa-dirty
    [2026-01-06 17:56:03] NOTICE:  BL1: Built : 13:13:15, Nov 27 2025
    [2026-01-06 17:56:03] NOTICE:  BL1: dram_class: 11
    [2026-01-06 17:56:03] NOTICE:  lpddr4: post start - PI training status=0x27c0a000 
    [2026-01-06 17:56:03] NOTICE:  bl1_platform_setup DDR init done
    [2026-01-06 17:56:03] NOTICE:  k3_bl1_handoff ENTERING WFI - end of bl1
    [2026-01-06 17:56:04] NOTICE:  BL31: v2.12.0(release):9f56914fa-dirty
    [2026-01-06 17:56:04] NOTICE:  BL31: Built : 13:13:15, Nov 27 2025
    [2026-01-06 17:56:04] NOTICE:  SYSFW ABI: 4.0 (firmware rev 0x000b '11.2.3-v11.02.03 (Fancy Rat)')
    [2026-01-06 17:56:04] ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported
    [2026-01-06 17:56:04] 
    [2026-01-06 17:56:04] U-Boot SPL 2025.01-g674977ce0b8d (Dec 17 2025 - 13:20:57 +0000)
    [2026-01-06 17:56:04] SPL initial stack usage: 1936 bytes
    [2026-01-06 17:56:04] Trying to boot from MMC0
    [2026-01-06 17:56:04] mmc_load_image_raw_sector: mmc block read error
    [2026-01-06 17:56:04] Partition 1 invalid on device 0
    [2026-01-06 17:56:04] spl_register_fat_device: fat register err - -1
    [2026-01-06 17:56:04] spl_load_image_fat: error reading image u-boot.img, err - -1
    [2026-01-06 17:56:04] SPL: failed to boot from all boot devices
    [2026-01-06 17:56:04] ### ERROR ### Please RESET the board ###
     

     

    谢谢

    此致、

    Anastas Yordanov

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

    2.我了解在您的电路板上、AM62L ROM 应在 eMMC 交替引导模式((BOOTMODE[15:12]=4b'1000 或 4b'1011、处于 5MHz 的 eMMC_CLK 频率处)引导(请参阅 AM62L 器件勘误表中的 i2465 公告)。 我怀疑在执行 ROM eMMC 引导期间、5MHz 频率可能会发生引导故障。


    因此、我们应该做些什么改变或做些什么呢?

    谢谢你

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

    尊敬的 Anastas:

    您是否要确认我的理解、即使在 AM62L ROM 启动阶段也存在问题、并观察到挂起、因为我能够在日志中看到多个重复的文本片段。 看起来 ROM 代码无法成功运行 U-Boot SPL 多次、并且复位是手动或自动触发 (WDT)。  在结束时、U-Boot SPL 加载并尝试执行 U-Boot.img、但失败。

    问题源自 A53 SPL 加载 A53 U-Boot (u-boot.img)、这是在 ROM 执行之后的。 这是 U-Boot 本身中的一个问题。 理想情况下、问题应该仅来自硬件、但我们可以尝试在 U-Boot 中添加更多调试功能、并查看这是否有帮助。

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

    嗨、Ninad、

    您能否在 A53 defconfig 中添加“config_mcm_trace=y"并“并共享日志、以防问题仍然发生?

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

    你好 Prashant、
    如果有任何文件、请提供 rootcause 或 erratta
    如何解决此问题?

    谢谢你

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

    根本原因未知。 日志中没有可对根本原因进行注释的调试信息。 请按照我上次的回复中所述添加调试信息。

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

    您是否看到任何成功的引导? 如果是、请共享这些成功的日志以进行比较。

    请随日志附上“插入->代码“以提高可读性。

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

    您好 Prashant、

    提前感谢您提供的任何额外调试提示!

    A53 SPL 将 u-boot.img 从 eMMC 存储器读取到 RAM 时的 eMMC_CLK 频率是多少? 是 25MHz 还是更高?

    谢谢

    此致

    Anastas Yordanov

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

    NOTICE:  bl1_plat_arch_setup arch setup 
    [23.673] NOTICE:  Booting Trusted Firmware
    [0.000] NOTICE:  BL1: v2.12.0(release):2e577e283
    [0.000] NOTICE:  BL1: Built : 10:14:50, Jan  8 2026
    [0.000] NOTICE:  BL1: dram_class: 11
    [0.000] NOTICE:  lpddr4: post start - PI training status=0x27c0a000 
    [0.026] NOTICE:  bl1_platform_setup DDR init done
    [0.000] NOTICE:  k3_bl1_handoff ENTERING WFI - end of bl1
    [0.527] NOTICE:  BL31: v2.12.0(release):2e577e283
    [0.027] NOTICE:  BL31: Built : 10:14:52, Jan  8 2026
    [0.000] NOTICE:  SYSFW ABI: 4.0 (firmware rev 0x000b '11.2.3-v11.02.03 (Fancy Rat)')
    [0.095] ERROR:   Agent 0 Protocol 0x10 Message 0x7: not supported
    [0.042] 
    [0.000] U-Boot SPL 2025.01-00603-g674977ce0b8d-dirty (Jan 12 2026 - 15:26:03 +0530)
    [0.023] SPL initial stack usage: 1936 bytes
    [0.000] Trying to boot from MMC0
    [0.057] CMD_SEND:0
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_NONE
    [0.000] CMD_SEND:8
    [0.000] 		ARG			 0x000001aa
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:55
    [0.000] 		ARG			 0x00000000
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:0
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_NONE
    [0.000] CMD_SEND:1
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R3,4		 0x40ff8080 
    [0.000] CMD_SEND:1
    [0.000] 		ARG			 0x40300080
    [0.000] 		MMC_RSP_R3,4		 0x40ff8080 
    [0.000] CMD_SEND:1
    [0.000] 		ARG			 0x40300080
    [0.000] 		MMC_RSP_R3,4		 0xc0ff8080 
    [0.000] CMD_SEND:2
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R2		 0x45010044 
    [0.000] 		          		 0x47343030 
    [0.000] 		          		 0x3801f3c7 
    [0.042] 		          		 0x2e392c00 
    [0.000] 
    [0.000] 					DUMPING DATA
    [0.000] 					000 - 45 01 00 44 
    [0.000] 					004 - 47 34 30 30 
    [0.000] 					008 - 38 01 f3 c7 
    [0.000] 					012 - 2e 39 2c 00 
    [0.000] CMD_SEND:3
    [0.000] 		ARG			 0x00010000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000500 
    [0.000] CMD_SEND:9
    [0.000] 		ARG			 0x00010000
    [0.000] 		MMC_RSP_R2		 0xd00f0032 
    [0.000] 		          		 0x8f5903ff 
    [0.000] 		          		 0xffffffef 
    [0.000] 		          		 0x8a404000 
    [0.000] 
    [0.000] 					DUMPING DATA
    [0.000] 					000 - d0 0f 00 32 
    [0.000] 					004 - 8f 59 03 ff 
    [0.000] 					008 - ff ff ff ef 
    [0.000] 					012 - 8a 40 40 00 
    [0.000] CMD_SEND:7
    [0.019] 		ARG			 0x00010000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000700 
    [0.000] CMD_SEND:8
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.015] CMD_SEND:6
    [0.000] 		ARG			 0x03b70200
    [0.055] 		MMC_RSP_R1b		 0x00000800 
    [0.000] CMD_SEND:13
    [0.000] 		ARG			 0x00010000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CURR STATE:4
    [0.000] CMD_SEND:6
    [0.000] 		ARG			 0x03b90200
    [0.000] 		MMC_RSP_R1b		 0x00000800 
    [0.000] CMD_SEND:13
    [0.000] 		ARG			 0x00010000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CURR STATE:4
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.041] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.041] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.041] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.042] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:21
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:8
    [0.000] 		ARG			 0x00000000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.044] CMD_SEND:6
    [0.000] 		ARG			 0x03b34900
    [0.000] 		MMC_RSP_R1b		 0x00000800 
    [0.000] CMD_SEND:13
    [0.000] 		ARG			 0x00010000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CURR STATE:4
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:17
    [0.000] 		ARG			 0x00001000
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		MMC_RSP_R1,5,6,7 	 0x00000900 
    [0.000] CMD_SEND:18
    [0.000] 		ARG			 0x00001000
    [0.000] 		RET			 -70
    [0.000] mmc_load_image_raw_sector: mmc block read error
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.060] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] CMD_SEND:16
    [0.000] 		ARG			 0x00000200
    [0.000] 		RET			 -110
    [0.000] Partition 1 invalid on device 0
    [0.030] spl_register_fat_device: fat register err - -1
    [0.000] spl_load_image_fat: error reading image u-boot.img, err - -1
    [0.000] SPL: failed to boot from all boot devices
    [0.000] ### ERROR ### Please RESET the board ###

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

    嗨、Ninad、

    关于我最初提供给您的硬件指南:

    “1. 我认为安装了正确的上拉和下拉电阻器 (我认为您可以保留外部 10k 拉电阻器、无需将数据和 I/O 上的上拉电阻器替换为 47k)。 另一个问题来了:您是否有任何串联终端电阻器的占位符、它们尽可能靠近 eMMC 信号源引脚(信号驱动器)。 一个好的方法是使用 0r 个串联电阻值开始测试、并使用示波器探测 eMMC_CLK、eMMC_DAT0-eMMC_DAT7、eMMC_CMD 线路以评估信号完整性。 如果存在过冲/下冲、您可以逐渐将串联电阻增加至 10R、22R、33R、直到信号形状得到改善、并保持上升和下降时间仍可接受。“

    我必须纠正自己如下:

    正确、最好使用 47k CMD 和 eMMC_DAT0 外部上拉电阻值为 47k Ω、因为 10k Ω 是 JEDEC eMMC 建议的最小上拉电阻值、并避免任何负容差百分比问题。  

    这符合以下 文件的第 25 页中的设计说明:sprcal9\TMDS62LEVM 设计文件包 Altium (Rev B)\PROC180\PROC181E1_1\1_schematic\3_PDF_Intelligent\PROC181E1-1_S_SCH_Altium With_Design_Updates..Notes_V1.0.pdf

    对于 eMMC_DAT1 - eMMC_DAT7 线路、请确保启用内部上拉电阻器。 同样、将一个 10k Ω 下拉电阻连接到更靠近 eMMC 存储器 eMMC_CLK 输入的位置、并在更靠近 AM62L 处理器 eMMC_DS 输入的位置连接一个 10k Ω 下拉电阻。    

    根据 TMDS64LEVM 原理图和原理图审阅检查清单、实际上需要在尽可能靠近信号源(AM62L eMMC_CLK 输出引脚)的位置、仅为 eMMC_CLK 时钟线路的串联终端电阻器提供一个占位符。 您应该从 0R 电阻器开始、并逐渐增加该值 (3R3、4R7、10R、22R、33R...) 或其他标准化低电阻值、直到时钟在平坦区域具有可忽略的振铃效应(过冲/下冲)。 同时、应遵循最高频率 (200MHz) 上升和下降时间的建议、不允许更高的串联电阻值将 eMMC 时钟上升/下降时间增加到允许的最大值以上。

    以下是  AM62L 原理图审阅检查清单的 MMC0 - eMMC(嵌入式多媒体卡)接口一节的摘录

    请提供所用测量设备的详细信息、前提是要求的详细信息可在此处披露。

    谢谢你

    此致

    Anastas Yordanov

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    A53 SPL 将 u-boot.img 从 eMMC 存储器读取到 RAM 时、eMMC_CLK 频率是多少? 是 25MHz 还是更高?

    默认情况下、eMMC 在 HS200 中初始化、因此为 200MHz。

    Successfull boot

    在比较非工作日志和工作日志时、第一个差异出现在以下位置

    这是为了读取 u-boot.img 而启动的 CMD18。 在不工作的情况下、此命令失败、并出现通信错误(–70)。 我在软件中看不到可能导致此问题的任何内容。 假设您仅使用最新版本、MMC 驱动程序在最新版本中非常稳定。

    在这个注意事项上、您能否确认所使用的 SDK 版本准确无误?

    日志显示 U-Boot 版本如所示

    U-Boot SPL 2025.01-00603-g674977ce0b8dirty (1 月 12 日 2026 - 15:26:03 +0530)

    提交“674977ce0b8d"不“不存在于`ti-u-boot`存储库中、它必须来自您在源代码中所做的更改。 我可以说、 U-Boot 版本基于 SDK v11.1 中的 U-Boot 版本(标签:11.01.16)。

    如果确实如此、请确认您是否对 MMC 驱动程序进行了任何更改? 此外、您是否也使用最新的 SDK 进行了测试?

    除非对 MMC 驱动程序进行一些自定义更改、

    问题应主要由硬件引起。 请查看建议的原理图更改、看看这样是否解决了问题。

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

    您好、

    是的, U-Boot 版本来自我们的提交更改,我们目前正在使用 11.01.16.13 SDK 并仅在 dts 中执行更改  

    MMC 驱动程序中没有任何自定义更改。


    “MMC 驱动程序在最新版本中相当稳定“-您能否确认这同样适用于 11.01.16.13 SDK? 或者 、请参阅 11.02.08.02?

    我们将尽快更新原理图  

    谢谢你  

    BR、

    Ninad

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

    您好:

    您能否确认这同样适用于 11.01.16.13 SDK? 或者您提到 11.02.08.02?

    它也适用于 11.1。 事实上,我只是浏览了 Git 历史记录,没有看到不同 SDK 版本之间的 MMC 驱动程序或 MMC 节点有任何变化。

    您能否分享`tispl.bin`?

    我只需交叉验证从这个二进制文件提取的 dtb 中的 MMC 节点。

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

    e2e.ti.com/.../TISPL.zip

    如果您无法获得.bin 文件  
    您是否可以接受 PM 请求、以便我可以与您共享驱动器链接  

    谢谢你  

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

    我没有看到从提供的`tispl.bin`中提取的 dtb 的 eMMC 节点有任何差异。 因此、从 eMMC 的角度来看、您与 SDK v11.1 具有相同的基准。

    现在、我只能建议在 HS 模式下初始化 eMMC、这样不会导致问题

    diff --git a/dts/upstream/src/arm64/ti/k3-am62l3-evm.dts b/dts/upstream/src/arm64/ti/k3-am62l3-evm.dts
    index 03a62341846..0f95267d537 100644
    --- a/dts/upstream/src/arm64/ti/k3-am62l3-evm.dts
    +++ b/dts/upstream/src/arm64/ti/k3-am62l3-evm.dts
    @@ -645,6 +645,7 @@
     
     &sdhci0 {
     	/* eMMC */
    +	/delete-property/ ti,otap-del-sel-hs200;
     	non-removable;
     	pinctrl-names = "default";
     	pinctrl-0 = <&main_mmc0_pins_default>;
    

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

    你好,所以这将引导 eMMC 与 52MHz 在 U boot ,然后在内核中它将是 200MHz 的前面我是正确的?

    在 U BOOT 中将 freq 设置为 52MHz 的原因是什么?
    此修复程序是否适用于 CPU 端? 哪些将在即将发布的版本中得到修复?

    谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这样、这将在 U boot 中使用 52MHz 引导 eMMC、然后在内核中它将像我之前纠正的那样是 200MHz?

    正确。

    该补丁基本上会禁用 HS200 模式、因此这不是一个修复方法、而只是一种权变措施。 对于该修复、需要确定 HS200 模式下故障的根本原因、这是未知的。

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

    在 EVM 板上观察到的相同故障是否可以得到相关确认?
    谢谢你

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是否在 EVM 板上发现了相同的故障?我是否可以得到关于该问题的确认?

    我尚未自行测试、但 EVM 上极不可能发生故障、因为在 SDK 发布之前的测试阶段会发现故障。

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

    那么、导致此问题的根本原因可能是什么?

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

    您好、  
    请问在 uboot 中将时钟设置为 52MHz 的原因是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我是否知道在 uboot 中将时钟设置为 52MHz 的原因?

    这只是一种权变措施。 传统和 HS 等低速模式通常对原理图没有严格的要求、因此这些速度模式可以正常工作。

    HS200 等高速模式对硬件有严格的要求、由于高频率、需要遵循这些要求。

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

    你好 Ninad、

    根据 Prashant 的评论、eMMC_CLK 频率< 52MHz 时没有引导问题。

    为了识别 SDMMC0 高速下的任何潜在硬件问题、可以执行以下步骤:

    硬件团队是否可以通过某种方法在尽可能靠近 AM62L eMMC_CLK 引脚的位置添加一个串联端接电阻器?  

    提供串联电阻器后、请 在 U-Boot 阶段 (52MHz) 测试时钟信号、使用 足够好的探头和示波器((BW >=<xmt-block2> 400MHz</xmt-block> - 1GHz、2Gsmps/s 或更多) 并 400MHz并尽可能靠近 eMMC 闪存的 CLK 输入端。 请从低串联电阻值开始、即 3R3、观察 时钟脉冲的正/负平坦区域是否存在任何绝对值 (> 0.2V) 的下冲/过冲。 请增加串联电阻值 (4R7、10R、22R、33R)、直到摆动降至 0.1V - 0.2V 以下。同时测量 eMMC_CLK t_RISE、并确保仅在 t_RISE 满足要求 t_rise_eMMC_clk < t_rise_eMC_clk_ max 时增大串联电阻    

    为消除任何噪声源的影响、请求的 eMMC_DAT0 和 eMMC_CMD 信号的示波图将是一个加号。

    请告诉我您的初步观察结果、我们可以优化设置。

    谢谢

    此致、

    Anastas Yordanov

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

    您好、如果原理图中有问题、它如何在 200MHz 的内核中正常工作?  

    到目前为止、我们在 52MHz 内核和 200MHz 内核中遇到了任何 uboot 问题  

    谢谢你  

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

    您好、

    TI、OTAP-DEL-SEL-HS200 =<0x6>;

    这些值的决定依据是什么? 我们可以测试的其他可能值有哪些 ? 为什么<0x6>处于默认状态  

    谢谢你

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

    嗨、Ninad、

    [引述 userid=“677845" url="“ url="~“~/support/interface-group/interface/f/interface-forum/1603454/am62l-emmc-boot-failure-in-some-boards/6189554

    您好、如果原理图中有问题、它如何在 200MHz 的内核中正常工作?  

    到目前为止、我们在 52MHz 内核和 200MHz 内核中遇到了任何 uboot 问题

    [/报价]

    答 1。 遗憾的是、eMMC 时钟信号完整性问题可能会影响引导和读取/写入数据。 如何 — eMMC 存储器检测到一些杂散时钟转换。  要评估这种“潜力“,我需要有 52MHz 时钟示波器与改进的测量设备((如果可能 — 使用至少一个 200MHz 2GSa/s 示波器)和正确的设置 — 一个探头与接地弹簧和 200MHz BW。 如果没有更好的示波器、请提供第二个示波器、测量 10 或 50MHz 参考振荡器的输出。  在 25MHz 示波器图中、我看到过冲/下冲、这可能仍然不超过 VIH_min 和 ViL_max 阈值、不会导致虚假 eMMC 存储器时钟转换 、但在 52MHz 和更高频率下、这可能会发生变化。 出现意外反射(过冲和下冲)的另一个结果是、超出 AM62L eMMC CLK 输出电压的绝对最大额定值。  

    A2。 eMMC_CLK 信号布线旁边没有 0r 个串联终端电阻器占位符、这与 TI 原理图审阅检查清单和定制电路板硬件设计指南针对 AM62L eMMC 接口建议的内容相矛盾。 我将在内部与我们的信号完整性专家进行讨论。

    这些值的决定依据是什么? 我们可以测试的其他可能值有哪些 ? 为什么<0x6>处于默认状态 

    正如 Prashant 所说、 eMMC HS200 模式下的访问操作需要精确的时序。 对于这种高速模式、 在软件中执行自动调优、以找到合适的 Rx(输入)时钟抽头延迟值。 对于所选的 HS200 模式、需要 在位字段 MMCSD0:MMC_SSCFG_PHY_CTRL_4_REG [16:12]OTAPDLYSEL 中手动设置一个固定 Tx(输出)时钟抽头延迟值= 0x6、这似乎是上述 Linux DTS 行的结果。

    请与本节中的 MMCSD/MMC0 - AM62L DS 的 eMMC/SD/SDIO 接口

    谢谢

    此致

    Anastas Yordanov

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

    您好、
    与提到的解决方法类似、我们删除了属性 (ti、otap-del-sel-HS200) 并保留为开机关闭测试、现在不会解决先前的问题、但在内核中有时引导失败、出现以下错误

    [ 3.718850] mmc0:使用 ADMA 64 位的 fa10000.mmc [fa10000.MMC]上的 SDHCI 控制器
    [ 3.794027] sdhci-am654 fa10000.mmc:找不到、调整失败
    [ 3.800788] mmc0:调整执行失败:–1
    [ 3.805171] mmc0:初始化 MMC 卡时出现错误–1
    [ 3.926328] sdhci-am654 fa10000.mmc:找不到、调整失败
    [3.933076] mmc0:调整执行失败:–1
    [3.937450] mmc0:初始化 MMC 卡时出现错误–1
    [ 4.063372] sdhci-am654 fa10000.mmc:找不到、调谐失败
    [ 4.070095] mmc0:调优执行失败:–1
    [ 4.074480] mmc0:初始化 MMC 卡时出现错误–1
    [4.250761] sdhci-am654 fa10000.mmc:找不到、调整失败
    [4.257475] mmc0:调优执行失败:–1
    [4.261834] mmc0:初始化 MMC 卡时出现错误–1
    [4.268345] mmc0:无法初始化不可拆卸的卡
    [ 5.200499] sdhci-am654 fa00000.mmc:开机失败
    [ 5.241633] mmc1:使用 ADMA 64 位的 fa00000.mmc [fa00000.MMC]上的 SDHCI 控制器
    [ 5.249430]正在等待根设备/dev/mmcblk0p2...

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

    您好 Anastas  
    是否有除 0x6 以外的其他值要测试?

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

    你好 Ninad、

    我不熟悉构建的 Linux 内核和适用的补丁。

    根据日志、我可以得出以某种方式 AM62L U-Boot 从 eMMC 存储器引导 Linux 内核  在 HS200 模式下不稳定 。  

    我认为、删除设备树初始化: (TI、OTAP-DEL-SEL-HS200)=<0x6>不应修复问题、因为在这种情况下、我认为在 HS200 模式下无法保证可重复的精确 eMMC 自动调优。 因此、并非总是能够在 HS200 模式下成功引导内核。  我没有其他价值建议。

    [引述 userid=“531297" url="“ url="~“~/support/interface-group/interface/f/interface-forum/1603454/am62l-emmc-boot-failure-in-some-boards/6188095
    所以这将引导 eMMC 与 52MHz 在 U 引导,然后在内核中它将是 200MHz 的前面我是正确的?

    正确。

    该补丁基本上会禁用 HS200 模式、因此这不是一个修复方法、而只是一种权变措施。 对于该修复、需要确定 HS200 模式下故障的根本原因、这是未知的。

    [/报价]

    我不确定是否理解。 我是否可以认为、 在 DTS 中恢复:(TI、OTAP-DEL-SEL-HS200)=<0x6>会导致 A53 SPL 重复并在 52MHz 处成功引导 U-Boot(PHY 调优不相关)、U-Boot 成功并在 HS200 处重复引导 Linux

    在 eMMC_CLK 频率= 52MHz 的情况下、A53 SPL 仍无法启动 U-Boot.img?

    请澄清!

    谢谢  

    此致

    Anastas Yordanov  

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

    如果我们删除属性  (ti、otap-del-sel-HS200)=<0x6> u boot 在 52MHz 和 200MHz 中的内核中工作、但有时仍会发生不同的错误  

    [ 3.718850] mmc0:使用 ADMA 64 位的 fa10000.mmc [fa10000.MMC]上的 SDHCI 控制器
    [ 3.794027] sdhci-am654 fa10000.mmc:找不到、调整失败
    [ 3.800788] mmc0:调整执行失败:–1
    [ 3.805171] mmc0:初始化 MMC 卡时出现错误–1
    [ 3.926328] sdhci-am654 fa10000.mmc:找不到、调整失败
    [3.933076] mmc0:调整执行失败:–1
    [3.937450] mmc0:初始化 MMC 卡时出现错误–1
    [ 4.063372] sdhci-am654 fa10000.mmc:找不到、调谐失败
    [ 4.070095] mmc0:调优执行失败:–1
    [ 4.074480] mmc0:初始化 MMC 卡时出现错误–1
    [4.250761] sdhci-am654 fa10000.mmc:找不到、调整失败
    [4.257475] mmc0:调优执行失败:–1
    [4.261834] mmc0:初始化 MMC 卡时出现错误–1
    [4.268345] mmc0:无法初始化不可拆卸的卡
    [ 5.200499] sdhci-am654 fa00000.mmc:开机失败
    [ 5.241633] mmc1:使用 ADMA 64 位的 fa00000.mmc [fa00000.MMC]上的 SDHCI 控制器
    [ 5.249430]正在等待根设备/dev/mmcblk0p2...

    但 Dint 像以前一样面临着任何问题  
    ##错误:未定义“loadbootscript"或“或  
    ** fs_devread 读取错误 — 块
    无法设置块设备
     **无分区表 — MMC 0 **
     找不到分区 MMC 0:2

    这些都没有再次发生。

    因此,我们尝试删除 DTS 中的“MMC-HS200-1_8v"属性“属性,并尝试测试,但 dint 目前面临任何问题。 这两个属性是否都与内核中的另一个问题引起的问题相关? Prashant Shivhare 

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

    你好 Ninad、

    所以我们尝试删除 DTS 中的“MMC-HS200-1_8v"属性“属性并尝试测试、但 Dint 到目前为止遇到了任何问题。 这两个属性是否与内核中的另一个问题引起的问题相关?

    我不确定是否理解你的最后一条评论。 请确认、一旦   从 DTS 中删除了两个属性 (ti、OTAP-del-SEL-HS200)=<0x6>和 MMC-HS200-1_8v 属性、一切都能重复正常运行?

    除此之外,为了从硬件的角度帮助提高这些间歇性引导故障期间的可见性,我需要更详细地说明 — 我需要您提供我之前请求的数据- 52MHz (U-Boot SPL) 阶段和 200MHz(U-Boot 引导内核)阶段的 eMMC_DAT0、eMMC_CMD、eMMC_CLK 的示波图。

    Prashant,  

    您是否有相同的期望,上述属性将被删除?   

    谢谢

    此致

    Anastas Yordanov

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

    我不确定是否理解你的最后一条评论。 请确认、   从 DTS 中删除 (ti、otap-del-sel-HS200)=<0x6>和 MMC-HS200-1_8v 属性后、一切都能重复正常运行?

    是的,一切都可以与这些二进制文件正常工作  

    示波器将与提供的配置共享。

    谢谢你

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

    尊敬的 Anastas:

    如果我们删除 U-Boot 中的“ti、OTAP-del-SEL-HS200“属性、它会在 U-Boot 中禁用 HS200、这意味着 eMMC 将在下一个可能的高速模式、即 HS 模式 (52MHz) 中初始化。 完成此更改后、U-Boot 始终会成功工作、这涉及成功引导 Linux 内核。

    但是、仅在 U-Boot 中进行更改、因此 Linux 内核仍在默认速度模式 (HS200) 下初始化 eMMC。 在这种情况下、客户报告内核有时无法初始化 eMMC。

    现在、如果客户删除了“MMC-HS200-1_8v"属性“属性、则内核还能够枚举 eMMC Always、这与预期的情况类似、因为删除此属性也会有效地禁用内核中的 HS200 模式。

    这意味着、当 U-Boot 和 Linux 内核仅在 HS 模式下枚举 eMMC、则所有操作都正常。 但是、如果其中任何一个尝试在 HS200 中枚举 eMMC、则会发生随机故障、这很可能仅表明存在某些电路板问题。

    此致、

    Prashant

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

    你好 Ninad、

    如果有任何误解的话、很抱歉!

    现在、我知道 U-Boot 和 Linux 内核都成功重复地引导并以 eMMC_CLK 频率= 52MHz 运行。 这证实了以下假设:某些在> 52MHz 时表现出的高速信号完整性违规(原理图/电路板布局布线/引脚设置)可能会导致 HS200 模式失效。  

    我希望示波图能够进一步分析。   

    Prashant,

    非常感谢您的详细澄清!  

    谢谢

    此致

    Anastas Yordanov

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

    你好 Prashant Shivhare 

    阐明内核本身在 200MHz 下工作  

    此外,我们一直为 eMMC 应力测试长期运行,我们 dint 面临的任何问题.

    但是,如果 eMMC 处于 HS200 模式,我们会遇到 U boot 自身主板无法启动的问题,正如我们之前讨论过的。

    注意-“ti、otap-del-sel-HS200“ 如果删除、Uboot 可在 200MHz 和电路板启动中工作、但在内核中看到一些故障情况  

    [4.261834]   
    [4.268345] mmc0:无法初始化不可拆卸的卡
    [ 5.200499] sdhci-am654 fa00000.mmc:开机失败
    [ 5.241633] mmc1:使用 ADMA 64 位的 fa00000.mmc [fa00000.MMC]上的 SDHCI 控制器
    [ 5.249430]正在等待根设备/dev/mmcblk0p2...   

    从长远来看  

    因此,我们删除了 uboot 中的“MMC-HS200-1_8v"属性“属性,现在就像在 uboot 中之前一样, 52MHz 内核在 200MHz 中,但从未在内核和 uboot 中看到过这个问题。

    我们的结论意见-

    外壳 ti,otap-del-sel-hs200 mmc-hs200-1_8v U-Boot MMC 速度 内核 MMC 速度 观察到的结果
    1. 难题 难题 200MHz 200MHz 电路板无法引导、并出现复位错误或 OSPI 映像加载错误
    2. 已删除 难题 52MHz 200MHz 电路板启动、但mmc0: error -1在内核中的 MMC 初始化期间有时会失败
    3. 已删除 已删除 52MHz 52MHz 到目前为止、在测试过程中未发现任何问题


    注意 — 我们添加了细绝缘铜线,在“eMMC CLK 10K 下拉电阻“处进行探测、此时、随着 U boot 中的 200MHz 和内核中的 200MHz、我们在同一问题板中遇到了错误  

    谢谢您、

    等待您对此的意见  
    此致、  

    Ninad


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

    您的回复存在不一致之处。

    阐明我们的内核在 200MHz 本身的工作原理
     

    您说内核在 HS200 中工作、但您得出的行为表明、如果内核在 HS200 中初始化 eMMC、则存在随机故障。

    注意-“ti, OTAP-del-sel-HS200“ 如果这被删除 Uboot 可在 200MHz 和主板启动中工作、但在内核中看到一些失败的情况

    如果删除此属性、U-Boot 不会在 HS200 中初始化 eMMC。

    我们得出的结论意见-

    得出的行为与我之前的回答一致。 如果 U-Boot 或内核在 HS200 中初始化 eMMC、则会出现随机故障。 但是、如果在 HS 模式下初始化 eMMC、则不会出现故障。

    [引述 userid=“677845" url="“ url="~“~/support/interface-group/interface/f/interface-forum/1603454/am62l-emmc-boot-failure-in-some-boards/6201607
    3. 已删除 已删除 52MHz 52MHz 到目前为止、在测试过程中未发现任何问题
    [/报价]

    您必须对内核进行一些更改、以便仅在 HS 模式下初始化 eMMC、否则它将始终尝试在 HS200 中初始化 eMMC。

    无论如何、

    注意 — 我们在“eMMC CLK 10K 下拉电阻“处添加了薄绝缘铜线、这一点与 U boot 中的 200MHz 和内核中的 200MHz 一起、我们在同一问题板中遇到了错误

    您是否认为 HS200 中的此硬件修改没有问题?

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

    注意-“ti、otap-del-sel-HS200“ 如果删除、Uboot 可在 200MHz 和电路板启动中工作、但在内核中看到一些故障情况

    抱歉、错误是内核在 200MHz 中工作是 52MHz 中的 uboot

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    已删除 已删除 52MHz 200MHz 到目前为止、在测试过程中未发现任何问题
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我们得出的结论意见-
    外壳 ti,otap-del-sel-hs200 mmc-hs200-1_8v U-Boot MMC 速度 内核 MMC 速度 观察到的结果
    1. 难题 难题 200MHz 200MHz 电路板无法引导、并出现复位错误或 OSPI 映像加载错误
    2. 已删除 难题 52MHz 200MHz 电路板启动、但mmc0: error -1在内核中的 MMC 初始化期间有时会失败
    3. 已删除 已删除 52MHz 200MHz 到目前为止、在测试过程中未发现任何问题

    请考虑更新后的表  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否说 HS200 中的硬件修改没有问题?

    是的,当电线被添加与 HS200 问题时,安装 Pont 面临问题  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引述 userid=“677845" url="“ url="~“~/support/interface-group/interface/f/interface-forum/1603454/am62l-emmc-boot-failure-in-some-boards/6201683
    2. 已删除 难题 52MHz 200MHz 电路板启动、但mmc0: error -1在内核中的 MMC 初始化期间有时会失败
    3. 已删除 已删除 52MHz 200MHz 到目前为止、在测试过程中未发现任何问题
    [/报价]

    如果删除了“ti、otap-del-sel-HS200“、则“MMC-HS200-1_8v"无关紧要“无关紧要、因此这两种情况相同、因此应具有相同的行为。 如果第三种情况的行为与第二种情况不同、则第三种情况必须有一些额外的变化。