如果在执行 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 | 设计咨询 |
器件 |