card 驱动

来源:互联网 发布:淘宝客服外包合同 编辑:程序博客网 时间:2024/04/28 03:05

架构

读写流程

初始化流程:

CMD0

CMD8(高速 大容量)CMD41(SD_SEND_OP_COND)CMD2CMD3(intoken SD ID)CCS: 1 高速卡 0 普通卡

错误处理:

在错误处理中还有card init

ESD处理

在连续读写时候,处理ESD状况,要连续重新操作三次,若三次未恢复则交给上层处理

相关学习

CMD0 –TM no rsp
CMD13–TM1 获取状态
CMD7 –stadby

RCA:

MMC 和 SD

大体一样,不同公司的类似设计

双卡评估工作

卡1卡2切换通过CLK不同加不同addr区分开最好不要分时复用。问题:如何保存card 的相关参数 addr  state cap 与切换。(5009做过看一下保存了什么信息,如何读取)拓扑优缺点:稳定性好状态机切换:

    双卡如何识别?原来的检测方式+轮询机制    boot card (CID RCA )的信息放在哪里?    结构体形式存储 卡信息 和SDC状态

重要的全局变量

card_ standby_ state

g_ card_ para

bit 4-5 rw标志位

g_ card_ rca

2个字节

g_card_type

1个字节

drv_install

drv_mount

一些问题

card_macro.h中的 MMC*** different class
也要去了解CARD的一些特性比如最高的支持速度,时钟频率

if define card_u_mode

    读写card的操作地址怎么体现 RCA+enbale clk_a    clk是SDC 还是card的时钟?要设置多少?    现在card的时钟是单独GPIO配置(针对双卡的问题)?
0 0
原创粉丝点击