January 30, 2015 posted by Jared McNeill

With the latest updates to NetBSD 7, the Raspberry Pi port now supports hardware acceleration using the built-in Broadcom VideoCore IV GPU. This enables 3D graphics acceleration and hardware accelerated video playback, a first for NetBSD/arm.

The misc/raspberrypi-userland package in pkgsrc includes the client libraries to get started. Some packages have been created to take advantage of this already, with more on the way:

OMXPlayer: multimedia/omxplayer for video playback

GStreamer: multimedia/gst-plugins1-omx for decode, and multimedia/gst-plugins1-egl-opengl for a video sink

ioquake3: games/ioquake3-raspberrypi

For both omxplayer and ioquake3, make sure that the user running them has permissions to /dev/vchiq. In addition, ioquake3 needs permissions to /dev/wsmouse.

# usermod -G wheel jmcneill # chmod 660 /dev/vchiq /dev/wsmouse

The default GPU memory allocation may not be sufficient for ioquake3. Add gpu_mem=128 or gpu_mem=192 to /boot/config.txt if you run into any issues.

More information can be found on the NetBSD Wiki.