FreeBSD ATI显卡与xorg配置记录

ATI显卡与xorg配置记录

ATI与NVIDA显卡是当前的两大主流显卡,相对来说ATI在被AMD收购以前对开源社区的支持不太热情,在FreeBSD中的驱动依赖于开源社区自己的努力。

对相对较新的显卡,主要使用radeon.ko模块和drm.ko模块驱动。具体支持的型号可以man radeon查询。 依据实验的情况和在google检索的结果,radeon驱动尚不支持AIGLX,compize fusion无法在7.0 beta2中正常工作。但radeon支持比较简单的3D建模,xfce4中已经可以使用混合模式,显现阴影和透明效果。(具体使用方法见设置–窗口管理器调整–混合设置)

目前radeon驱动已经支持AIGLX,2D/3D加速等特性。实验证明,在KDE4.5.1中,ATI Radeon 3470独立显卡可以开启KWin特效,并且跑得还挺流畅。

另一个需要说明的是ATI显卡支持XAA和EXA两种加速模式,其中EXA方式比较新,性能好出很多,特别在KDE桌面环境之下速度的提高比较明显,最近使用的情况来看也足够stable,建议在可能的情况下打开此选项。

案例:IBM T41,FreeBSD 7.0-beta2下/etc/X11/xorg.conf部分配置

Section "ServerLayout"
   Identifier     "XFree86 Configured"
   Screen      0  "Screen0" 0 0
   InputDevice    "Mouse0" "CorePointer"
   InputDevice    "Keyboard0" "CoreKeyboard"
   Option         "Clone" "off"
#    Option         "AIGLX" "True"          #打开AIGLX就黑屏
EndSection

Section "Monitor"
  Identifier     "Monitor0"
  VendorName     "Generic Monitor"
  ModelName      "Generic"
  DisplaySize    287    215                 #1024×768  90dpi,适合14.1"屏
EndSection

Section "Device"
  Identifier     "Card0"
  Driver         "radeon"                                  #也可以使用ATI,这是个wrapper,会自动侦测显卡类型,如果你用radeon有问题可以尝试换成ati
  VendorName     "ATI Video Driver"
      Option          "DynamicClocks"      "on"         #节能用的,显卡温度下降6-10度
      Option          "EnablePageFlip"     "on"
      Option            "AccelMethod"         "exa"        #使用EXA加速模式取代传统的XAA模式
      Option         "AccelDFS"          "true"
      Option          "FBTexPercent"           "0"
#        Option      "AGPFastWrite"        "True"       #试验性功能,怀疑不够稳定
      Option         "MonitorLayout"      "LVDS"       #强制LCD,使用CRT不能用此选项
      Option         "Dac6Bit"           "True"
      Option         "XAANoOffscreenPixmaps"  "true"
EndSection

Section "DRI"
   Group 0
   Mode 0666                           #普通用户也可使用DRI加速
EndSection

Section "Extensions"
  Option "Composite" "Enable"         #打开混合模式
EndSection

IBM T41使用的是ATI RADEON M7 LW显卡,即7500移动版,xorg启动后在/var/log/Xorg.0.log中grep到Direct rendering enabled.即表示3D功能激活,Composite enabled表示混合模式打开。

Tips:

1、UNTUTU 7.10已经支持compiz fusion,FreeBSD驱动滞后于linux。

2、fontconfig会覆盖xorg中关于DPI的设置。为了保证此设置生效,最好GNOME和KDE中在/etc/local/etc/fonts/local.conf中加入

<!–
   Target dots per inch, change 90 to yours
–>
      <match target="pattern" >
              <edit name="dpi" mode="assign" >
                      <double>90</double>
              </edit>
      </match>
     
如果是使用xfce4,在家目录下修改./.config/xfce4/Xft.xrdb文件,加入一行Xft.dpi:90即可。

如果总是不能设置正好的屏幕分辨率. 可以在 textmode下以root 身份运行

  gtf 1024 768 85
 
来生成Modules.把生成的Modules加入到你的Xorg.conf中。

原文链接:http://wiki.freebsdchina.org/doc/x/xorg_with_ati