SDMMC学习

SDMMC学习

这几天略微看了下MMC/SD相关代码,梳理如下

在Linux/driver/mmc目录下有三个文件夹:card、host、core

  • card目录:queue.c,block.c,顾名思义是相关request和相关块设备的操作文件
  • core目录:
    bus.c:总线相关操作,包括mmc bus、sdio bus
    core:主要是sd.c和mmc.c包含了相关卡的操作,主要是包含符合MMC/SD标准的CMD
  • host:mmc/sd host控制器的注册

从上面的文件可以看出要注册的模块包括

  1. subsys_init 注册MMC总线和SDIO总线,后面相关的mmc device/driver会挂载MMC总线上,SDIO设备及驱动(如wifi)挂载在SDIO总线上
    2. SD/MMC卡控制器的注册会挂载在platform bus上,当插入卡或开机时就已经插卡的情况下,会alloc card(mmc_attach_sdio/mmc_attach_sd/mmc_attach_mmc),也就是注册相关MMC/SDIO设备
    3. MMC/SDIO相关驱动的注册,block设备注册

以上就是全部流程,查看代码可以根据以上顺序查看,思路会很清晰,细节可以上网搜索或阅读源码,网上有很多

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值