TDVFB(4)

TDVFB(4) | Device Drivers Manual | TDVFB(4)

# NAME

`tdvfb` —
3Dfx Voodoo Graphics / Voodoo 2 framebuffer driver

# SYNOPSIS

`tdvfb* at pci?`
`wsdisplay* at tdvfb?`
`options TDVFB_CONSOLE`

# DESCRIPTION

The `tdvfb` driver provides support for the graphics cards based on 3Dfx Voodoo Graphics (SST-1) and 3Dfx Voodoo2 (CVG) chipsets and provides an interface for the machine independent wscons(4) driver.

Since both Voodoo Graphics and Voodoo2 were originally designed as a 3D-only solutions, most boards do not have any kind of firmware. The `tdvfb` driver is able to do low level initialization (boot) of the board, which means that it can be used on all architectures and is truly machine independent. However, it also means that driver cannot detect automatically if the card is used as a console. The `TDVFB_CONSOLE` option is provided and should be set if the `tdvfb` driver is intended to be used as a console.

# SEE ALSO

genfb(4), voodoofb(4), wsdisplay(4)

3Dfx Interactive, Inc., Voodoo2 Graphics Engine for 3D Game Acceleration, Revision 1.16, December 1, 1999.

# HISTORY

The `tdvfb` device first appeared in NetBSD 7.0.

# AUTHORS

The `tdvfb` driver was written by Radoslaw Kujawa. 3Dfx Glide 2.x source code, Linux driver by Ghozlane Toumi were used as reference. The wscons(4) attachment code is based mostly on the genfb(4) driver by Michael Lorenz.

# BUGS

3Dfx Voodoo2 has a simple 2D graphics engine. The `tdvfb` driver has minimal support for this engine. It is activated only when the card is running in a 16-bit mode (this is a hardware limitation).

Video mode is hard-coded to 800x600 at 60Hz. Default bit depth for little endian machines is 16-bit, for big endian machines it is 32-bit. Resolution and depth should be selectable at least via kernel configuration file. It is not possible to detect what resolutions are supported by the monitor, since Voodoo Graphics and Voodoo2 have no DDC interface.

8-bit depth is not supported by the hardware. 16-bit depth is supported by the hardware and is the preferred depth, however it does not work correctly on big endian machines at the moment (this is a driver problem).

August 3, 2012 | NetBSD 10.0