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.

[参考译文] Linux/DRA754:SD 卡 UHS-1模式不一致

Guru**** 2589300 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/586938/linux-dra754-sd-card-uhs-1-mode-not-consistent

器件型号:DRA754

工具/软件:Linux

我们使用的是3.01.00.03处理器 SDK 汽车版本。

我们验证了 SD 卡中的 UHS 功能、但切换到 UHS 模式不一致、它会在工作/不工作之间交替。

然后、 在3.02.00.03的发行说明中、有一行显示"SD 卡是在 DDR/高速模式下枚举而不是 UHS 模式下枚举的。引导延迟几乎1秒" 删除 MMC1时钟线上的上拉电阻可减少出现此问题的机会。 该解决方案显示"降低了解决此问题的机会"、这意味着仍可能出现此问题。

我们禁用了 MMC 时钟上的上拉电阻。 现在、开关更加一致、但开关仍然随机失败。

另一个观察结果是、当 UHS 开关发生故障时、它必须回退到高速、而这种情况并非如此。 一旦 UHS 切换失败、该卡将不响应任何命令、并且会失败。

 在下面给出的日志中、在"[295.946504] mmc1:信号电压开关出现故障、电源循环卡"行之后、SD 卡没有响应。

 交换机发生故障后的 regs 转储:

root@#:/sys/kernel/debug/mmc1 cat regs
毫米波1:
SDIO IRQ 模式轮询
CTX_LOSS:1.

寄存器:
CON:0x00110600
PSTATE:0x00040000
HCTL:0x00000d10
SYSCTL:0x000e0007
IE:0x00000000
ISE:0x00000000
CAPA:0x26e90080
root@mmt2020-a879-b0:/sys/kernel/debug/mmc1
root@mmt2020-a879-b0:/sys/kernel/debug/mmc1

294.780286] mmc1:时钟0Hz 总线模式2功率模式0 cs 0 Vdd 0宽度0时序0
[294.781327]重新扫描 try freq freq[i]=400000 host->f_min=400000 i=0
[294.787722] mmc1:MMC_rescan_try_freq:尝试以400000Hz 的频率初始化卡
[294.801452] mmc1:时钟0Hz 总线模式2功率模式1 cs 0 Vdd 21宽度0计时0
[294.804238] omap_hsmmc 4809c000.mmc:I/O 电压切换至3V
[294.804259] omap_hsmmc 4809c0.mmc:3.3V 的初始信号电压
[294.818867] mmc1:时钟400000Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[294.838864] mmc1:启动 CMD52参数00000c00标志00000195
[295.354871] mmc1:Req Done (CMD52):-16:00000000 00000000 00000000 00000000
[295.354891] mmc1:启动 CMD52参数80000c08标志00000195
[295.854469] mmc1:请求完成(CMD52):-16:00000000 00000000 00000000 00000000
[295.854489] mmc1:时钟400000Hz 总线模式2功率模式2 cs 1 Vdd 21宽度0计时0
[295.855507] mmc1:启动 CMD0参数00000000标志000000c0
[295.855673] mmc1:请求完成(CMD0):0:00000000 00000000 00000000 00000000
[295.856708] mmc1:时钟400000Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[295.857723] mmc1:启动 CMD8参数000001aa 标志000002f5
[295.858029] mmc1:请求完成(CMD8):0:000001aa 00000000 00000000 00000000 00000000
[295.858057] mmc1:启动 CMD5参数00000000标志000002e1
[295.858438] mmc1:请求失败(CMD5):-110、正在重试...
[295.859403] mmc1:Req Failed (CMD5):-110、正在重试...
[295.859788] mmc1:请求失败(CMD5):-110、正在重试...
[295.860153] mmc1:请求完成(CMD5):-110:00000000 00000000 00000000 00000000
[295.860311] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.860623] mmc1:请求完成(CMD55):0:00400120 00000000 00000000 00000000
[295.860655] mmc1:启动 CMD41参数00000000标志000000e1
[295.860966] mmc1:请求完成(CMD41):0:00ff8000 00000000 00000000 00000000 00000000
[295.861001] mmc1:时钟400000Hz 总线模式2功率模式2 cs 1 Vdd 21宽度0计时0
[295.862018] mmc1:启动 CMD0参数00000000标志000000c0
[295.862182] mmc1:请求完成(CMD0):0:00000000 00000000 00000000 00000000
[295.863214] mmc1:时钟400000Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[295.864229] mmc1:启动 CMD8参数000001aa 标志000002f5
[295.864538] mmc1:请求完成(CMD8):0:000001aa 00000000 00000000 00000000 00000000
[295.864570] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.864878] mmc1:请求完成(CMD55):0:00000120 00000000 00000000 00000000
[295.864916] mmc1:启动 CMD41参数41200000标志000000e1
[295.865225] mmc1:请求完成(CMD41):0:00ff8000 00000000 00000000 00000000
[295.881829] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.882148] mmc1:请求完成(CMD55):0:00000120 00000000 00000000 00000000
[295.883240] mmc1:启动 CMD41参数41200000标志000000e1
[295.883554] mmc1:请求完成(CMD41):0:00ff8000 00000000 00000000 00000000
[295.898994] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.899307] mmc1:Req Done (CMD55):0:00000120 00000000 00000000 00000000
[295.899342] mmc1:启动 CMD41参数41200000标志000000e1
[295.899654] mmc1:请求完成(CMD41):0:00ff8000 00000000 00000000 00000000
[295.918908] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.919224] mmc1:请求完成(CMD55):0:00000120 00000000 00000000 00000000
[295.919282] mmc1:启动 CMD41 arg 41200000标记000000e1
[295.919592] mmc1:Req Done (CMD41):0:c1ff8000 00000000 00000000 00000000
[295.919623] mmc1:启动 CMD11参数00000000标志00000015
[295.919928] mmc1:请求完成(CMD11):0:00000300 00000000 00000000 00000000
[295.920960] mmc1:时钟0Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[295.938875] mmc1:时钟400000Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[295.941015] omap_hsmmc 4809c000.mmc:卡繁忙高电平
[295.946504] mmc1:信号电压开关出现故障、电源循环卡
[295.946518] mmc1:时钟0Hz 总线模式2功率模式0 cs 0 Vdd 0宽度0计时0
[295.948536] mmc1:时钟0Hz 总线模式2功率模式1 cs 0 Vdd 21宽度0计时0
[295.950070] omap_hmc 4809c0.mmc:I/O 电压切换至3V
[295.950085] omap_hmc 4809c0.MMC:3.3V 的初始信号电压
[295.968968] mmc1:时钟400000Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[295.988844] mmc1:时钟400000Hz 总线模式2功率模式2 cs 1 Vdd 21宽度0计时0
[295.989864] mmc1:启动 CMD0参数00000000标志000000c0
[295.989944] mmc1:请求完成(CMD0):-110:00000000 00000000 00000000 00000000
[295.990980] mmc1:时钟400000Hz 总线模式2功率模式2 cs 0 Vdd 21宽度0计时0
[295.991996] mmc1:启动 CMD8参数000001aa 标志000002f5
[295.992075] mmc1:请求完成(CMD8):-110:00000000 00000000 00000000 00000000
[295.992106] mmc1:启动 CMD55参数00000000标志000000f5
[295.992185] mmc1:请求完成(CMD55):-110:00000000 00000000 00000000 00000000
[295.992213] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.992289] mmc1:Req Done (CMD55):-110:00000000 00000000 00000000 00000000
[295.992391] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.992469] mmc1:请求完成(CMD55):-110:00000000 00000000 00000000 00000000
[295.992504] mmc1:启动 CMD55 arg 00000000标志000000f5
[295.992582] mmc1:请求完成(CMD55):-110:00000000 00000000 00000000 00000000
[295.992614] mmc1:初始化 SD 卡时出错-110
[295.998179] mmc1:时钟400000Hz 总线模式1功率模式2 cs 0 Vdd 21宽度0计时0
[295.998194] mmc1:启动 CMD1 arg 00000000标志000000e1
[295.998272] mmc1:请求完成(CMD1):-110:00000000 00000000 00000000 00000000
[295.998298]正在关闭...

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

    我已将您的问题转交给 MMC 专家。

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

    您好!

     这在 TI EVM 或定制板上是如此。

    MMC1是用于 Ofr SD 还是 SDIO?

    您能告诉我们所用卡的品牌和型号吗?

    我们尚未看到所有卡都出现此故障、但只能选择几张卡。

    此致、
    RK

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

    这在定制板上。
    我们将 MMC1用于 SD。

    型号:
    SanDisk Ultra 16GB (10) Micro SD HC-1.
    制造:
    E516G1641
    TWLN003057607

    6421TSKE3545
    台湾制造
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好:Bhagat、
    您的问题似乎与“发行说明”项目不同。
    在您的情况下、SD 甚至不会枚举。

    从日志中可以看到、在下电上电后、卡似乎占线并且不响应电压开关/命令。
    您是否遇到了所有 SD 卡的类似问题、或者这是此卡的特定问题?

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

    我们已经使用另一个 SD 卡4级进行了验证、没有发现任何问题。 即使它无法进行电压开关、它也会循环通电并正确枚举。
    但使用此卡时、行为是奇怪的。 它看起来不像卡忙。 当插入卡时出现问题时、我们已转储寄存器:
    PSTATE:0x00040000 (这意味着卡不忙)
    但在下电上电后、卡仍然不响应任何命令。 您是否见过任何具有此类行为的卡片?

    同时、我们将使用其他 SD 卡进行测试并告知您。

    此致
    Bhagat