首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于S3C2410的SD卡linux驱动工作原理 02

基于S3C2410的SD卡linux驱动工作原理 02

中断、DMA


(1)
POLL










2)中断写









3DMA










三、sd


sd卡也可分为3中方式:POLL、中断、DMA


(1)
POLL









2)中断读





\
(3) DMA







了解了脱离操作系统的工作原理后,现在可以思考linux是如何管理管理SD卡的了。Linux中SD驱动可以分为3层:块设备层(mmc_block.c ,mmc_sysfs.c,mmc_queue.c)、mmc协议层(mmc.c)、sd驱动层(s3c2410_sdi.c)。


下面从以下几个方面理解驱动:

      1s3c2410_sdi.c代码初始化过程;

      2SD卡块设备注册过程;
      3request及数据传输的实现。


下面介绍的过程参考的代码是我们华清远见培训中心在教学中使用的一套代码,
返回列表