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

The State Of Open-Source ARM GPU Drivers

Hardware

Published on 27 September 2013 07:26 PM EDT
Written by Michael Larabel in Hardware
8 Comments

Rob Clark of the fast-growing Freedreno project provided a status update earlier this week at the X.Org Developers' Conference concerning his open-source ARM Qualcomm graphics driver, the Lima driver for ARM' Mali, GRATE for NVIDIA's Tegra, and Etnaviv for Vivante graphics hardware.

As Phoronix readers should know very well if you've been a loyal reader the past few years, the ARM Linux graphics situation has traditionally been a ridiculous mess. ARM vendors haven't been interested in open-source GPU drivers, there haven't been many successful ARM open-source graphics projects in the past, and for a long time Imagination's PowerVR technology dominated the ARM graphics space and many of the capable open-source developers happen to be tainted from working on a driver for those cores.

Fortunately, as Rob Clark was quick to point out in his presentation, the ARM GPU situation is a hell of a lot better today for open-source Linux fans. Among the recent accomplishments that were covered in his XDC2013 presentation:

- The reverse-engineered Etnaviv driver for Vivante hardware in devices like the SolidRun CuBox and GCW Zero is taking shape. Etnaviv has a working Gallium3D-based driver, but it's currently maintained outside of the Mesa stack. This Gallium3D driver also works only when using a fbdev-based back-end and the development needs help in the area of an X.Org DDX, DRM/DRI2 driver, and other features. While it's lacking a lot, it's progressed quite a lot considering the reverse-engineering began less than one year ago.

- The GRATE driver, which has some support by NVIDIA, to support the Tegra 2/3/4 ARM devices is still early in the research stage. The GRATE developers have support for command stream capturing and replay, basic understanding for its OpenGL state, comprehension of the vertex shader ISO, and there's work on the fragment shader ISA. GRATE is being developed into a Gallium3D driver and so far the user-space side is very young.

- The Lima driver by Luc Verhaegen that really got some movement going in the ARM reverse-engineering space is still ongoing. The Lima driver is focusing upon the Mali 200/400 hardware and it has a basic Mesa classic driver that is starting to work. This classic Mesa driver though is still based upon the proprietary compiler back-end.

- Rob's Freedreno driver for the Qualcomm Adreno A2xx/A3xx hardware has its initial DRM/KMS driver merged into Linux 3.12 and the Gallium3D driver has been around since Mesa 9.2. There's also an xf86-video-freedreno driver that supports using the XA Gallium3D state tracker and the Z180 2D core. Freedreno can also work on Wayland/Weston! In terms of OpenGL support, it can handle OpenGL ES 1.0/2.0 and most OpenGL 1.4, but there's still some work involved in supporting MSAA, hardware binning pass, compiler optimizations, etc. Besides being able to run Wayland's Weston, Freedreno works with the GNOME Shell, XBMC, Xonotic, OpenArena, etc. Freedreno is pretty much the open-source ARM Linux graphics driver in the best shape right now.

More details on the status of these drivers as shared by Rob Clark this past week at XDC2013 can be found via his presentation PDF slides.

Latest Linux Hardware Reviews
  1. Mini-Box M350: A Simple, Affordable Mini-ITX Case
  2. Overclocking The AMD AM1 Athlon & Sempron APUs
  3. AMD Athlon 5350 / 5150 & Sempron 3850 / 2650
  4. Upgraded Kernel & Mesa Yield A Big Boost For Athlon R3 Graphics
Latest Linux Articles
  1. AMD OpenCL Performance With AM1 Kabini APUs
  2. A Quick Look At GCC 4.9 vs. LLVM Clang 3.5
  3. Are AMD Athlon/Sempron APUs Fast Enough For Steam On Linux?
  4. AMD Athlon's R3 Graphics: RadeonSI Gallium3D vs. Catalyst
Latest Linux News
  1. R600 Gallium3D Disables LLVM Back-End By Default
  2. Fedora 21 Gets GNOME 3.12, PHP 5.6, Mono 3.4
  3. Fedora Workstation Is Making Me Quite Excited
  4. Maynard: A Lightweight Wayland Desktop
  5. Chromium Browser Going Through Growing Pains In Ubuntu 14.04
  6. KDE 4.13 Is Being Released Today With New Features
  7. Trying Out Radeon R9 290 Graphics On Open-Source
  8. Intel Broadwell GT3 Graphics Have Dual BSD Rings
  9. Early Linux 3.15 Benchmarks Of Intel Core i7 + Radeon
  10. Red Hat Releases Its RHEL 7 Release Candidate
  11. New Features Coming To Xubuntu 14.04 LTS
  12. NVIDIA Officially Releases CUDA 6
Latest Forum Discussions
  1. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  2. After Jack Keane, RuseSoft will briing Ankh 3 to Linux through Desura
  3. Change installation destination from home directory
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. The GNOME Foundation Is Running Short On Money
  6. Bye bye BSD, Hello Linux: A Sys Admin's Story
  7. New tool for undervolt/overclock AMD K8L and K10 processors
  8. How to enable opengl 3.3 on r9 270?