云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > Linux设备驱动子系统第二弹- SD卡 - 图文

Linux设备驱动子系统第二弹- SD卡 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/7/13 1:46:22

[置顶]Linux设备驱动子系统第二弹 - SD卡 分类: Linux驱动 2010-10-01 19:59 3553人阅读 评论(5) 收藏 举报 1. 总论 2. 主控制器 3. 协议层 4. 块设备 1. 总论 1.1 概念 ? ?

MMC - MultiMedia Card SD - Secure Digital Card

1.2 分类

?

按存储大小,普通SD卡(<=2GB,支持FAT12/FAT16),HCSD卡(>2GB,<=32GB,支持FAT32)

? 按体积大小,普通SD卡,mini-SD卡,micro-SD卡(TF卡)

1.3 速度

? ?

默认模式: 12.5MB/s 高速模式: 25MB/s

1.4 子系统代码结构

Linux源码里/drivers/mmc下有三个文件夹,分别存放了SD块设备,核心层和SD主控制器的相关代码,可以通过Kconfig和Makefile获取更多信息。

2. 主控制器

SD卡的控制器芯片,可以看成CPU的代言人,它为CPU分担了完成与SD卡数据通信的任务。 2.1 数据结构 以PXA芯片的SD控制器驱动为例, struct pxamci_host { struct mmc_host *mmc; struct mmc_request *mrq; struct mmc_command *cmd; struct mmc_data *data; ... ... };

2.1.1 struct mmc_host 结构体mmc_host定义于/include/linux/mmc/host.c,可以认为是linux为SD卡控制器专门准备的一个类,该类里面的成员是所有SD卡控制器都需要的,放之四海而皆准的数据结构,而在PXA芯片控制器的驱动程序pxamci.c中,则为该类具体化了一个对象struct mmc_host *mmc,此mmc指针即指代着该PXA芯片SD卡控制器的一个具体化对象。

struct mmc_host {

const struct mmc_host_ops *ops; // SD卡主控制器的操作函数,即该控制器所具备的驱动能力

const struct mmc_bus_ops *bus_ops; // SD总线驱动的操作函数,即SD总线所具备的驱动能力

struct mmc_ios ios; // 配置时钟、总线、电源、片选、时序等 struct mmc_card *card; // 连接到此主控制器的SD卡设备 ... ... };

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

[置顶]Linux设备驱动子系统第二弹 - SD卡 分类: Linux驱动 2010-10-01 19:59 3553人阅读 评论(5) 收藏 举报 1. 总论 2. 主控制器 3. 协议层 4. 块设备 1. 总论 1.1 概念 ? ? MMC - MultiMedia Card SD - Secure Digital Card 1.2 分类 ? 按存储大小,普通SD卡(2GB,<=32GB,支持FAT32) ? 按体积大小,普通SD卡,mini-SD卡,micro-SD卡(TF卡) 1.3 速度 ? ? 默认模式: 12.5MB/s 高速模式: 25MB/s 1.4 子系统代

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com