AR# 47533

Zynq-7000 SoC、SDIO — 如果启用 Auto CMD12,则可错误地发出二次 CMD12

描述

如果在执行 Auto CMD12 命令时软件发送另一个命令(比如 CMD13)来轮询程序状态,那该二次 CMD 就应该驱动到 CMD 线上。然而,CMD12 再次被驱动。

解决方案

影响:很小,请查看以下解决方法。

受影响的配置:使用 SDIO 控制器的系统。

 器件修订(s)受影响: 全部,无计划修复。请参考(Xilinx 答复 47916) Zynq-7000 设计咨询主答复记录

解决方法:

在启用 Auto CMD12 进行多模块传输时,请避免发送任何非数据传输命令。换句话说,任何非数据传输命令都应该在 Auto CMD12 完成后按传输完成中断(0x030 寄存器的第 1 位)所示发送。在发出新命令之前,软件驱动程序会对这个中断进行轮询。

当软件先发出 CMD18 或 CMD25,然后发出自动 CMD12 时,以下是控制器的响应:

1.发送 CMD18/25。
2.CMD18/25 的 Command_Complete 中断。
3.CMD18/25 和 Auto CMD12 的 Transfer_Complete 中断。

AR# 47533
日期 06/13/2018
状态 Active
Type 设计咨询
器件