1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems

Facebook RSS Twitter Twitter Google Plus

Phoronix Test Suite


ATI Has Open-Source Drivers Too

Michael Larabel

Published on 5 May 2007
Written by Michael Larabel
Page 1 of 1 - Comment On This Article

Since late last year the open-source Linux community has been ecstatic about the growing progress made by the Nouveau developers. Nouveau is an X.Org and FreeDesktop.org project for developing an open-source 2D/3D display driver for NVIDIA graphics cards. With NVIDIA Corporation not providing hardware specifications, this driver is being written through reverse-engineering NVIDIA's binary display driver. While the developers of Nouveau are making great strides and this driver is taking shape, the open-source ATI driver must not be forgotten.

For those that may be new to the Linux scene, ATI Technologies had released specifications to the Radeon R200 (8500 to 9200) series to X.Org developers quite a while ago. For those graphics cards, there is an excellent stable and open-source driver built into X.Org and since then ATI discontinued R200 support in their fglrx binary driver. However, support for the Radeon R300 series had to be reverse-engineered in order to construct a supportive driver (due to ATI not providing the needed specifications). The R300 driver now is nearly complete for desktop users wishing to play older games or simply benefit from Beryl and Compiz, but the driver is certainly not perfect. For instance, RS480 support with the R300 driver was only started recently and still has a way to go. Some of the other work left to tackle includes general optimizations, implementing the TTM memory manager, smooth/alpha shading, anisotropic filtering, and fixing a number of different bugs.

Last year David Airlie had written a very rudimentary 2D driver for the R500 series, however, to write the driver he had used a utility that he was not permitted to run on the R500 series and is under a Non-Disclosure Agreement with ATI/AMD. With Airlie being in violation of the agreement, ATI/AMD has not and will not permit him to release the code. However, this driver did not support 3D rendering and contained only limited functionality. Recently, however, there has been work on reverse-engineering ATI's R500 (Radeon X1000) series. There is no dummy driver available yet or even a Wiki page, but I have covered some of the progress made on my blog at MichaelLarabel.com. Among the developers working on this project are Jerome Glisse and Daniel Stone. This driver is still in its infancy but in the coming months there should hopefully be some good news to report back.

When it comes to the open-source ATI development efforts, work has been done on porting renouveau (the extremely handy utility used for reverse-engineering the NVIDIA driver) to work on ATI graphics cards. Some of the ATI tools currently available to assist in reverse-engineering the fglrx driver include Radeondump, libsegfault, kmmio tracer, and Revenge (along with Piglit for that matter). Shortly the R500 driver developers will be in need of plenty of card dumps, however, dumps and testing for the R300/400 series still may prove to be useful.

Talking with Jerome Glisse, he believes that the open-source developers know basically everything they need to know and have implemented everything for reverse engineering the ATI Radeon graphics cards. The issue basically comes down to having qualified developers work on the driver and writing it properly. Jerome Glisse had stated the Radeon driver really need some experienced developers to think about the driver's design and to cleanup the code. He also states, "The true be told the driver code (r300 especially) are a big mess and definitely need to be reworked". There has been much talk about the TTM memory manager and it offering a big boost when it comes to the graphics performance, but Jerome had later expressed fear among Radeon developers with this solution. TTM ultimately has drawbacks that outweigh the memory management capabilities. On an unrelated note to the TTM memory manager, he fears that a majority of the DRM infrastructure will need to be rewritten.

As far as the R500 driver goes, there are currently some initialization issues with the Radeon X1600 and X1900, which require loading the fglrx kernel module first. Taking place with the unreleased driver is also cleaning up some code to ensure that the driver to be released first does not have a "broken design". Taking this time in the beginning to properly engineer the R500 driver should cause a greater number of benefits down the road.

I am not trying to tell you to not support the Nouveau project, as those developers should have whatever they need in order to get their driver completed and ready for public consumption. However, the ATI driver must not be lost in this action. Linux users must continue to embrace the fabulous work done by these developers on the open-source ATI driver and this work must continue in order to provide R500 (and eventually, R600) support. At this time the open-source ATI driver is the only option for ATI Linux users wishing to use Beryl or Compiz without needing to use XGL. The major area, however, lacking with the open-source Radeon driver is in the area of TV-Out support due to Macrovision. For the normal desktop user that is not experienced at X.Org hacking, the best and most effective way to help out these developers are to provide card dumps and then testing the latest drivers. However, the open-source ATI team is in desperate need of more skilled developers.

Phoronix has more information on the Nouveau driver along with news and articles on the Radeon happenings. Your comments on this article are welcome in the Phoronix Forums.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. A Walkthrough Of The New 32 System Open-Source Linux Benchmarking Test Farm
  2. Habey MITX-6771: Mini-ITX Board With Quad-Core J1900 Bay Trail
  3. OCZ Vector 150 SSD On Linux
  4. Noctua i4 CPU Cooler: Great For Cooling High-End LGA-2011v3 CPUs
Latest Linux Articles
  1. AMD Kaveri: Open-Source Radeon Gallium3D vs. Catalyst 14.12 Omega Driver
  2. 12-Way AMD Catalyst 14.12 vs. NVIDIA 346 Series Linux GPU Comparison
  3. AMD Catalyst 14.12 Omega Driver Brings Mixed Results For Linux Users
  4. 6-Way Winter 2014 Linux Distribution Comparison
Latest Linux News
  1. After 10+ Years, NetworkManager Reaches v1.0
  2. VDPAU Updated To v0.9
  3. An Open Hardware Random Number Generator Proposed
  4. LLVM 3.6 Will Be Branched Next Month
  5. Opera Browser Puts Out Linux Updates For The Holidays
  6. GNOME Shell 3.15.3 Adds Support For High-Contrast Themes
  7. Linux 3.19: ThinkPad Muting Redone, New Dell Backlight Support, Acer Is Banging
  8. KVM Drops Support For IA64 While Adding Various x86 Improvements
  9. GCC 4.8.4 Officially Released
  10. FSF's High Priority Project List Now Has A Committee
Latest Forum Discussions
  1. XLennart: A Game For Systemd Haters With Nothing Better To Do
  2. Need some hand holding with upgrading xserver
  3. Debian init discussion in Phoenix Wright format
  4. The New SuperTuxKart Looks Better, But Can Cause GPU/Driver Problems
  5. FPS capped on Linux (AMD fglrx drivers)
  6. Are there an app using HSA ?
  7. Bench specific mount point
  8. Tool for measuring FPS in games