There are several choices for configuring the NVIDIA kernel module's use of AGP: you can choose to either use the NVIDIA AGP module (NVAGP), or the AGP module that comes with the FreeBSD kernel (AGPGART). This is controlled through the "NvAGP" option in your X config file:
Option "NvAgp" "0" ... disables AGP support Option "NvAgp" "1" ... use NVAGP, if possible Option "NvAgp" "2" ... use AGPGART, if possible Option "NvAGP" "3" ... try AGPGART; if that fails, try NVAGP
Unlike other operating systems such as Linux, this option is not
the only controlling factor at this point; because of known
nvidia.ko is built without
support for FreeBSD's AGP driver by default. This behavior can be
Note that if you built nvidia.ko with support for the FreeBSD
driver it will not load unless
agp.ko is special in that
you can not load it after the system boot is complete, you need to
append the following line to
/boot/loader.conf to make sure it is
# -- load FreeBSD AGP GART driver -- # agp_load="YES"
Also note that if
loaded, it could conflict with the NVIDIA AGP GART driver (NvAGP),
resulting in stability problems; for this reason, the NVIDIA driver
will abort NvAGP initialization when it detects
Current FreeBSD releases are shipped with
agp.ko built into the kernel; in order to allow
NvAGP to work, the kernel can be rebuilt without 'device agp' or
the following entry added to
When built with support for the FreeBSD AGP driver,
nvidia.ko will fall back to using NvAGP when it
agp.ko (this will be
the case when
agp.ko does not support
your AGP chipset or was explicitly disabled with device hints).
It is highly recommended that you use the NVIDIA AGP driver.
The following AGP chipsets are supported by the NVIDIA AGP driver; for all other chipsets it is recommended that you use the AGPGART module.
|Supported AGP Chipsets|
|Intel 815 ("Solano")|
|Intel 820 ("Camino")|
|Intel 840 ("Carmel")|
|Intel 845 ("Brookdale")|
|Intel 850 ("Tehama")|
|Intel 855 ("Odem")|
|Intel 860 ("Colusa")|
|Intel 865G ("Springdale")|
|Intel 875P ("Canterwood")|
|Intel E7205 ("Granite Bay")|
|Intel E7505 ("Placer")|
|AMD 751 ("Irongate")|
|AMD 761 ("IGD4")|
|AMD 762 ("IGD4 MP")|
|AMD 8151 ("Lokar")|
|Micron SAMDDR ("Samurai")|
|Micron SCIDDR ("Scimitar")|
If you are experiencing AGP stability problems, you should be aware of the following:
Additional AGP Information
Many Via-based motherboards allow adjusting the AGP drive strength in the system BIOS. The setting of this option largely affects system stability, the range between 0xEA and 0xEE seems to work best for NVIDIA hardware. Setting either nibble to 0xF generally results in severe stability problems.
If you decide to experiment with this, you need to be aware of the fact that you are doing so at your own risk and that you may render your system unbootable with improper settings until you reset the setting to a working value (w/ a PCI graphics card or by resetting the BIOS to its default values).
Make sure you have the latest system BIOS provided by the motherboard manufacturer.
On ALi1541 and ALi1647 chipsets, NVIDIA drivers disable AGP to work around timing and signal integrity problems. You can force AGP to be enabled on these chipsets by setting NVreg_EnableALiAGP to 1. Note that this may cause the system to become unstable.
Early system BIOS revisions for the ASUS A7V8X-X KT400 motherboard misconfigure the chipset when an AGP 2.x graphics card is installed; if X hangs on your ASUS KT400 system with NvAGP enabled and the installed graphics card is not an AGP 8x device, make sure that you have the latest system BIOS installed.