Last month we reported on the status of kernel mode-setting with the Glint driver
that's being done as a Google Summer of Code project to provide KMS support for the ancient 3Dlabs Permedia 3 and Permedia 4 graphics cards and to better document the Linux KMS/DRM driver writing process. As part of the Glint KMS discussion, it emerged that an independent developer (James Simmons) happened to hack together a 3dfx DRM driver. This was interesting as the work was never published or accepted into the mainline kernel, but today we finally are able to lay our eyes on this open-source 3dfx driver for the Banshee, Voodoo 3, and Voodoo 5 graphics cards.
James Simmons has replied to the DRI development list with a message
that contains a link
to a Linux kernel diff file that adds in the 3dfx DRM driver.
This DRM driver provides KMS support for the Banshee, Voodoo 3, and Voodoo 5 graphics cards. The Banshee graphics card is more than twelve years old and was the first from 3dfx to offer fast 2D acceleration support while its 3D support was more limited than the Voodoo 2. The Voodoo 3 was the 3dfx answer to NVIDIA's Riva TNT2 graphics card at the time while the Voodoo 5 was the last graphics card to emerge from this California company that ended up being bought out by NVIDIA.
This 3dfx driver does mode-setting via the fbdev layer, lacks proper TTM integration, and currently is incompatible with the 3dfx X.Org driver. With the X.Org 3dfx driver not working when this DRM driver is loaded, it's of even less benefit to the few people around with Banshee/Voodoo graphics cards. James intends to further work on this driver once he has a new AGP system available, at which point we could potentially see it enter the mainline Linux kernel when it can play well with its DDX counterpart.