精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>系统管理>>系统设置与技巧>>系统相关之howto>>系统相关的 : 如何增加ISA PnP驱动程序

主题:系统相关的 : 如何增加ISA PnP驱动程序
发信人: neal()
整理人: hahalee(1999-04-22 02:54:16), 站内信件

        要在 FreeBSD 下使用 ISA PnP 界片卡,必须 patch 你的 kernel,以下
 
        以 SB32 PnP 为例,简单介绍一下如何驱动 ISA PnP。 
        (PCI 的卡并不需要如此) 
         
        1. 取得 PnP kernel patch (适用於 FreeBSD-2.1.x, 2.2.x) 
           $ cd /tmp 
           $ fetch ftp://freebsd.csie.nctu.edu.tw/pub/jdli/collect/isa_pnp/
 \ 
             FreeBSD-pnp.tgz 
           $ tar xvfz FreeBSD-pnp.tgz 
 
        2. patch 你的 kernel source 
           $ cd /usr/src/sys (或是 cd /sys) 
           $ patch -p0 <
/tmp/FreeBSD-pnp/kernel.patch.2.2-current
(如果是 FreeBSD-2.1.x 请用 kernel.patch.2.1.5)

3. 编译 pnpinfo 指令,并取得 ISA PnP 装置资讯
$ cd /tmp/FreeBSD-pnp/pnpinfo
$ make
$ ./pnpinfo > output 
            
        4. 修改 /sys/i386/isa/pnp.c 
           这是最麻烦的一个步骤,你必须手动修改 /sys/i386/isa/pnp.c,依照 
           output 的内容,加入适当的 ISA PnP 装置定义,你可以从 
           /tmp/FreeBSD-pnp/sample/ 找到一些□例,一样画葫芦把你的 ISA 
PnP 
           装置定义加到 /sys/i386/isa/pnp.c 的 cinfo[] (约在 line 50) 中。 
           你必须特别注意 pnpinfo output 中的『Board Serial Number』
『IRQ』 
           『DMA』『I/O Range』等定义。 
         
        5. 在 kernel config file 中加入『controller pnp0』 
         
        6. 在 kernel config file 中加入该装置的驱动程式,例如: 
           a) NE2000 相容卡需要: 
              device ed0 
           b) SB16/32 PnP 需要 
              controller snd0 
              device sb0 at isa? port 0x220 irq 5 conflicts drq 1 vector 
sbintr 
              device sbxvi0 at isa? drq 5 
              device sbmidi0 at isa? port 0x330 
              device opl0 at isa? port 0x388 
              device awe0 at isa? port 0x620 
 
        7. 重新编译 kernel。如果是音效卡,请在 /dev 下执行 ./MAKEDEV 
snd0 
           以建立 sound device。 
 
        PS. 如果你有在利用 CTM/CVSup 不断更新您的系统,你最好另外 copy 
            一份 /usr/src/sys 到 /tmp/ 下,然後将 kernel patch 到 /tmp/ 
            下的那一份,以免影响你原来的 /usr/src/sys。 

--
※ 来源:.网易 BBS bbs.netease.com.[FROM: dmx320.resnet.ust.hk]

[关闭][返回]