On the Raspberry Pi’s second birthday its creator and Broadcom employee Eben Upton wrote in a blog post that open-source graphics drivers for the chip used in the Raspberry Pi have now been released.

 

In the post Upton wrote that the RPi in common with every other ARM-based SoC, using the VideoCore IV 3d graphics core normally requires a block of closed-source binary driver code (a “blob”) which talks to the hardware. In the case of the RPi, this blob runs on the VPU vector processor of the BCM2835 (the SOC or System On a Chip at the heart of the Raspberry Pi); the existing open-source graphics drivers are a thin shim running on the ARM11, which talks to that blob via a communication driver in the Linux kernel. The lack of true open-source graphics drivers and documentation is widely acknowledged to be a significant problem for Linux on ARM, as it prevents users from fixing driver bugs, adding features and generally understanding what their hardware is doing.

 

Broadcom have now released full documentation for the VideoCore IV graphics core, and a complete source release of the graphics stack under a 3-clause BSD license. The source release targets the BCM21553 cellphone chip, but it should be reasonably straightforward to port it to the BCM2835, allowing access to the graphics core without using the blob. As an incentive to do this work, a worldwide competition has been announced which will pay a bounty of $10,000 to the first person to demonstrate to the organizers satisfaction that they can run Quake III at a playable framerate on a Raspberry Pi using these drivers.