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

Hardware

Published on 13 February 2011 02:37 PM EST
Written by Michael Larabel in Hardware
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. Rosewill RS-MI-01: An Ultra Low-Cost Mini-ITX Chassis
  2. D-Link DCS-2330L HD Wireless Network Camera
  3. Gigabyte AM1M-S2H
  4. AMD's New Athlon/Semprons Give Old Phenom CPUs A Big Run For The Money
Latest Linux Articles
  1. AMD Catalyst 14.4 On Linux With Radeon R3 APU Graphics
  2. Red Hat Enterprise Linux 7.0 RC Benchmarks
  3. AMD Catalyst 14.4 Brings Few Linux Performance Improvements
  4. The Performance Of Fedora 20 Updated
Latest Linux News
  1. R600 Gallium3D Lands Many OpenGL Fixes
  2. LLVMpipe Gallium3D Now Exposes GLSL 3.30
  3. NGINX 1.6 Brings SPDY 3.1 & Other New Features
  4. Linux Foundation Announces A Core Infrastructure Initiative
  5. More Steam Linux Tests/Benchmarks Might Be Coming
  6. NVIDIA's Amazing Single-Board ARM Computer Might Be Delayed
  7. Fedora 21 To Get A Playground, New Features
  8. PC-BSD Is Developing Its Own Desktop Environment
  9. Valve Is Bringing VOGL To Windows & Working On Regression Tests
  10. Canonical Is Taking Over Linux 3.13 Kernel Maintenance
  11. Google Web Designer Is Now Natively Available On Linux
  12. Ubuntu 14.10 Is Codenamed The Utopic Unicorn
Latest Forum Discussions
  1. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  2. HTPC-upgrade advice: AMD Richland A8-7600 or Kaveri A10-6700T ???
  3. What Else Would You Like To See On Phoronix This Spring?
  4. The GNOME Foundation Is Running Short On Money
  5. The Most Amazing OpenGL Tech Demo In 64kb
  6. Announcing radeontop, a tool for viewing the GPU usage
  7. New card. Open source drivers only.
  8. Script for Fan Speed Control