Using X Windows with a GeForce2 Go or GeForce4 Video Card


UPDATE: nVidia has just released their native drivers for FreeBSD! I have tested them on my Dell 8100 with GeForce 2 Go card, and it is beautiful. Download the drivers from For those still wanting to do the XFree86 native way, read on.

Some newer desktops and laptops like the Dell Inspiron 8100 ship with the nVidia GeForce2 Go video card or GeForce4-based cards. As of XFree86 4.2.0, this card is only supported in 16-bit mode using the vesa driver. Alternatively, a binary-only driver is available from However, this driver has been problematic for some users.

Fortunately, Mark Vojkovich of the XFree86 core team committed some patches to CVS to add GeForce2 Go support into the standard XFree nv driver. This article will explain how to install this new nv driver, and configure X to support the nVidia GeForce2 Go or GeForce4.

1 Getting the New nv Driver

First, you must have an up-to-date ports tree on your machine. You will be rebuilding your x11-servers/XFree86-4-Server port.

Once your have your ports tree up-to-date, download the new driver source code here. These patches only apply to XFree86-Server-4.2.0 or higher. They will not apply to 4.1.0 or lower.

2 Building the Driver

Building the new driver requires you to rebuild the x11-servers/XFree86-4-Server port. NOTE: you must have the rest of XFree86 built prior to rebuilding XFree86-4-Server.

    # cd /usr/ports/x11-servers/XFree86-4-Server
    # make clean
    # make patch
    # cd work
    # tar -xzf /path/to/nv.tar.gz
    # cd ..
    # make all

If you already have XFree86-4-Server installed, be sure to uninstall it before reinstalling the new version.

    # make deinstall
    # make reinstall

If this is a new installation of XFree86-4-Server, then simply install the port normally after the build completes.

    # make install

3 Configuring X

After the new driver is installed, X must be configured to use it. Since we're using the standard nv driver that ships with XFree86 4.x, it should be automatically used by programs like xf86cfg. Make sure you have a section in your XF86Config[-4] like the following.

    Section "Device"
      Driver      "nv"

Here is a sample XF86Config I use with my Dell Inspiron 8100.

4 Caveats

5 Credits

Credit for the GeForce2 Go patch goes to Mark Vojkovich from the XFree86 core team. The code also contains contributions from other XFree86 developers. See the nv(4) manpage for the complete list of authors that have contributed to this code.

This, and other documents, can be downloaded from

For questions about FreeBSD, read the documentation before contacting <>.
For questions about this documentation, e-mail <>.