R300

From ThinkWiki
Revision as of 09:40, 10 May 2006 by Gwicke (Talk | contribs)
Jump to: navigation, search

R300 drivers with DRI support

In post-2.6.13 development kernels (and also 2.6.13-mm3), DRM support for the R300 chips from ATI has been included. Together with a bleeding-edge version of Mesa (at least 6.3.2), this will allow 3D acceleration support for systems having a chip like this without the need for the ATI binary only driver (Fglrx). The latest beta releases of X.Org for 6.9/7.0 already have Mesa 6.3.2, but building the R300 DRI drivers is disabled by default.

Kernel configuration

You need to build AGP support with

  # CONFIG_AGP=y
  # CONFIG_AGP_INTEL=y  #for a ThinkPad T41p

and the Radeon DRM support with

  # CONFIG_DRM=y
  # CONFIG_DRM_RADEON=y

Alternatively, can also build modules instead of including the code into the kernel. The modules will then be automatically loaded when X starts up.

If everything works well, the device /dev/dri/card0 should show up.

Mesa

If your distribution does not offer binary packages of the current Mesa development packages, you need to build them yourself. It might also be possible that the DRI driver is included in your X.Org packages, just look out for a file like /usr/X11R6/lib/modules/dri/r300_dri.so.

X configuration

You will need to load the dri and GLcore extensions with

  # Section "Module"
  #    ...
  #    module "dri"
  #    module "GLcore"
  #    ...
  # EndSection

Note: In Xorg 7.0 you don't need to load GLCore manually anmore

My radeon configuration looks like this

  # Section "Device"
  #    Identifier  "firegl"
  #    Driver      "radeon"
  #    BusID       "PCI:1:0:0"
  #    ....
  #    Option      "AGPFastWrite"  "off" # "on" freezes my laptop
  #    Option      "AGPMode"       "4" # this value depends on your hardware, this one is for a T41p
  #    Option      "DynamicClocks" "on"
  #    Option      "ColorTiling"   "on"
  # EndSection

X will silently ignore if DRI cannot be activated for your card, so you should check yor X logfile. Just search for DRI and/or DRM. Afterwards, you might want to do the usual glxinfo/glxgears magic.

Packages


Performance

With 2.6.14-rc1 + Mesa 6.3.2, glxgears (the one and only Linux 3D benchmark) gives ~2200 FPS on my ThinkPad T41p with a FireGL Mobility T2 and a 1.7GHz Pentium M, 1GB RAM.

There is to note that the Color-depth has great effect on this value. on my R50p with 24Bit I get about 2k fps, with 16Bit i get about 1k-1.5k fps

With 2.6.15 + Mesa 6.3.2, glxgears gives ~1480 FPS on a ThinkPad T43 with a Radeon Mobility X300 and a 1.86GHz Pentium M, 512MB RAM, when AGPMode=8, EnablePageFlip=on, AGPFastWrite=on and RenderAccel=on. Adding AccelMethod=EXA reduces to 700 FPS but makes the Composite Extension be usable.

Troubleshooting


Useful links

ThinkPads that may be supported

Supported chips, as found in select IBM ThinkPads (please add your own ones!):