Next Previous Contents

2. 是ISA还是PCI?

2.1 PCI ?

嗯,知道了,我们现在知道我们的猫是一只瘟猫了。但是瘟猫有两种类型:ISA或是PCI的。可恶的厂商们为了让事情变得更糟糕,故意把两种接口做的非常不同。所以,现在我们就要测试一下我们的猫是PCI的还是ISA的。首先,必须要配置一把内核。在make *config的过程当中,必须对下列问题回答'yes':

如果您从未重编译过内核,可能您使用的发行套件的内核就已经包含这些东西。如果想重编译内核,而且您还从未干过这样的事情,请参阅Kernel-HOWTO.

现在,我们假定您的新内核已经安装妥当。

现在请运行'cat /proc/pci'命令。如果您在命令行返回的结果当中看到了您的猫的名字,那么您的猫是PCI瘟猫。请跳至'安装驱动程序'一节

2.2 难道是ISA的?

如果您还没有找到您的猫,很有可能您拿到的是一只ISA的猫。怎么确定是ISA猫呢?

ISA的支持在内核是不考虑直接支持的(2.4.*系列内核会考虑,但是目前它还是不够稳定的)。这里有一个第三方的软件,名字就叫isapnp,是用来检测ISA设备的。首先您必须确认您已经安装了该软件包。如果还没有安装,也可以通过下载isapnptools软件包来解决。

一旦isapnptools已经安装好,我们先运行一个特定程序,叫pnpdump。它可以检测您的电脑系统,从中寻找出ISA设备来。在运行当中,程序试图检测设备所使用的资源并将这些资源打印到文件/etc/isapnp.conf当中。然后,您需要编辑该文件并执行另外一个程序isapnp。该程序会读取isapnp.conf文件并自动配置您的设备。

嗯?听起来很难么?那就走一走以下的步骤吧:

1. 请执行'pnpdump > /etc/isapnp.conf'。

2. 请使用您最喜欢的文本编辑器来编辑该文件。

3. 定位到描述您的猫的节段部分。

4. 去掉文件当中的某些行列的注释(就是去掉行首的#号啦)。您得:

1 line '(IO 0 ...)'

1 line '(INT 0 ...)'

1 line '(DMA 0 ...)'

1 line '(DMA 1 ...)'

1 line '(IO 1...)'

5. 请删除掉所有未注解IO行当中的'(CHECK)'

6. 请执行'isapnp /etc/isapnp.conf'。如果提示有错,请根据您得到的错误信息,编辑文件isapnp.conf并变更参数。如果没有错误提示,编辑文件isapnp.conf并解除描述您的猫的节段部分的'(ACT Y)'行注释。然后再执行'isapnp /etc/isapnp.conf',系统会提示您" [[Name of your modem]] Enabled OK"

7. 请把'isapnp /etc/isapnp.conf'添加到您的/etc/rc.d/rc.local当中,方法是输入 'echo "isapnp /etc/isapnp.conf" >> /etc/rc.d/rc.local'。在每一次的系统启动的设备自动配置时,这会起到很大作用。

如果能对大家有帮助的话,以下就是我的/etc/isapnp.conf文件的摘录(我已经在文件当中注释了,原文件的注释以##打头)



# Snip details ...
## (DEBUG)
(READPORT 0x0203)
(ISOLATE PRESERVE)
(IDENTIFY *)
(VERBOSITY 2)
(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING

# 我的猫卡的辩识信息

## Card 1: (serial identifier e2 00 00 01 00 05 50 c3 1e)
## Vendor Id GVC5005, Serial Number 256, checksum 0xE2.
## Version 1.0, Vendor version 0.1
## ANSI string -->LT Win Modem<--
##
## Logical device id HSM0140
##     Device support I/O range check register
#

# 我们要配置 GVC5005/256 卡

(CONFIGURE GVC5005/256 (LD 0

# I/O Base address 0x03f8, with a range of 8
(IO 0 (SIZE 8) (BASE 0x03f8) )
# IRQ 4
(INT 0 (IRQ 4 (MODE +E)))
# DMA 5
(DMA 0 (CHANNEL 5))
# DMA 7
(DMA 1 (CHANNEL 7))
# I/O Base Address 2  0x0100, range 8
(IO 1 (SIZE 8) (BASE 0x0100) )
# 卡的名称
 (NAME "GVC5005/256[0]{LT Win Modem        }")
# 激活之
(ACT Y)
# 结束配置
))

######## The parameters for my other ISA devices ##############
 
## Returns all cards to the "Wait for Key" state
(WAITFORKEY)


Next Previous Contents