Open-Source Radeon HD 7000 Series Still Lacking

Posted by Michael Larabel on June 28, 2012

While Intel's Ivy Bridge processors are only two months old, there's already a feature-rich driver and the full programming documentation available. Meanwhile for the Radeon HD 7000 series from AMD that is now more than six months old, the open-source driver is still incomplete and the documentation is lacking.

It's been six months since AMD unveiled the first Radeon HD 7000 series graphics cards, the "Tahiti" HD 7900 series built upon their "Graphics Core Next" architecture. This happened back on 22 December 2011. In the months since we've seen the Radeon HD 7000 product line-up become fully engaged from the low-end models through the most recent Radeon HD 7970 GHz graphics card. While the AMD Catalyst Linux driver has supported this latest-generation AMD graphics hardware, the open-source support is still far from complete.

There is the mainline "Southern Islands" Radeon DRM support in the latest Linux kernel to provide kernel mode-setting and other basic functionality, but that at present is limited -- e.g. still running the PCI-E 3.0-supportive GPU at PCI Express 1.0 speeds. The user-space side is still incomplete with the "RadeonSI" Gallium3D driver still being brought up to support proper OpenGL. AMD developers are also still deciding how to handle 2D acceleration as with HD 7000 series and future ASICs they just don't want to do it over their DDX driver.

As shown by the Mesa Git logs, there's only even been four commits this month for the "RadeonSI" driver.

Long story short, for Linux end-users with this latest AMD hardware, the Catalyst driver is your only real option. A half-year later there still isn't any usable open-source support. Even for the packages that will make it into Ubuntu 12.10 and Fedora 18 it may not be quite baked yet for the HD 7000 series.

When it comes to proper programming documentation, that too is behind. As the latest status according to John Bridgman, "The 3D programming docco on the xorg wiki covers from 6xx through NI pretty well since they all use the same core architecture. It wouldn't hurt to add delta docs for things like attribute interpolation in the shaders, although the ISA docs and driver code also cover the changes. SI needs an all new docco set and that should probably be highest priority."

While AMD's original open-source strategy mandated that pretty much all documentation be made public, for the more recent generations of Radeon GPUs this has been slow to materialize in the public spotlight. Here's some recent comments by Luc Verhaegen, one of the former SUSE RadeonHD developers, about still missing documentation: " While the documents that we did get initially (soon 5 years ago) were cleared during the time the SuSE/AMD contract was in place, are made public today, the documents that we got later on, like some ATI R7xx registers docs and R7xx AtomBIOS documentation (we never saw AtomBIOS documentation for R5xx or any R6xx type chip), were not cleared in that timeframe and were subsequently not released, despite Mr Bridgmans initial assurance that these docs would go out. So all you have is the kernel source and Matthias Hopfs excellent AtomBIOS disassembler (in as far as the latter is still useful on recent AtomBIOSes). The disassembler is a real life saver when trying to figure out how the AtomBIOS interface changes, or with spotting bugs in the BIOS, but i have no idea how useful that becomes without any register information."

In that same email thread, Alex Deucher of AMD even responds about documentation for recent chips as "The easiest method would be to use the KMS code as a reference."

Hopefully by year's end we will see usable open-source support for the AMD Radeon HD 7000 series that can match or exceed that of the maturing HD 4000/5000/6000 series Linux code.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  2. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  3. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
  4. AMD Radeon Gallium3D More Competitive With Catalyst On Linux
Latest Software Articles
  1. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  2. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  3. F2FS File-System Shows Regressions On Linux 3.10
  4. Previewing The Radeon Gallium3D Shader Optimizations
Latest Linux News
  1. DNF Still Advancing As Experimental Yum For Fedora
  2. Logitech Begins Supporting Linux Users
  3. Modern Intel Gallium3D Driver Still Being Toyed With
  4. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  5. GCC 4.8.1 Compiler Due To Be Out Next Week
  6. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
  7. Linux's "Ondemand" Governor Is No Longer Fit
  8. Firefox 22 Beta Enables WebRTC Support
  9. OpenSUSE 13.1 Milestone 1 Released
  10. DRM Graphics Driver Comes For Dove/Cubox
  11. JADE: An LLVM-Based Video Decoder For MPEG RVC
Latest Forum Talk
  1. DNF Still Advancing As Experimental Yum For Fedora
  2. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  3. DRM Moves Ahead With HTML5 Specification
  4. Linux's "Ondemand" Governor Is No...
  5. New Linux Kernel Vulnerability Exploited
  6. KDE's Krita Ported To OpenGL 3.1, OpenGL ES 2.0
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite