a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于S3C2410的SD卡linux驅動工作原理

基于S3C2410的SD卡linux驅動工作原理

作者: 時間:2016-10-08 來源:網絡 收藏

我在講嵌入式Linux驅動開發班的時候,發現不少學員對SD卡驅動這塊比較感興趣,課下來找我探討。而在很多技術論壇,也有不少人問這方面的問題,所以就想寫一下這方面的內容,希望對大家的學習能有所幫助。想了解SD卡的工作原理,首先需要了解的就是SD卡協議了,這個在網上可以輕松的下載到。在了解協議后,就可以看看下面的一些開發思路了。

本文引用地址:http://www.j9360.com/article/201610/305843.htm

首先看下脫離操作系統如何在S3C2410上實現SD卡的讀寫。過程可以分為3個大的步驟:初始化sd卡、寫sd卡、讀sd卡;下面的過程是我通過realview-MDK環境測試過的。

一、初始化sd卡

二、寫sd卡

寫sd卡可以分為3種方式:POLL、中斷、DMA

(1) POLL寫

(2)中斷寫

(3)DMA寫

三、讀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)。

下面從以下幾個方面理解驅動:

1、s3c2410_sdi.c代碼初始化過程;

2、SD卡塊設備注冊過程;

3、request及數據傳輸的實現。

下面介紹的過程參考的代碼是我們華清遠見培訓中心在教學中使用的一套代碼,內核版本是2.6.8,其它版本過程類似。

一、s3c2410_sdi.c代碼初始化過程

二、SD卡塊設備注冊過程

三、request及數據傳輸的實現



關鍵詞:

評論


相關推薦

技術專區

關閉