PowerVR

At least three PowerVR chip generations exist. The first was the version used on the Matrox m3D card, which was a pure-3D accelerator card that plugged into the PCI bus but had no monitor connector. Presumably one would render the 3D scene on the PowerVR card and blit it across the bus to the existing 2D card. This is a very strange device and would present interesting challenges to support in the DRI. A second PowerVR chip was used in the Sega Dreamcast video game console. There were also several PC-class PCI and AGP cards made under the Kyro brand containing PowerVR chips.

There are probably further PowerVR chips being used in embedded devices.

The PowerVR chips appear to lack an explicit depth buffer, with the scene instead being subdivided into tiles and the depth buffer constructed on the fly for each frame. This would save significant memory on embedded platforms, but might make full GL conformance a challenge.

Status

No 2D or 3D driver for PowerVR chips exists in Xorg. The Linux kernel includes an fbdev driver which is probably good enough to bootstrap an Xorg driver with.

Some 3D information can probably be gleaned from KallistiGL, a GL subset in the Dreamcast homebrew operating system KallistiOS. It's unknown how much of this information would be relevant to earlier or later generations of PowerVR hardware.

There exists a closed-source PowerVR binary driver for Linux 2.4 kernels, including DRI support. It does not appear to be based on Mesa, and the manufacturer has expressed no interest in supporting later kernels.

Specifications

Potentially available under NDA.

Resources


CategoryHardwareChipset