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

OpenBenchmarking.org

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. Btrfs On 4 x Intel SSDs In RAID 0/1/5/6/10
  2. AMD Radeon R9 290 On Ubuntu 14.10: RadeonSI Gallium3D vs. Catalyst
  3. MSI X99S SLI PLUS On Linux
  4. NVIDIA GeForce GTX 970 Offers Great Linux Performance
Latest Linux Articles
  1. NVIDIA's Linux Driver Can Deliver Better OpenGL Performance Than Windows 8.1
  2. Windows 8.1 vs. Ubuntu 14.10 With Intel HD Graphics
  3. 6-Way Ubuntu 14.10 Radeon Gallium3D vs. Catalyst Driver Comparison
  4. NVIDIA vs. Nouveau Drivers On Ubuntu 14.10
Latest Linux News
  1. Wine 1.7.30 Continues Work On DirectWrite & Offers Regedit Fixes
  2. Has The Sky Fallen? Qualcomm Contributes To Freedreno's DRM/KMS Driver
  3. Manjaro Works To Make Calamares A Distribution-Independent Installer
  4. DisplayLink USB 3.0 Support Sounds Like A Mess
  5. PulseAudio Gains A Native Bluetooth Headset Backend
  6. X.Org Foundation Decides On Its Women Outreach Project
  7. GTK+ 3.16's New GtkGLArea Widget Gets Improved
  8. X.Org Server 1.17 ABI Bumped
  9. Fedora 21 Beta To Be Released Next Week
  10. Go 1.4 Beta Release Brings Big Runtime Changes
Latest Forum Discussions
  1. How to get rid of Linux
  2. Closed source to opensource
  3. What Would You Like To See Next?
  4. Is foolish currently develop in machine code, hexadecimal and assembly?
  5. Reducing The CPU Usage In Mesa To Improve Performance
  6. Help diagnosing problems with a Readon HD 4670 on Mesa 10.3.2-1
  7. Advertisements On Phoronix
  8. nv and xorg.conf under Debian PPC