Patrick Yaner (p_yaner@eos.ncsu.edu) 向我报告了一个康柏的特殊问题。似乎他们将 PCI BIOS 数据区映射到一个隐蔽的内存区域,Linux(或 OS2)无法访问。通常可以找到它,但无法进入,并在启动时给出一条消息(类似于 “pcibios_init: entry in high memory area, unable to access”)。虽然这对显示器(位于 PCI 总线上)和 IDE 控制器(也是 PCI)来说没问题,但这意味着任何其他 PCI 设备,例如以太网卡,都无法被 Linux 检测到。
康柏在 ftp://ftp.compaq.com/pub/softpaq/Drivers/SP1116.ZIP 提供了一个 DOS 驱动程序
但是将此与 Linux 一起使用意味着要使用从 DOS 启动 Linux 的程序,而不是 LILO。请注意,康柏偶尔会更新此存档中的软件,因此文件 ftp://ftp.compaq.com/pub/softpaq/allfiles.html(也可作为 allfiles.txt 获得)可能有助于检查他们是否已升级。
奇怪的是,此信息也可以在 SCSI HOWTO 中找到,尽管 Presario 系列电脑内置了 IDE。
Paul Bame (bame@sde.hp.com) 报告说
Wildcat PCI 芯片组在 1.3 后期版本和所有 2.0 内核中工作良好。
Gateway 2000 G/W 2000 4DX2/66 PCI ATI-Graphics-Ultra-Pro IDE,制造商不详
它工作良好 - 只是 IDE 卡在 ISA 兼容模式下运行,并且当通过 DOS 程序切换到 PCI 模式时速度会快很多... 因此在 Linux 中速度不是很快,如果能有一个补丁就好了。
他使用 ASUS 主板,配备 16MB 内存、基于 ISA 的 S3/928 显卡以及板载 IDE 控制器和希捷 ST4550A 硬盘。他使用较新的 Linux 内核时没有遇到任何问题。
他的问题
在使用 X Window 系统时,我的鼠标响应不如以前习惯的那样。有时会滞后于移动,并且快速移动时会跳跃。我认为这之前在 Linux 新闻组中讨论过(我不记得是哪个新闻组),并且是由于板载串行接口使用了 16550 串行芯片。两周后,我就习惯了 :-)
降低 16550 的阈值应该会有所帮助。应该有一个 setserial 补丁可用,但我不知道在哪里。
ASUS PCI/I-486SP3 主板 (Award BIOS 4.50),16 MB 内存,板载 NCR 芯片已禁用,他使用了 Genoa Phantom/W32 2MB PCI 显卡和一个连接到以下设备的 Adaptec AHA-1542CF (BIOS v2.01):
在创建文件系统时,'mke2fs' (0.4, v. 1.11.93) 挂起,安装无法进行。将 Genoa Phantom/W32 2MB PCI 显卡更换为 ELSA Winner 1000 2MB PCI 显卡后,一切正常。他还用旧的 Eizo VGA-ISA 显卡进行了测试,也工作正常,因此问题出在 Genoa PCI 卡上。
ASUS SP3 主板 i486DX2/66 NCR53c810 已禁用,ISA 插槽中的 Adaptec 1542B 连接了 2 个硬盘驱动器(200MB Maxtor,420MB Fijutsu)、SyQuest 88MB 和 Tandberg Streamer,ELSA Winner 1000 PCI,1MB-VRAM,ISA 插槽中 IRQ 5 的 Soundblaster Pro 声卡,板载 IDE 已禁用,板载串行、并行、FD 已启用。
重启后,机器有时会“挂起”(软重启和硬重启都一样)- 这可能与 Adaptec 和声卡无关,因为即使没有这些,系统有时也无法启动。但是如果可以运行(并且出现 ELSA-WINNER-1000-PCI 消息),则运行正常。
两个串行端口按预期被检测为 16550,但在某些邮箱会话中,V42bis 出现了严重的数据丢失... 问题似乎出在硬件上...
CPU->PCI 突发传输在 DOS/MS-Windows 下似乎工作良好
CPU->PCI 突发传输在 linux0.99p15 下无法正常工作,在切换虚拟控制台时会出错,在调用像 ghostview 或 xdvi 这样的大型应用程序时会完全崩溃,并使 SCSI-LED 灯亮起 (!)。
(我怀疑这些应用程序会使用大量的 CPU->PCI 突发传输,因为需要向 PCI-Winner-1000 传输大量数据)
禁用 CPU->PCI 突发传输后,它工作良好,Winner-1000 在 1152x846 分辨率下(1MB 显存没有太多字体缓存)跑分 93k xstones。使用 twm 的 OpaqueMove 效果非常好 :-)
他有一个 SATURN.EXE 程序,在启动 Linux 之前在 DOS 下加载,有助于在不挂起的情况下启用突发传输...
有人指出,关闭 Adaptec 上的“同步协商”可能会解决这些问题 - 我不知道这是否也适用于 adaptec1542B?但我猜是这样。
启用 CPU->PCI 突发传输后,跑分达到 95k xstones,因此他认为不用也问题不大。他唯一的问题是,他想让 Winner-1000 在 1152x900 分辨率下运行,但失败了,因为它似乎将任何高于 1024 像素的 x 分辨率都视为 1280 像素分辨率,从而浪费了很多,最终导致 y 分辨率为 816 像素... 但这可能不是 PCI 相关的问题。它应该在 XFree86-2.1 中得到解决。
他的 PCI 插槽中目前没有任何设备,但想购买 PCI 显卡,目前使用 WD7000 SCSI 控制器,但一旦驱动程序发布,将切换到板载 NCR 芯片。
一切工作完美 - 第一个串行端口连接了一个 14.4K 调制解调器,在之前使用过调制解调器后重新连接时,偶尔会挂起。他说这并非 ASUS 独有,而是 SMC-LSI 设备及其 16550UART 中的一个错误。第二个端口上的 logitech 串行鼠标工作正常。降低鼠标端口 16550 的阈值肯定会有所帮助,似乎确实需要一个特殊的修补过的 setserial?我还没有得到相关信息,如果您知道更多,请联系我!
一切似乎都运行良好,但他尚未尝试联网、打印或流媒体。在应用集群补丁之前,他曾遇到由“find”触发的挂起问题,但现在已不再出现这种情况 - 也许是旧内核的错误。
ELSA-Winner-1000 显卡有时会挂起,屏幕上出现非常奇怪的图案,只能通过重启解决... 经销商告诉他这是 ELSA 显卡的一个 bug,但制造商声称已经解决了这个问题。该 bug 无法重现,因此他目前不打算采取任何行动。
总而言之,这台机器在繁重的文本处理(emacs、LaTeX、xfig、ghostview)使用下似乎工作得非常好。交互响应速度惊人地快,与他使用的价格是其 3-4 倍的 Sun 工作站几乎没有区别...
CPU->PCI 突发传输仍然被禁用,因为 BIOS 对 PCI 功能的支持不好?
他的新调制解调器 (v32 terbo) 出现了一个问题:它会丢失字符。尤其是在使用 SLIP 时,它会大量抱怨 RX 和 TX 错误。一旦他运行 X Window 系统,它就变得无法使用。他说他使用 stty 激活了 FIFO 和 RTS/CTS,但无济于事...
在配备可怕的 CMD PCIO640B (E)IDE 控制器的 UMC8500-100Mhz 主板上运行 Linux 1.2.12 时,启动时屏幕会晃动几秒钟,似乎 Diamond Stealth64-DRAM (S3 864) 需要先预热一下,但他可以接受。
PCI48IX 主板 Rev. 1.0。制造商:??? 文档版权所有者:“exrc”。BIOS 对 PCI 的描述不多。
他的 E-315E Super IDE UMC (863+865) ISA 控制器卡确实存在问题。(这是一张多功能控制器卡)。它在 DOS/OS2 下似乎工作良好,但在 Linux 下不行。