Open-Source AMD Fusion Driver Stabilizes
With the very latest open-source Linux driver code for the AMD Fusion E-350, the support is finally stable and comparable to that of other recent Radeon HD graphics processors with the open-source driver stack.
AMD had launched the first Fusion APUs last year, and even released open-source Fusion code for graphics support last November, but at Phoronix the initial open-source support was found to be unstable at best. Mentioned earlier this year were a variety of graphics problems while the compute performance for the AMD Fusion E-350 and other functionality beyond the graphics had worked just fine under Linux. Using the proprietary Catalyst Linux graphics driver also led to a great desktop experience, but the open-source graphics support just did not work well.
As of late April, the open-source Fusion graphics support was still mixed. Some OpenGL games were running fine on the E-350 setup, but other games would either suffer from rendering glitches or cause system stability problems.
Two weeks ago while I was back in Europe, I then received a response to one of my bug reports from March regarding an E-350 TTM crash. In this bug report response, AMD's Alex Deucher cites a patch that was recently merged into Linus Torvald's kernel tree from one of the DRM bug-fix pulls late into the Linux 2.6.39 kernel cycle. The patch in question is drm/radeon/kms: fix gart setup on fusion parts (v2) with a description of "Out of the entire GART/VM subsystem, the hw designers changed the location of 3 regs. v2: airlied: add parameter for userspace to work from."
Now that I am back to the office, I pulled the latest Linux 2.6.39 kernel code along with the latest Mesa and DDX driver code. For the ASUS E-350 setup, the normal round of Phoronix Test Suite graphics benchmarks are working fine atop the R600g Gallium3D driver for Fusion. There is no longer any crashes relating to TTM memory management going awry and there's also no apparent rendering issues with the latest driver code.
This testing was done atop a clean Ubuntu 11.04 x86_64 installation and then pulling the latest Linux kernel (2.6.39), Mesa (7.11-devel), and xf86-video-ati (6.14.99) code as of 17 May. The setup was with the ASUS E35M1-PRO motherboard, AMD E-350 APU at 1.60GHz, 4GB of system memory, 64GB OCZ Vertex SSD, and the integrated Radeon HD 6300 graphics.
While the major issues are cleared up, the performance of the Fusion E-350 APU under Linux with the open-source driver stack is still far from being comparable to the proprietary Catalyst driver. The following benchmarks illustrate the performance difference to the AMD Catalyst 11.4 driver.
The testing was facilitated by the Phoronix Test Suite to compare the Gallium3D and Catalyst drivers on the Fusion hardware.