电竞比分网-中国电竞赛事及体育赛事平台

分享

Linux2.6 USB HOST驅動于華恒開發(fā)板上的移植(1)

 Archangel 2007-08-07
Linux2.6 USB HOST驅動于華恒開發(fā)板上的移植(1)
2007-5-24 13:56:00

                                               ――作者:blackmoon

上完鄭靈翔老師的emb課程受益頗多。學emb已經(jīng)兩年了,一直存在的感覺就是emb很麻煩,動不動就是兩個字“移植”。硬件,OS等隨便其中一個平臺不一樣都可能導致“移植”操作,沒辦法,普通的人很難在短時間內(nèi)翻寫所有的代碼,只能延用別人的代碼。不過好在Linux的代碼大多都是GPL的,不存在收費、版權的問題。但是還是得看懂別人代碼,也許有人說看代碼容易呀!至少我不是這么認為的…….

這次接到的課題是有關USB的,看題目寫了很多,總結起來無非就是我文章的題目,再加個可以讀寫U盤的要求。好了,來談談我對這課題的一些心得。首先應該要清楚認識移植驅動無非就是修改驅動代碼、同時修改OS內(nèi)核配置,不管是在Linux還是在ce中都是一樣,ucos就無所謂內(nèi)核配置的問題了(其實其他的OS我也不懂,呵呵)。首先進入內(nèi)核drivers/usb目錄,可以看到很多文件夾,憑借經(jīng)驗可知host是底層HCD的驅動代碼所在,core自然就是USB核心層USBD的代碼,其他的如music、input、storage等是設備層的驅動。(如果對USB驅動的分層結構還不懂的,可以參考一些其他的書籍,我就不多說了)

其中,我所要關心的就三個文件夾,host、storagecore。基本上也可以確定storagecore文件夾里面得代碼是不需要修改的,它們和硬件層無關。進入host,可以看到很多ehci,ohci,uhci開頭的文件。由于開發(fā)板采用的是S3C2410,所以基本上就可以把目標鎖定在ohci上,可以看到有ohci-s3c2410.c文件,確定內(nèi)核包自帶對2410的支持。能不能直接使用,初步看代碼好像都沒有問題。存著僥幸的心里,我直接進行內(nèi)核配置。切到主目錄下,利用make xmu_hharm9_defconfig命令進行默認配置,接著執(zhí)行make xconfig,進入內(nèi)核配置界面。

1)確保General setup  --->  

  Configure standard …….中的Support for hot-pluggable devices是選上(我都是用打勾將模塊直接編進內(nèi)核,下面雷同)的,要使用U盤就得使內(nèi)核支持設備的熱插拔。

2)到Device Drivers à

SCSI device supprot
 
因為在linux中會U盤設備將被模擬成SCSI設備,所以要使內(nèi)核能夠支持SCSI設備。

3)到Device Drivers à

      USB support
 


 

4)到File systemsà

DOS/FAT/NT Filesystems
 

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多