SDB:Radeon

跳转到:导航搜索


radeon 驱动程序是适用于几乎所有 ATI Radeon 显卡的 开源 驱动程序。在许多方面,它优于专有的 fglrx 驱动程序 SDB:AMD fglrx,但 3D 性能不如后者。对最新芯片组的支持通常也不如后者。请在本文档中继续操作之前,查看 HCL:AMD 视频卡,以选择最适合您的图形硬件的驱动程序。

我需要安装 radeon 驱动程序吗?

  • 如果您在配备 Radeon 芯片组的计算机上安装了 openSUSE 11.4 或更高版本,则 radeon 驱动程序应该已经安装并正在运行。要检查此,您可以输入终端
lsmod | grep radeon

如果结果是“radeon”,则驱动程序已安装。如果您正在运行图形会话,则可以直接跳到 SDB:Radeon#测试驱动程序

  • 如果您安装或尝试安装专有的 AMD fglrx 驱动程序,则需要完全删除此驱动程序,然后回退到 radeon 模块,然后才能继续。请按照以下指南操作。

安装 radeon 驱动程序

仅当您希望从失败的 fglrx 安装回退到 radeon 驱动程序时才使用此过程,因为 openSUSE 在大多数情况下会自动安装、配置和使用 radeon 驱动程序。

初步准备

  • 如果您的当前设置正常工作,请备份您的 xorg.conf(如果您有的话),并记下您正在使用的驱动程序,以便您必须恢复到正常配置时可以使用。
  • 在 runlevel 3 中工作,您可以在其中安全地编辑图形配置
    • 通过按 Ctrl-Alt-F1 切换到 tty 1 通道。这将使您进入全屏文本登录
    • 以普通用户身份登录
    • 键入“su”(不带引号 - 输入 root 密码)以切换到管理员/root 用户。
    • 键入
      $ init 3

删除专有的 fglrx 驱动程序

  • 运行 AMD 提供的任何卸载脚本。
  • 但是,如果您进行了一键安装或使用 YaST 或 zypper 从存储库安装,请使用 zypper 卸载所有包含“fglrx”的软件包。
    • 搜索已安装的 fglrx 软件包
      zypper se fglrx
    • 删除搜索字符串中找到的任何软件包,不带引号
      zypper rm "找到的软件包名称"
  • 然后运行以下命令以确保最后一次删除所有专有驱动程序软件包
    rpm -qa | grep fglrx

检查 radeon 是否仍然被列入黑名单

fglrx 执行的第一件事之一是将其列入 radeon 模块的黑名单,以防止内核在启动时加载它。需要删除此项

rm /etc/modprobe.d/fglrx.conf

rm /etc/modprobe.d/50-fglrx.conf

具体取决于您的 openSUSE 版本。

X11 配置

当安装 fglrx 时,aticonfig 会创建一个/etc/X11/xorg.conf,其中包含运行 fglrx 的配置详细信息。为了确保您的系统完全清除 fglrx,您需要备份此文件(如果仍然存在),方法是将其重命名为例如“xorg.conf.bc”。

激活 radeon 驱动程序/内核模块

加载 radeon 内核模块

modprobe radeon

并重新启动您的系统

reboot

init 6

测试驱动程序

要确定驱动程序是否正常工作,请在终端窗口中键入以下内容

glxgears

如果一切正常,应该会出现一个带有彩色旋转齿轮的新窗口,并且终端窗口将每五秒开始显示帧速率。完成了。

如果一切都不正常怎么办?

如果您尝试运行 glxgears 或任何其他基于 OpenGL 的应用程序,并看到如下错误消息

X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  135 (GLX)
  Minor opcode of failed request:  19 (X_GLXQueryServerString)
  Serial number of failed request:  17
  Current serial number in output stream:  17

那么很可能存在 OpenGL 实现或直接渲染的问题。请检查以下内容

  • 确保已安装“Mesa”软件包。您可以使用 YaST 执行此操作。
    • 如果您没有 Mesa,请安装它,重新启动 X.Org 服务器,然后再次尝试 glxgears。
  • 在终端中,运行
    glxinfo
    并查找/grep 以下内容
    • direct rendering: 应该显示“Yes”。如果显示“No”,请检查 Xorg 日志以获取更多信息。
    • OpenGL version string: 这应该包含类似“1.5 Mesa 7.6.1”或类似的内容。如果显示任何关于“fglrx”或“ATI”的内容,请确保您已完全卸载专有驱动程序。
  • 检查您的 xorg.conf(如果有)
    • 如果是,请考虑删除/etc/X11/xorg.conf:
      • 因为在大多数情况下,radeon 模块会自动配置您的硬件,而无需配置文件
      • 尝试通过将 xorg.conf 重命名为例如 xorg.conf.bc,然后重新启动 X 服务器来执行此操作。如果失败,请恢复 xorg.conf.bc 文件,然后重新启动
    • 如果您需要保留您的 xorg.conf
      • 确保在“Device”部分,“Driver”设置为“radeon”
      • 确保存在以下部分。如果不存在,请将其添加到末尾
Section "DRI"
   Group      "video"
   Mode       0660
EndSection
  • 检查您的 xorg 日志/var/log/Xorg.0.log或您可能在此处找到的任何其他 xorg 相关日志。这些通常信息量很大。

如果发生内核崩溃

如果在卸载 fglrx 驱动程序后重新启动时发生涉及 radeon 缺失的内核崩溃(出现“无法处理空指针引用”之类的错误消息),这可能是因为 Plymouth 需要 KMS 驱动程序,而 fglrx 安装程序可以取消设置这些驱动程序。要将 radeon 重新添加到 inird 中,以便 Plymouth 正常工作,请以 root 身份打开 /etc/sysconfig/kernel 并编辑以下行

NO_KMS_IN_INITRD="no"

在重新启用 KMS 后,您需要重建 ramdisk,因此以 root 身份运行

mkinitrd

手动配置驱动程序

如今,在大多数情况下,所有 AMD 图形硬件都会自动配置。在这些情况下,无需进一步配置。但是,在硬件未正确配置的情况下,您可以尝试手动配置图形系统。在本文档中,手动配置发生在/etc/X11/xorg.conf带有专门用于您的卡的“Device”部分。在继续操作之前,请考虑这并非没有风险:某些选项可能会导致 X 服务器崩溃。建议您阅读此 论坛帖子,然后再进一步操作。

创建 Xorg.conf

如果您没有任何 xorg.conf(这可能是 openSUSE 11.2 及更高版本的情况),则可以创建一个。

  • 重新启动 PC 到 runlevel 3,如前所述,并以普通用户身份登录
  • 再次,键入“su”(不带引号 - 输入 root 密码)以切换到管理员/root 用户。
  • 然后键入以下内容
    Xorg -configure
  • 这会在 /root 中创建一个 xorg.conf。将此文件复制到正确的位置/etc/X11/xorg.conf
  • 正常重新启动到图形会话
  • 因此,您的默认“Device”部分应如下所示
Section "Device"
  BoardName    "R420 JI"
  Driver       "radeon"
  Identifier   "Device[0]"
  VendorName   "ATI"
EndSection

它可能还包含一些其他选项。以下是一些您可能想要调整或添加的选项(如果它们尚未存在于您的 xorg.conf 中)。完整的选项列表可在 radeon man 页面上找到。

Icon-warning.png
警告:小心调整这些设置。并非所有硬件都支持它们。其中一些可能会导致 X 服务器崩溃,因此请在进行更改之前备份您的 xorg.conf。检查之后提到的选项是否 受您的硬件支持

BusType

Option       "BusType" "AGP"

该值可以是“PCI”、“AGP”或“PCIE”。它应设置为您的卡的总线类型。默认情况下,驱动程序尝试自动检测您的总线,但有时会出错。在我自己的经验中,显式设置我的总线类型大大提高了性能。如果将其设置为“AGP”或“PCIE”导致问题,则可以将其设置为“PCI”,但性能会下降。

AGPMode

Option      "AGPMode" "8"

可接受的值是1", "2", "4" 和8。如果您有 AGP 卡,则应将其设置为您的卡支持的最高值,除非这样做导致不稳定。

请注意,此处在 Xorg.conf(或在/etc/X11/xorg.conf.d/) 中设置 AGPMode 现在(2013 年 3 月)不受支持,您需要编辑/etc/modprobe.d/99-local.conf并添加该行
options radeon agpmode=4
可接受的值是 "1", "2", "4" 和8。请注意,这将取决于您的卡的性能。请记住在更改此文件后运行 mkinitrd

AccelMethod

Option       "AccelMethod" "XAA"

可以设置为“XAA”或“EXA”。XAA 是一种较旧但更稳定的方法。EXA 是新的,应该具有更好的性能。您应该尝试两者,并坚持使用效果最佳的选项。

EnablePageFlip

Option       "EnablePageFlip" "on"

这可以提高 3D 性能,但默认情况下已关闭,因为它并不总是能正常工作。如果您有 R/RV/RS4XX 或更早的卡,除非它导致问题,否则应将其打开。

ColorTiling

Option       "ColorTiling" "on"

启用此功能可以提高 3D 性能。默认情况下应启用此功能。

AccelDFS

Option       "AccelDFS" "on"

默认情况下,AGP 卡已关闭,但其他卡已启用。启用它应该可以提高性能,但它会导致某些 AGP 卡出现问题。


参见

相关文章

外部链接