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

Reverse Engineering PowerVR Is Now A High Priority

GNU

Published on 13 February 2011 02:37 PM EST
Written by Michael Larabel in GNU
28 Comments

The Free Software Foundation has now determined that reverse-engineering the PowerVR Linux drivers in order to create a free software driver capable of 3D hardware acceleration is a high priority action item. With an increasing number of mobile devices running Linux bearing these PowerVR graphics chipsets, which currently require the use of binary blobs for graphics acceleration, is not acceptable and that action must be taken to create an open driver for this hardware.

Following a proposal last month of reverse-engineering the PowerVR SGX GPU to create a "free software OpenGL library", the Free Software Foundation has agreed this is a high priority project. "PowerVR is a popular 3D graphics engine found in phones, netbooks, and laptops, for which we currently have no free software driver capable of doing 3D graphics acceleration."

The Wiki page for this project outlines the goals as being to create a Gallium3D PowerVR driver called G3D-SGX, port the OpenGL 3.0 Mesa library to G3D-SGX (but no complete OpenGL 3.0 implementation is yet available for Mesa...), investigate compiling through LLVM (the Low-Level Virtual Machine) to take advantage of the multi-core SoC with the ARM Cortex A9 and other CPUs along with the vertex processing units and other co-processors on many of these SoCs. Their last, lower-priority goal is to create a DirectX acceleration for use by Wine. Phoronix readers will already know that there is a Direct3D 10/11 state tracker for Gallium3D.

The G3D-SGX goal of using LLVM to take better advantage of the SoCs where the PowerVR SGX is often deployed is quite interesting. Hopefully many of those goals will align and fit into the grand scheme of other plans with the LLVM IR of LunarGLASS and other projects to take advantage of this compiler infrastructure within Mesa and Gallium3D. Taking the Gallium3D route also means in-kernel memory management and very likely we'll see kernel mode-setting too, assuming this project materializes.

Before worrying about nifty features, the project needs to reverse-engineer the SGX and actually get an open-source driver working. Right now only the USSE opcodes and assembly have been decoded. The SGX reverse-engineering is being done in part by modifying PowerVR's kernel shim, which is open-source as it's what compiles against the kernel, to dump the information being passed to the driver.

Having an open-source PowerVR driver for Linux would be a huge win. Right now one of the only open-source mobile graphics drivers is the reverse-engineered Samsung GLES driver while some vendors have tried putting out open-source kernel drivers while leaving the user-space library closed-up. The embedded Linux GPU situation is a huge mess as it stands right now, but last month we reported that there may be an open-source PowerVR driver in Q3-2011, but now it seems that the free software community will not wait until then to see such open hardware support.

The PowerVR SGX from Imagination Technologies is what powers Intel's Poulsbo and Moorestown graphics and SoCs using its IP are found in the Apple A4 (iPhone 4 / iPad), Texas Instruments OMAP 3/4 with the Nokia N900, Motorola Droid, Archos 70, Samsung Hummingbird SoC with the Galaxy S / Galaxy Tab, and many other mobile devices.

Other high priority free software projects by the FSF include the development of the Gnash Flash player, the Coreboot open-source BIOS project, a free software replacement to Skype, free software video editing software, a free Google Earth replacement, reversible debugging in GDB, and free software drivers for network routers.

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. A Walkthrough Of The New 32 System Open-Source Linux Benchmarking Test Farm
  2. Habey MITX-6771: Mini-ITX Board With Quad-Core J1900 Bay Trail
  3. OCZ Vector 150 SSD On Linux
  4. Noctua i4 CPU Cooler: Great For Cooling High-End LGA-2011v3 CPUs
Latest Linux Articles
  1. AMD Kaveri: Open-Source Radeon Gallium3D vs. Catalyst 14.12 Omega Driver
  2. 12-Way AMD Catalyst 14.12 vs. NVIDIA 346 Series Linux GPU Comparison
  3. AMD Catalyst 14.12 Omega Driver Brings Mixed Results For Linux Users
  4. 6-Way Winter 2014 Linux Distribution Comparison
Latest Linux News
  1. Details On Using OpenACC & GPUs With GCC
  2. Ubuntu 15.04 Alpha 1 For Its Various Flavors
  3. Git 2.2.1 Released To Fix Critical Security Issue
  4. WTFTW: A Tiling Window Manager Written In Rust
  5. Jolla's Sailfish OS Update 10 Is Now Available
  6. HP To Launch Linux++ Operating System Next Year
  7. Civilization: Beyond Earth Launches For Linux
  8. NIR Has Been Revised As A New IR For Mesa
  9. New 64-bit Linux Kernel Vulnerabilities Disclosed This Week
  10. PostgreSQL 9.4 Brings JSONB & Many Other New Features
Latest Forum Discussions
  1. XLennart: A Game For Systemd Haters With Nothing Better To Do
  2. Debian init discussion in Phoenix Wright format
  3. Bench specific mount point
  4. Tool for measuring FPS in games
  5. Need some hand holding with upgrading xserver
  6. Ubuntu Developers Still Thinking What To Do About Adobe Flash Support
  7. Microsoft buying Mojang
  8. Updated and Optimized Ubuntu Free Graphics Drivers