NVIDIA nForce/nForce2/nForce3 AGPGART Linux Kernel Patch
========================================================

NOTE: The 2.4.20/21/22 patches only support the respective kernel versions.
You will need to either install the respective kernel version and sources
before patching, or manually merge these changes to other kernel versions.

Patching the Kernel
-------------------

- Change to the Linux kernel source directory.

  Example: cd /usr/src/linux-2.4.22
  
- Patch the kernel. Watch out for any warnings or errors.

  patch -p1 < linux-2.4.22-agpgart.diff


Configuring the x86 Kernel
--------------------------

In order to use NVIDIA AGP chipset support, the x86 kernel must be configured
accordingly.

- In the kernel source directory, run a kernel configuration tool such as
  menuconfig:

  make menuconfig

- In the 'Processor type and features' section, make sure that an x86 or x86-64
  compatible CPU is selected.

- In the 'Character devices' section, select '/dev/agpgart (AGP Support)' as
  an included or modularized kernel feature.

- For nForce/nForce2 support, enable 'NVIDIA chipset support' in the same
  section. For nForce3 support, enable 'x86-64 chipset support (AMD 8151,
  NVIDIA nForce3)'.


Configuring the x86-64 Kernel
-----------------------------

In order to use NVIDIA AGP chipset support, the x86-64 kernel must be configured
accordingly.

- In the kernel source directory, run a kernel configuration tool such as
  menuconfig:

  make menuconfig

- If you enable 'IOMMU support' in the 'Processor type and features' section,
  nForce3 chipset support will be automatically included in the kernel.

- If you disable 'IOMMU support', follow these steps:
  In the 'Character devices' section, select '/dev/agpgart (AGP Support)' as
  an included or modularized kernel feature.
  Then enable 'x86-64 chipset support (AMD 8151, NVIDIA nForce3)'.


Rebuilding and Reinstalling the Kernel
--------------------------------------

Rebuild and reinstall the kernel and the kernel modules following the
appropriate procedure for your GNU/Linux distribution.
