歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> Linux Soundblaster 16 PnP Mini-Howto

Linux Soundblaster 16 PnP Mini-Howto

日期:2017/2/27 14:15:02   编辑:更多Linux
  Linux Soundblaster 16 PnP Mini-Howto by Eric Z. Ayers v1.0, 14 January 1997 很高興地,我的太太給我一塊嶄新的音效卡作為生日禮物.但不幸地,這塊 Soundblaster 16 PnP 音效卡拒絕在 Linux 下工作.事實上,我的 3com 3c509 網路卡也不能在 Linux 下運作. 最後,在隨附核心而來的 Linux 音效卡驅動程式及由 FTP://ftp.redhat.com/pub/utils/isapnptools-1.8.tgz 取得的 isapnp 套件的協助下我終於讓我的硬體能運作了. 結果是我必須面對兩項主要的困難以便讓音效卡能工作.第一個困難是我不 知道用來和音效卡溝通的 IRQ 及輸出入埠(IO ports)位址.這點由 isapnp 工具套件所解決.第二個問題是 3c509 乙太網路卡.似乎不論我怎麽去改變 卡上的設定,Linux 的核心都沒辦法認出這塊乙太網路卡.結果是因為有一 個音效卡上的裝置和 3c509 的偵測程式碼相沖. 1) 安裝 isapnp 套件.編輯 /etc/isapnp.conf 使得音效卡的 IRQ 及輸出 入埠位址不會和你的任何其它裝置相沖. 2) 重建 Linux 核心.將音效支援變成一可載入模組,其中 IRQ, 輸出入及 DMA 位址就如 isapnp.conf 所配置的.同時也將你的 3c509 做成一模組 (在編譯及安裝完你的核心之後不要忘了執行 make modules 及 make modules_install). 3) 修改你系統的啟動程序稿. 我在跑的是 Slackware 套件而核心版本是 2.0.23.在網路被設定之前,我 執行 isapnp 程式 (在 /etc/rc.d/rc.M 裡就在 hostname 被設定之後): # EZA # 設定即插即用裝置 /sbin/isapnp /etc/isapnp.conf 然後,我在 /etc/rc.d/rc.inet1 所做的第一件事是載入網路卡驅動程式 # EZA # 載入網路卡模組 /sbin/insmod 3c509 我忽略了啟動時動態偵測乙太網路卡無法運作的警告訊息,因為它對我沒 有影響.最後,在 /etc/rc.d/rc.local 裡我插入了音效卡驅動程式模組: /sbin/insmod sound 更多關於 Linux 即插即用裝置的資訊可在 http://www.redhat.com/linux-info/pnp/ 找到.我現在快樂地以 Real-Audio player 享用網路並且聆聽由我的光碟機所撥放的 CD 音樂. Eric Ayers [email protected] --------------------------------------------------------------------------- 這兒有份我的 isapnp.conf 的拷貝,大部份的注解都已去掉. # Trying port address 0203 # Board 1 has serial identifier 67 00 00 40 17 2b 00 8c 0e # (DEBUG) (READPORT 0x0203) (ISOLATE) (IDENTIFY *) # Card 1: (serial identifier 67 00 00 40 17 2b 00 8c 0e) # CTL002b Serial No 16407 [checksum 67] # Version 1.0, Vendor version 2.0 # ANSI string -->Creative SB16 PnP<-- # # Logical device id CTL0031 # # 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 r equired


# Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL002b/16407 (LD 0 # ANSI string -->Audio<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # IRQ 5. # High true, edge sensitive interrupt (by default) (INT 0 (IRQ 5 (MODE +E))) (DMA 0 (CHANNEL 1)) (DMA 1 (CHANNEL 5)) (IO 0 (BASE 0x0220)) (IO 1 (BASE 0x0330)) (IO 2 (BASE 0x0388)) (ACT Y) )) (CONFIGURE CTL002b/16407 (LD 1 (INT 0 (IRQ 11 (MODE +E))) (IO 0 (BASE 0x01e8)) (IO 1 (BASE 0x03ee)) (ACT Y) )) (CONFIGURE CTL002b/16407 (LD 2 # ANSI string -->StereoEnhance<-- # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0100 # Maximum IO base address 0x0138 # IO base alignment 8 bytes # Number of IO addresses required: 1 #(IO 0 (BASE 0x0100)) #(ACT Y) )) (CONFIGURE CTL002b/16407 (LD 3 (IO 0 (BASE 0x0200)) (ACT Y)))



#(IO 0 (BASE 0x0100)) #(ACT Y) )) (CONFIGURE CTL002b/16407 (LD 3 (IO 0 (BASE 0x0200)) (ACT Y)))



Copyright © Linux教程網 All Rights Reserved