SDIO 控制器需要激活 SDIO 时钟才能写入软件复位 CMD 和 DAT。
如果SDIO时钟未激活,则控制器和互连将挂起。
影响: | 问题产生的影响较小,请参考解决方法。 |
解决方案: | 向控制器发出软复位之前,请启用 SDIO 时钟。 |
受影响的配置: | 使用 SDIO 控制器的系统。 |
受影响的器件版本: | 全部,无修复计划。请参考(Xilinx Answer 47916) Zynq-7000 设计咨询主答复记录 |
解决方案详情: | 主机驱动程序软件流程。 |
可选:CMD 和 DAT 复位:
如果主机驱动程序在主机控制器初始化期间发出 CMD 和 DAT 重置,则该选项将优先于以下主机驱动程序流程。
如果主机驱动程序在主机控制器初始化期间仅发出软复位(Software_Reset_for_All),则不需要此选项。需要 SDIO 时钟来清除软复位 CMD 和 DAT 位。
1) 启用 SDIO 时钟。
执行 CMD 及 DAT 复位:
将 1 和 0 先后写入 sdio.Clock_Control_Timeout_control_Software_reset[25、26]。
示例:主机驱动程序流程:
1) 等待卡插入。配置卡检测中断。
2) 插入卡后,执行 Software_Reset_for_All。将 1 和 0 先后写入 sdio.Clock_Control_Timeout_control_Software_reset[24]。
3) 启用主机中断并启用 SDIO 时钟。
4) 初始化 SD 卡。
全部软复位:
断言 Software_Reset_for_All,将重置所有 SDIO 寄存器,包括 sdio.Clock_Control_Timeout_control_Software_reset。
复位后,驱动程序必须启用 SDIO 时钟。
AR# 47532 | |
---|---|
日期 | 03/19/2020 |
状态 | 活跃 |
Type | 设计咨询 |
器件 |