資料介紹
即插即用,在Linux底下?不好辦,你還是換老的非即插即用設備吧。這是我初次接觸Linux時,那些Linux高手們告訴我的。可是,我覺得總該有辦法的。經過不懈的努力,我發現了兩種方法。一是先從DOS啟動,初始化設備后,再用loadlin加載到Linux中。但這不是我所夢寐以求的,因為每次需要大量時間來啟動。我繼續不停的尋找,終于有一天,我找到了我需要的東西,一個稱為isapnptools的應用程序。
現在,大多數發行套件中都有isapnptools。如果你的套件中有,安裝它即可。如果你的發行套件中沒有它,到http://www.roestock.demon.co.uk/isapnptools/ 去下載一份,解壓后把isapnp 和 pnpdump 拷貝到目錄 /sbin中即可。
下面就是實戰階段了。需要準備的就是把你所有要裝的即插即用設備全部裝好,以ROOT身份登陸。然后運行以下命令/sbin/pnpdump 》 /etc/isapnp.conf,這會把你機器上所有的即插即用設備信息寫入文件/etc/isapnp.conf中,下面是我的機器上的/etc/isapnp.conf文件的一部分:
# $Id: plugnplay.html,v 1.1.1.1 1998/12/26 04:41:14 jack Exp $
# This is free software, see the sources for details.
# This software has NO WARRANTY, use at your OWN RISK
#
# For details of this file format, see isapnp.conf(5)
#
# For latest information on isapnp and pnpdump see:
# http://www.roestock.demon.co.uk/isapnptools/
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER
#
# Trying port address 0203
# Board 1 has serial identifier c5 c0 7f 53 05 01 22 05 07
# Board 2 has serial identifier 5a 80 86 00 01 20 00 a8 65
# Board 3 has serial identifier e8 46 46 46 46 90 30 72 56
# (DEBUG)
(READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
# Card 1: (serial identifier c5 c0 7f 53 05 01 22 05 07)
# Vendor Id AXE2201, Serial Number 3229569797, checksum 0xC5.
# Version 1.0, Vendor version 0.0
# ANSI string --》Ethernet PnP ISA Card /S 《--
#
# Logical device id AXE2201
# Device support I/O range check register
#
# Edit the entries below to uncomment out the configuration required.
# Note that only the first value of any range is given, this may be
# changed if required
# Don‘t forget to uncomment the activate (ACT Y) when happy
(CONFIGURE AXE2201/3229569797 (LD 0
# Compatible device id PNP80d6
# Logical device decodes 10 bit IO address lines
# Minimum IO base address 0x0240
# Maximum IO base address 0x0380
# IO base alignment 32 bytes
# Number of IO addresses required: 32
# (IO 0 (SIZE 32) (BASE 0x0240))
# IRQ 3, 5, 9, 10, 11, 12 or 15.
# High true, edge sensitive interrupt
# (INT 0 (IRQ 3 (MODE +E)))
# (ACT Y)
))
# End tag.。. Checksum 0x00 (OK)
# 略去聲卡部分
#略去modem卡部分
# Returns all cards to the “Wait for Key” state
(WAITFORKEY)
我的系統中共有三個即插即用設備,分別是NE2000兼容網卡,Yamaha OPL~SA2聲卡和一個USR 56K modem。由于文件太長,我略去了聲卡和modem部分。
接下來就是為每個設備分配所需資源。有許多方法可以實現。第一種,也是最簡單的方法就是,如果你在同一臺機器上也裝了WIN95或WIN98,通過控制面板的系統的屬性頁,可以看到在WINDOWS系統下各即插即用設備的資源,記下用到Linux即可。如果你的機器中沒有其它的操作系統,采用第二種方法。即手動分配資源,只要各設備資源不發生沖突就行。手動分配資源以前,最好先看一下已經使用的中斷列表、I/O列列表,它們分別位于/proc/interrupts、/proc/ioports、/proc/dma。一旦你確定了各設備使用的資源,就可以分配了。
選擇分配給每個設備的資源非常簡單。你只要去掉你的設備所需資源前的注釋號即可。描述資源的行很容易找到,因為它們總是以INT, IO或 DMA開頭。在這些行之前是你所能使用資源的描述。你可以選一組,因為象下面這樣的一行說明它們有優先權的區別。
# Start dependent functions: priority preferred
在去掉所需資源的注釋號后,你還必須去掉(ACT Y)行上的注釋號來告訴ISAPNP激活該設備。
下面是我的/etc/isapnp.conf經過編輯并去掉注釋行后的樣本:
READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
(CONFIGURE AXE2201/3229569797 (LD 0
(IO 0 (SIZE 32) (BASE 0x0240))
(INT 0 (IRQ 3 (MODE +E)))
(ACT Y)
))
(CONFIGURE YMH0020/2156265473 (LD 0
(IO 0 (SIZE 16) (BASE 0x0220))
(IO 1 (SIZE 8) (BASE 0x0530))
(IO 2 (SIZE 4) (BASE 0x0388))
(IO 3 (SIZE 2) (BASE 0x0330))
(IO 4 (SIZE 2) (BASE 0x0370))
(INT 0 (IRQ 5 (MODE +E)))
(DMA 0 (CHANNEL 0))
(DMA 1 (CHANNEL 1))
(ACT Y)
))
(CONFIGURE YMH0020/2156265473 (LD 1
(IO 0 (SIZE 1) (BASE 0x0201))
(NAME “YMH0020/2156265473[1]{OPL3-SA2 Sound Chip }”)
(ACT Y)
))
(CONFIGURE USR3090/1179010630 (LD 0
(IO 0 (SIZE 8) (BASE 0x02f8))
(INT 0 (IRQ 3 (MODE +E)))
(NAME “USR3090/1179010630[0]{U.S. Robotics 56K Voice INT}”)
(ACT Y)
))
(WAITFORKEY)
如果喜歡,留著其余的注釋也行。下一步就是測試你的配置是否正確。使用以下命令/sbin/isapnp /etc/isapnp.conf,屏幕會出現一些信息,樣本如下:
Board 1 has Identity c5 c0 7f 53 05 01 22 05 07: AXE2201
Serial No 3229569797 [checksum c5]
Board 2 has Identity 5a 80 86 00 01 20 00 a8 65: YMH0020
Serial No 2156265473 [checksum 5a]
Board 3 has Identity e8 46 46 46 46 90 30 72 56: USR3090
Serial No 1179010630 [checksum e8]
如果你的配置文件有問題或發生資源沖突,它就會告訴你。發生問題不要著急,從頭慢慢查找原因,一步一步再來。如果一切平安無事,你還必須保證你的即插即用設備在啟動時能進行認證。不幸的是許多發行套件的初始腳本執行方式不同。如果你的發行套件中有isapnptools的話,可能你已經有正確的初始腳本。如果沒有,仿照/etc/rc.d/init.d中的格式,自己寫一個。
最后一步是讓你的內核支持即插即用設備。目前,內核支持isapnp設置的即插即用設備的唯一方法是把它們編譯為模塊。所以,對每一個被認為是即插即用的設備,確信把它編譯為內核支持的模塊。
好了,不用再為你的新的設備不能被Linux接受而煩惱了,去盡情享受Linux帶給你的樂趣吧。
?
現在,大多數發行套件中都有isapnptools。如果你的套件中有,安裝它即可。如果你的發行套件中沒有它,到http://www.roestock.demon.co.uk/isapnptools/ 去下載一份,解壓后把isapnp 和 pnpdump 拷貝到目錄 /sbin中即可。
下面就是實戰階段了。需要準備的就是把你所有要裝的即插即用設備全部裝好,以ROOT身份登陸。然后運行以下命令/sbin/pnpdump 》 /etc/isapnp.conf,這會把你機器上所有的即插即用設備信息寫入文件/etc/isapnp.conf中,下面是我的機器上的/etc/isapnp.conf文件的一部分:
# $Id: plugnplay.html,v 1.1.1.1 1998/12/26 04:41:14 jack Exp $
# This is free software, see the sources for details.
# This software has NO WARRANTY, use at your OWN RISK
#
# For details of this file format, see isapnp.conf(5)
#
# For latest information on isapnp and pnpdump see:
# http://www.roestock.demon.co.uk/isapnptools/
#
# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER
#
# Trying port address 0203
# Board 1 has serial identifier c5 c0 7f 53 05 01 22 05 07
# Board 2 has serial identifier 5a 80 86 00 01 20 00 a8 65
# Board 3 has serial identifier e8 46 46 46 46 90 30 72 56
# (DEBUG)
(READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
# Card 1: (serial identifier c5 c0 7f 53 05 01 22 05 07)
# Vendor Id AXE2201, Serial Number 3229569797, checksum 0xC5.
# Version 1.0, Vendor version 0.0
# ANSI string --》Ethernet PnP ISA Card /S 《--
#
# Logical device id AXE2201
# Device support I/O range check register
#
# Edit the entries below to uncomment out the configuration required.
# Note that only the first value of any range is given, this may be
# changed if required
# Don‘t forget to uncomment the activate (ACT Y) when happy
(CONFIGURE AXE2201/3229569797 (LD 0
# Compatible device id PNP80d6
# Logical device decodes 10 bit IO address lines
# Minimum IO base address 0x0240
# Maximum IO base address 0x0380
# IO base alignment 32 bytes
# Number of IO addresses required: 32
# (IO 0 (SIZE 32) (BASE 0x0240))
# IRQ 3, 5, 9, 10, 11, 12 or 15.
# High true, edge sensitive interrupt
# (INT 0 (IRQ 3 (MODE +E)))
# (ACT Y)
))
# End tag.。. Checksum 0x00 (OK)
# 略去聲卡部分
#略去modem卡部分
# Returns all cards to the “Wait for Key” state
(WAITFORKEY)
我的系統中共有三個即插即用設備,分別是NE2000兼容網卡,Yamaha OPL~SA2聲卡和一個USR 56K modem。由于文件太長,我略去了聲卡和modem部分。
接下來就是為每個設備分配所需資源。有許多方法可以實現。第一種,也是最簡單的方法就是,如果你在同一臺機器上也裝了WIN95或WIN98,通過控制面板的系統的屬性頁,可以看到在WINDOWS系統下各即插即用設備的資源,記下用到Linux即可。如果你的機器中沒有其它的操作系統,采用第二種方法。即手動分配資源,只要各設備資源不發生沖突就行。手動分配資源以前,最好先看一下已經使用的中斷列表、I/O列列表,它們分別位于/proc/interrupts、/proc/ioports、/proc/dma。一旦你確定了各設備使用的資源,就可以分配了。
選擇分配給每個設備的資源非常簡單。你只要去掉你的設備所需資源前的注釋號即可。描述資源的行很容易找到,因為它們總是以INT, IO或 DMA開頭。在這些行之前是你所能使用資源的描述。你可以選一組,因為象下面這樣的一行說明它們有優先權的區別。
# Start dependent functions: priority preferred
在去掉所需資源的注釋號后,你還必須去掉(ACT Y)行上的注釋號來告訴ISAPNP激活該設備。
下面是我的/etc/isapnp.conf經過編輯并去掉注釋行后的樣本:
READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING
(CONFIGURE AXE2201/3229569797 (LD 0
(IO 0 (SIZE 32) (BASE 0x0240))
(INT 0 (IRQ 3 (MODE +E)))
(ACT Y)
))
(CONFIGURE YMH0020/2156265473 (LD 0
(IO 0 (SIZE 16) (BASE 0x0220))
(IO 1 (SIZE 8) (BASE 0x0530))
(IO 2 (SIZE 4) (BASE 0x0388))
(IO 3 (SIZE 2) (BASE 0x0330))
(IO 4 (SIZE 2) (BASE 0x0370))
(INT 0 (IRQ 5 (MODE +E)))
(DMA 0 (CHANNEL 0))
(DMA 1 (CHANNEL 1))
(ACT Y)
))
(CONFIGURE YMH0020/2156265473 (LD 1
(IO 0 (SIZE 1) (BASE 0x0201))
(NAME “YMH0020/2156265473[1]{OPL3-SA2 Sound Chip }”)
(ACT Y)
))
(CONFIGURE USR3090/1179010630 (LD 0
(IO 0 (SIZE 8) (BASE 0x02f8))
(INT 0 (IRQ 3 (MODE +E)))
(NAME “USR3090/1179010630[0]{U.S. Robotics 56K Voice INT}”)
(ACT Y)
))
(WAITFORKEY)
如果喜歡,留著其余的注釋也行。下一步就是測試你的配置是否正確。使用以下命令/sbin/isapnp /etc/isapnp.conf,屏幕會出現一些信息,樣本如下:
Board 1 has Identity c5 c0 7f 53 05 01 22 05 07: AXE2201
Serial No 3229569797 [checksum c5]
Board 2 has Identity 5a 80 86 00 01 20 00 a8 65: YMH0020
Serial No 2156265473 [checksum 5a]
Board 3 has Identity e8 46 46 46 46 90 30 72 56: USR3090
Serial No 1179010630 [checksum e8]
如果你的配置文件有問題或發生資源沖突,它就會告訴你。發生問題不要著急,從頭慢慢查找原因,一步一步再來。如果一切平安無事,你還必須保證你的即插即用設備在啟動時能進行認證。不幸的是許多發行套件的初始腳本執行方式不同。如果你的發行套件中有isapnptools的話,可能你已經有正確的初始腳本。如果沒有,仿照/etc/rc.d/init.d中的格式,自己寫一個。
最后一步是讓你的內核支持即插即用設備。目前,內核支持isapnp設置的即插即用設備的唯一方法是把它們編譯為模塊。所以,對每一個被認為是即插即用的設備,確信把它編譯為內核支持的模塊。
好了,不用再為你的新的設備不能被Linux接受而煩惱了,去盡情享受Linux帶給你的樂趣吧。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 可視化即插即用工具箱開源分享
- 電源系統設計:非完全“即插即用”
- 索引即插即用主板REV000
- 索引即插即用主板REV001
- 在linux下安裝Apache+Php+Mysql
- Linux下Apache服務器的安裝和配置
- IT8661F即插即用超級AT IO芯片的用戶手冊免費下載 2次下載
- 如何在Win下安裝linux的虛擬機詳細安裝方法資料概述 3次下載
- 基于即插即用的智能變電站信息自動校核技術 0次下載
- 基于通用即插即用協議服務系統模型 0次下載
- Linux下Qt的安裝 5次下載
- TE Connectivity 即插即用加速度傳感器4807A 0次下載
- TE Connectivity 即插即用加速度傳感器 8811- 0次下載
- 物聯網設備即插即用技術研究 20次下載
- Linux環境下USB的原理、驅動和配置
- 即插即用型一體化盒式DC/DC電源解決方案 669次閱讀
- Linux下的stress-ng壓力測試工具介紹 6257次閱讀
- 即插即用!百度提出S3IM:用于NeRF提點的Magic Loss 540次閱讀
- Linux 下GCC的編譯 2026次閱讀
- Linux 下的make 工具和 Makefile 859次閱讀
- Qt如何安裝在Linux上 2383次閱讀
- 如何通過即插即用數字輸入D類放大器實現卓越的音頻性能 1129次閱讀
- 在Linux下如何安裝和卸載源碼包呢 2679次閱讀
- 基于LM310嵌入式控制器實現USB設備功能的設計 1816次閱讀
- 米爾科技Linux設備驅動研究淺談 1913次閱讀
- 可動態安裝的Linux設備驅動程序 957次閱讀
- 搭建測試環境常用linux命令_linux下web測試環境的搭建 1.1w次閱讀
- 詳細剖析OPC和即插即用技術 5889次閱讀
- usb轉串口驅動安裝方法及問題解決辦法 3.4w次閱讀
- opencv編譯安裝筆記(Linux、Ubuntu ) 5073次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多