Freedreno Gallium3D Driver Might Be Merged Soon

Posted by Michael Larabel on February 03, 2013

The open-source "Freedreno" Gallium3D driver that provides reverse-engineered 3D support for Qualcomm's Adreno/Snapdragon graphics processor is turning out to be in quite good shape. Freedreno is one of the first good ARM Gallium3D drivers and it might soon be merged into Mesa.

Rob Clark talked about his Freedreno Gallium3D driver this weekend at FOSDEM in Brussels. This is the reverse-engineered open-source Qualcomm driver that he began to work on last April.

While Freedreno is a personal side project mostly just worked on by Clark himself in his spare time, the 2D and 3D reverse-engineered driver support is coming along rather well. Right now he's doing most of his work from an Adreno A220/Z180 (Snapdragon S3) as found on an HP TouchPad. However, he's soon going to be switching over to focusing upon a Google Nexus 4 with an A320.

In terms of EXA/2D accelerated support, all of the basics work and he understands enough of the registers now for the Qualcomm hardware. Rob Clark just needs more time to finish implementing the rest of the support, but all of the basics are in place.

For the more interesting reverse-engineered 3D support with his Gallium3D driver, the 3D basics are working but there are some bugs. Compiz is already running on this driver and other common OpenGL workloads. He's already getting +50% the performance of Qualcomm's official driver for workloads like glmark2, XBMC, Compiz, and Quake 3 Arena.


Freedreno Gallium3D actually works!

Still needed is to understand the command stream for MSAA and mipmap textures. His 3D compiler also needs to add in support to handle loops, optimizing, and hardware binning (tiling).

A video of the entire Freedreno presentation (along with the other X.Org development room talks) will be published on Phoronix in the coming weeks.

In talking with Rob later on in Brussels, he shared that rather soon he expects his Gallium3D driver might be in a state for merging into mainline Mesa. The Gallium3D driver is in relatively good shape for being reverse-engineered, less than one year old, and being largely developed by just himself.

Right now he's relying upon Qualcomm's open-source Linux kernel driver, but he has shared that in the end he might end up writing his own kernel driver too. It will be some time before he looks into this further, but he might end up writing his own Freedreno DRM driver if he ends up hitting enough limitations and problems of Qualcomm's official kernel driver.

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. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. Mir's GPLv3 License Is Now Raising Concerns
  2. NVIDIA Driver Soon Likely To Support EGL, Mir
  3. OpenMandriva Goes Into Alpha Form, Russian-Based
  4. NVIDIA Brings Their Linux Driver To ARM
  5. D Language Still Showing Promise, Advancements
  6. Planetary Annihilation Released For Linux Gamers
  7. Gentoo Starts Work On KDE-Wayland Support
  8. NVIDIA To License Its Kepler GPU Technology
  9. KDE's KWin Made Lots Of Progress In 4.11
  10. Ubuntu Announces Carrier Advisory Group
  11. Qt 5.1 Release Candidate 1 Has Arrived
Latest Forum Talk
  1. Mir's GPLv3 License Is Now Raising Concerns
  2. OpenMandriva Goes Into Alpha Form, Russian-Based
  3. NVIDIA Driver Soon Likely To Support EGL, Mir
  4. Ubuntu Announces Carrier Advisory Group
  5. Gentoo Starts Work On KDE-Wayland Support
  6. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  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