12.6. 图形芯片

12.6.1. Linux 兼容性检查

12.6.1.1. 视频模式

注意:SuperProbe 已被弃用。SuperProbe 工具是 XFree86 的一部分,能够检查许多图形芯片。请仔细阅读文档,因为它可能会导致硬件崩溃。摘自 man SuperProbe

"SuperProbe 是一个程序,它将尝试通过在不同位置检查各种组合中的已知寄存器来确定安装在 EISA/ISA/VLB 总线系统中的视频硬件类型(MicroChannel 和 PCI 机器可能未完全支持;许多机器可以通过使用 -no_bios 选项来工作)。这是一个容易出错的过程,尤其是在 UNIX 上(它通常比 MS-DOS 系统安装了更多深奥的硬件),因此 SuperProbe 可能需要用户的帮助。"

"目前,SuperProbe 可以识别 MDA、Hercules、CGA、MCGA、EGA、VGA 以及一大堆 SVGA 芯片组(请参阅下面的 -info 选项)。它还可以识别 SVGA 板上使用的几种 HiColor/True-color RAMDAC,以及已安装的显存量(对于许多芯片组)。它可以识别 8514/A 和一些衍生产品,但不能识别 XGA 或 PGC(尽管作者打算添加这些功能)。它也不能识别其他深奥的视频硬件(如 Targa、TIGA 或 Microfield 板)。"

出于测试原因,使用 X 2> <error.msg> 启动 X11 服务器。并尝试通过键入 <CTL><ALT><+><CTL><ALT><-> 来更改分辨率。注意:+ 或 - 符号必须从数字小键盘获取,数字小键盘可以在字母键盘上或通过某些笔记本电脑上的 Fn 键进行模拟。

12.6.1.2. 文本模式

只需观察显示器,并确定它是否正常工作。如果不是,请尝试在启动时启用不同的视频模式。设置 X11 有时可能是一个反复试验的过程。

12.6.2. 相关文档

  1. 首先是 XFree86 文档 本身。通常在本地可访问于/usr/share/doc/xfree86*。或者 X.Org 文档。

  2. XFree86-HOWTO

  3. XFree86-Video-Timings-HOWTO

  4. XFree86-XInside-HOWTO

  5. X-Big-Cursor-mini-HOWTO(在低对比度 LCD 的笔记本电脑上运行 X11 时很有用)

  6. Keyboard-and-Console-HOWTO

  7. Framebuffer-HOWTO

12.6.3. X11 服务器概览

您可能会发现您的笔记本电脑的某些功能不受 XFree86X.Org 支持。例如,高分辨率、加速 X 或外部显示器。因此,我给出一个可用 X11 服务器的概览。

  1. XFree86

  2. X.Org.

  3. VESA 帧缓冲设备,可用于 2.2.x 内核和 XFree86 3.3.2 或更高版本。请参阅 FBDev.ORGFB FAQ 以及内核源代码/usr/src/linux/Documentation .

    请查看最新版本的 DirectFB,以获取 NeoMagic 芯片和其他芯片组的专用帧缓冲驱动程序,并支持加速。DirectFB 是一个轻量级库,为开发人员提供硬件图形加速、输入设备处理和抽象,一个集成的窗口系统,支持半透明窗口和 Linux 帧缓冲设备之上的多显示层。它是一个完整的硬件抽象层,为底层硬件不支持的每个图形操作提供软件回退。

  4. Xi Graphics,商业版,以前也称为 AcceleratedX 或 Xinside。

  5. SciTech,商业版。

  6. Metro-X,商业版。

如果您无法获得合适的 X11 服务器,但又负担不起商业 X11 服务器,您可以尝试 VGA16 或 XFree86 中包含的单色服务器。

12.6.4. 资源

您可以在 TuxMobil 找到关于 笔记本电脑和笔记本电脑中使用的当前图形芯片 的调查。

12.6.5. 外部显示器:LCD、CRT、电视、投影仪

有几种不同的方法来激活对外部显示器的支持:作为 BIOS 选项 或在运行时通过 按键,例如 <Fn>+<F4>

仔细阅读关于您的图形芯片的 X11 文档,例如对于 NeoMagic NM20xx 芯片,您必须编辑/etc/XF86Config通过配置 intern_dispextern_disp。注意:据我所知,这些选项仅对 XFree86 3.3.x 有效,对于 XFree86 4.x,我找不到类似的选项。

如果您无法使外部显示器与 XFree86 一起工作,请尝试上述商业 X11 服务器的演示版本。另请查看 RedHat 和 SuSE WWW 网站,因为它们可能有新的、仅二进制的 X11 服务器,可能与您的笔记本电脑一起工作。或者查看来自 X.Org 的 X11 服务器。

12.6.5.1. 工具

atitvout 实用程序可用于在 x86 上的 GNU/Linux 下为 ATI Rage Mobility P/M 显卡的 TV Out 连接器执行多个配置命令。它主要用于在启动后启用 TV Out 支持,以及将使用的电视标准从 NTSC 切换到 PAL。

s3switch 将允许您在 Savage 支持的各种输出设备(CRT、LCD、TV)之间切换显示。

nv-tv-out 是一个在 Linux 上为 NVidia 显卡启用 TV-Out 的工具。它不需要内核,支持多个电视编码器芯片。您可以使用芯片的所有功能,直至直接寄存器访问,以及芯片支持的所有分辨率和尺寸。

i810switch 是一个用于打开和关闭 LCD 和外部 VGA 显示器的实用程序,适用于 Intel i8xx 系列的几乎所有图形芯片,包括 Centrino。

i855crt 是一个用户空间驱动程序,可以在基于 Intel 855GM 的笔记本电脑上启用 CRT 输出(外部显示器端口)。

12.6.5.2. 解决方案

Klaus Weidner 描述了一种 双显示器设置,不使用 xinerama,而是使用 x2vnc。这种方法允许动态添加和删除第二个显示器,而无需重新配置或重新启动任何内容。

12.6.6. 显卡电源管理

通过启用显卡的电源管理功能,可以提高电池的运行时间。有一些工具可用于更改时钟频率和关闭显示器的背光。通常,这些工具特定于显卡或显卡制造商。以下是 ATI 显卡的一些技术。

专有的fglrx来自 ATI 的驱动程序需要通过将 PowerState 选项添加到 Device Section 中的/etc/X11/xorg.confX11 配置文件

Section "Device"
Identifier "aticonfig-Device[0]"
Driver "fglrx"
Option "PowerState" "1"
EndSection

重新启动或重新启动 X11 后,您可以使用命令 aticonfig --set-powerstate=1 --effective=now 启动省电模式。使用 aticonfig --list-powerstates 获取所有可用的电源状态。

对于 ATI Radeon 显卡,可以使用 rovclock 工具来节省电量,例如 rovclock -c 80 -m 80 仅使用 80MHz 的芯片和内存频率。如果关闭盖子或使用额外的按键不是一种选择,则命令 radeontool light off 会关闭背光。

Holger Macht 在 2.6.x 中为 IBM、Toshiba、ASUS 笔记本电脑提供的 ACPI 背光驱动程序 增加了对以下通用背光接口的支持/sys/class/backlight。该补丁保留了 procfs 亮度处理以实现向后兼容性。为了实现这一点,该补丁添加了两个通用函数 brightness_get 和 brightness_set,供 procfs 相关方法和 sysfs 相关方法使用。

12.6.7. 杂项

有时您可能会遇到显示器在文本模式下无法正常工作的情况。目前我没有任何建议,请参阅 Keyboard-and-Console-HOWTO

请注意背光,据我所知,此设备只能承受有限次数的正常运行时间循环。因此,请避免过多使用屏幕保护程序。

对于 X Windows 和 APM 的问题,请参阅 APM 章节。

vbetool 使用 LRMI 以便从视频 BIOS 运行代码。目前,它能够更改 DPMS 状态、保存/恢复显卡状态,并尝试从头开始初始化显卡。它的存在主要是为了增加在 ACPI S3 挂起到 RAM 后成功恢复视频状态的机会。