1. 程式人生 > >如何配置核心,以支援USB裝置。

如何配置核心,以支援USB裝置。

在載入模組時,我們只需要執行modprobe xxx.o就可以了(modprobe主要載入系統已經通過depmod登記過的模組,insmod一般是針對具體.o檔案進行載入

對應USB裝置下面一些模組是關鍵的。

usbcore.o 要支援usb所需要的最基礎模組 
usb-uhci.o (已經提過) 
usb-ohci.o (已經提過) 
uhci.o 另一個uhci驅動程式,我也不知道有什麼用,一般不要載入,會宕機的 
ehci-hcd.o (已經提過 usb2.0) 
hid.o USB人機介面裝置,像滑鼠呀、鍵盤呀都需要 
usb-storage.o USB儲存裝置,U盤等用到 


相關模組

ide-disk.o IDE硬碟 
ide-scsi.o 把IDE裝置模擬SCSI介面 
scsi_mod.o SCSI支援 

注意kernel config其中一項:

Probe all LUNs on each SCSI device

最好選上,要不某些同時支援多個口的讀卡器只能顯示一個。若模組方式就要帶引數安裝或提前在/etc/modules.conf中加入以下項,來支援多個LUN。

add options scsi_mod max_scsi_luns=9 

sd_mod.o SCSI硬碟 
sr_mod.o SCSI光碟 
sg.o SCSI通用支援(在某些探測U盤、SCSI探測中會用到) 


常見USB裝置及其配置

在Linux 2.4的核心中已經支援不下20種裝置。它支援幾乎所有的通用裝置如鍵盤、滑鼠、modem、印表機等,並不斷地新增廠商新的裝置象數碼相機、MP3、網絡卡等。下面就是幾個最常見裝置的介紹和使用方法:

USB滑鼠:

鍵 盤和滑鼠屬於低速的輸入裝置,對於已經為使用者認可的PS/2介面,USB鍵盤和USB滑鼠似乎並沒有太多更優越的地方。現在的大部分滑鼠採用了PS/2接 口,不過USB介面的滑鼠也越來越多,兩者相比,各有優勢:一般來說,USB的滑鼠介面的頻寬大於PS/2滑鼠,也就是說在同樣的時間內,USB滑鼠掃描 次數就要多於PS/2滑鼠,這樣在定位上USB滑鼠就更為精確;同時USB介面滑鼠的預設取樣率也比較高,達到125HZ,而PS/2介面的滑鼠僅有 40HZ(Windows 9x/Me)或是60HZ(Windows NT/2000)。

對於USB裝置你當然必須先插入相應的USB控制器模組:usb-uhci.o或usb-ohci.o

modprobe usb-uhci

USB滑鼠為了使其正常工作,您必須先插入模組usbmouse.o和mousedev.o


modprobe usbmouse
modprobe mousedev




若你把HID input layer支援和input core 支援也作為模組方式安裝,那麼啟動hid模組和input模組也是必要的。


modprobe hid
modprobe input




USB鍵盤:

一 般的,我們現在使用的鍵盤大多是PS/2的,USB鍵盤還比較少見,但是下來的發展,鍵盤將向USB介面靠攏。使用USB鍵盤基本上沒有太多的要求,只需 在主機板的BIOS設定對USB鍵盤的支援,就可以在各系統中完全無障礙的使用,而且更可以真正做到在即插即用和熱插拔使用,並能提供兩個USB連線埠:讓 您可以輕易地直接將具有USB接頭的裝置接在您的鍵盤上,而非計算機的後面。

同樣你當然必須先插入相應的USB控制器模組:usb-uhci.o或usb-ohci.o


modprobe usb-uhci




然後您還必須插入鍵盤模組usbkbd.o,以及keybdev.o,這樣usb鍵盤才能夠正常工作。此時,執行的系統命令:


modprobe usbkbd
modprobe keybdev




同樣若你把HID input layer支援和input core 支援也作為模組方式安裝,那麼啟動hid模組和input模組也是必要的。

U盤和USB讀卡器:

數 碼儲存裝置現在對我們來說已經是相當普遍的了。CF卡、SD卡、Memory Stick等儲存卡已經遍及我們的身邊,通常,他們的讀卡器都是USB介面 的。另外,很多MP3、數碼相機也都是USB介面和計算機進行資料傳遞。更我們的U盤、USB硬碟,作為移動儲存裝置,已經成為我們的必須裝備。

在Linux下這些裝置通常都是以一種叫做usb-storage的方式進行驅動。要使用他們必須載入此模組