SD/eMMC初始化流程、读写流程(dwc mshc)

本文详细介绍了SD/eMMC的初始化流程,包括CMD0、CMD8、CMD3和CMD9等步骤,以及数据传输模式如LEGACY/SDMA/ADMA。在调试问题部分,探讨了uboot中连续读取多个block超时和SD卡未识别的问题,以及内核驱动初始化时钟配置错误和SD卡分区失败的原因。同时,提到了Linux MMC子系统的三层结构,并列举了uboot和kernel的调试命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.芯片简介

1.1 模块与接口

1.2 SD/eMMC初始化流程

1.3 SD/eMMC数据传输流程

1.3.1 传输模式

 2.调试问题

2.1 uboot

2.1.1 连续读4个以上block超时

2.1.2 SD卡未识别

2.2 kernel

2.2.1驱动初始化依赖时钟配置

2.2.3 SD卡fdisk分区失败

3. 内核MMC

4.调试命令

4.1 uboot

4.2 kernel

4.2.1 mmc_test

4.2.2 文件系统读写

4.2.3 sysfs


1.芯片简介

1.1 模块与接口

AHB Slave接口用于寄存器访问。

AXI/AHB Master接口用于数据传输。

SD/eMMC接口对接SD卡(支持4bit)和eMMC芯片(支持4/8 bit)。

UHS-II接口对接PHY。

1.2 SD/eMMC初始化流程

SD卡初始化流程如下:

       从SD卡初始化流程可知,不管什么卡(卡分为4类:SD2.0高容量卡(SDHC

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值