Contents

  1. These Contents
  2. Overview
  3. Package Availability
  4. Minimum Requirements
  5. Licensing
  6. What The Package Contains
  7. What The Package Does
  8. Installation
  9. Removal
  10. Module Parameters 
  11. Audio Control Panel
  12. Troubleshooting
  13. Frequenty Asked Questions (FAQ)
  14. Change List

Overview

The nForce chipset contains a number of hardware devices that can be run under Linux. Along with a display processor, the chipset includes a network device (MAC), audio hardware, an IDE controller, and an OHCI USB controller. Many of the components of the nForce chipset use industry standard interfaces; thus, not all components require custom drivers to be used on Linux.

Bug reports and installation questions may be directed to:

linux-nforce-bugs@nvidia.com

Please be sure read the TroubleShooting section first, and to report all relevant details, such as Linux Disribution, Kernel version, binary or source RPM, the fact that you checked the SBIOS configuration, the contents of /etc/modules.conf, and a listing of any error messges you find (you can run dmesg, or look at /var/log/messages as root). If you are having operational problems, please be as specific as possible, so we can try to reproduce the problem, and determine if we have a fix for it.

Package Availability

This package can be found at the NVIDIA web site:

http://www.nvidia.com/content/drivers/drivers.asp

We strongly urge you to only use software obtained from this website or a trusted Linux distribution for your nForce hardware.

Minimum Requirements

At the current time, the nForce drivers require a 2.4 series kernel.

Licensing

The network driver provided by NVIDIA is subject to the NVIDIA software license; the license is available on the NVIDIA website, and is included in this package. By using this software, you are agreeing to the terms of the license. The rest of the software is provided under the GNU public license, which is also included in this package.

What the Package Contains

The packages contain the following items:

  1. This Installation Guide
  2. The GNU license
  3. The NVIDIA license for the network driver software
  4. Makefiles with all, install, and uninstall targets
  5. Source for the nForce audio driver
  6. Source for the nForce audio control panel
  7. Source and binary files for building a network driver for NVIDIA hardware
  8. A kernel patch for GART support on nForce chipsets

What the Package Does

This package will build a network driver and an audio driver, then place them in the appropriate locations for loadable kernel modules.  The network driver is from NVIDIA, the audio driver is based on the open source i810 audio driver but has been modified to work with NVIDIA hardware.  A kernel patch to enable GART support on nForce chipsets is also supplied, this patch must be merged into the kernel to be used.

The binary packages will also update the modules configuration file, commenting out existing network, audio and usb entries, and add entries for the new drivers. A backup file is created before any changes are made to the configuration file. If the binary package is uninstalled, the package attempts to restore the original version of the file from this backup.

The tar files don't try to modify the module configuration files. You should make sure the following lines are in the configuration file (it will be named /etc/modules.conf on most current distributions):

Neither the binary nor the source packages will load the kernel drivers during the installation. You can do this manually using insmod or modprobe. (USAGE: 'insmod modulename' or 'modprobe modulename') Upon reboot, the kernel modules should insert themselves automatically.

Installation

Nvidia has provided precompiled binary RPMs for several versions of RedHat and Mandrake. You should select the RPM appropriate to your current kernel version. You can check what kernel your machine is running by checking the output of 'uname -r'.

If you are using a different version of Red Hat or Mandrake, a modified kernel, or a different rpm-based distribution, you should use the SRPM to build an RPM appropriate for your system. If you are using the SuSE RPM, see NOTE: SuSE INSTALLATIONS, below.

If you are using a non-RPM based system, or if you prefer not to use RPM, you should download and install from the source tarballs.

To install a binary rpms, you only need use rpm to install the package. This should install and configure the drivers. A source rpm requires building and installing the drivers yourself. The files in this package are organized into a build hierarchy to make this task easier.

You might want to check the BIOS configuration on your system to ensure that the audio and networking devices will be detected. See the System BIOS Configuration description in the Troubleshooting section.

NOTE: SuSE INSTALLATIONS

Upgrading the SuSE Kernel:

If you are using the SuSE Linux distribution, note that the binary RPM for SuSE only supports SuSE versions using the upgraded kernel. This note contains directions from SuSE on upgrading to the new kernel for SuSE versions 7.1, 7.2 and 7.3:

Get the upgraded kernel from one of the following sites (depending on SuSE distribution):

ftp://ftp.suse.com/pub/suse/i386/update/7.1/kernel/2.4.16 (for SuSE 7.1)
ftp://ftp.suse.com/pub/suse/i386/update/7.2/kernel/2.4.16 (for SuSE 7.2)
ftp://ftp.suse.com/pub/suse/i386/update/7.3/kernel/2.4.16 (for SuSE 7.3)

For update instructions, see SuSE's SBD article, located at

http://sdb.suse.de/en/sdb/html/ftpkernel.html

Alternative SuSE Installations:

The following instructions should be used before proceeding with a source RPM or tar file installation. You will need to use one of these installation methods if you want to install nForce drivers without upgrading your kernel. Please note that these installation methods won't work for SuSE 7.1 or 7.2.

Install with YaST(2) the following d (development) series packages

Use the following commands to set up your development environment

example% cd <directory with the rpm file>
example% su
Password: ******
example# pushd /usr/src/linux
example# make cloneconfig
example# make dep
example# popd

You can now proceed with the tar file or source RPM installation steps below, omitting the steps to become root.

Binary RPM Installation

The binary installation procedure involves downloading the binary RPM file appropriate to your distribution and installing it. If you are using the SuSE distribution, see NOTE: SuSE INSTALLATIONS, above.

Become root and install using rpm:

example% cd <directory with the rpm file>
example% su
Password: ******
example# rpm -i nforce{package name}-1.0-1.rpm

Source RPM Installation

The Source RPM will create an RPM appropriate for your system. If you are using the SuSE RPM, see NOTE: SuSE INSTALLATIONS, above. To install:

example% cd <directory with the rpm file>
example% su
Password: ******
example# rpmbuild --rebuild nforce{package name}-1.0-1.src.rpm

Or on older systems that don't support "rpmbuild":


example# rpm --rebuild nforce{package name}-1.0-1.src.rpm

At this point, the SRPM will be recompiled. When this command has completed, look for a line that says:

Wrote: /usr/src/{RPM root dir}/RPMS/i386/nforce{package name}-1.0-1.rpm

This will provide you with the name and location of the new RPM. You should then install this RPM per the instructions in the Binary RPM Installation section.

Tar File Installation

The tar file package contains source code, libraries, makefiles and documentation organized into a single tar file.

To install the tar file, unpack it, build the sources and install them. If you are using the SuSE RPM, see NOTE: SuSE INSTALLATIONS, above:

example% tar -xvzf nforce.tgz
example% cd nforce
example% make
example% su
Password: ******
example# make install

GART Patch Installation

NOTE: This patch only supports kernels 2.4.20 and 2.4.21.  You will need to either install the approriate kernel and sources before patching, or manually merge these changes to other kernel versions.

Patching the Kernel

  1. Change to the Linux kernel source directory.

    example# cd /usr/src/linux-2.4.20

  2. Patch the kernel. Watch out for any warnings or errors.

    example# patch -p1 < linux-2.4.20-agpgart.diff

Configuring the Kernel

Rebuilding and Reinstalling the Kernel

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



         

Removal

To remove the contents of one of the binary rpm files, use rpm to remove it:

example% cd <directory with rpm file>
example% su
Password: ******
example# rpm -e nforce<package name>-1.0-1.rpm

To remove the contents of one of the source rpm or tar file, go to the build directory, and run "make uninstall":

example% cd <directory with unpacked build>
example% cd nforce
example% su
Password: ******
example# make uninstall


Module Parameters

nvnet Module Parameters

The nForce network driver supports the following optional parameters:
  1. optimization
  2. speed
  3. duplex

Optimization

The nForce network driver supports two optimization modes:
CPU optimization mode ruduces the CPU utilization by using interrupt moderation.  

Throughput optimization mode maximizes the throughput.  This mode has higher CPU consumption.  

By default, the driver runs in throughput optimization mode.  The optimization mode can be specified by supplying the module parameter "optimization"

Speed

The "speed" module parameter can be used set the interface speed of the ethernet controller.  By default the controller will autosense the interface speed, but also supports the following values:

Duplex

The "duplex" module parameter can be used to specify the interface duplex.  By default the controller will autoselect duplex, but also supports the following values:

nvaudio Module Parameters

The nForce audio driver supports the following optional parameters:
  1. spdif_status

spdif_status

The "spdif_status" module parameter is used to enable or disable S/PDIF support in the driver.  By default S/PDIF is enabled, but can be disabled by setting spdif_status to 0.  The driver can only support 48kHz sample rate when S/PDIF is enabled, so disabling it will increase compatability with applications that make assumptions about what sample rates the driver supports.

Configuration

Module parameters can be specified either on the command line when loading the module, or in the module configuration file (/etc/modules.conf).  For example to have the nForce ethernet driver use throughput optimized mode, add the following to the module configuration file:

options nvnet optimization=1

Or if loading the module manually from the command line:

modprobe nvnet optmization=1

The module parameters for the ethernet driver can be verified using the command "modinfo -p nvnet"

Audio Control Panel

A control panel application is included with the audio driver to control the features of the nForce audio driver.  These features include: The audio control panel may be invoked by typing "nvpanel" at the command line:
example% nvpanel

TroubleShooting

System BIOS Configuration

Since the audio and network drivers work on the nForce chipset, these devices along with other motherboard devices are controlled by the System BIOS. If the installed drivers don't recognize hardware on your system, the problem may be your System BIOS's plug and play configuration. If your system BIOS expects the operating system to configure hardware devices, and your Linux kernel doesn't support ACPI-style configuration, you'll need to change your BIOS settings.

To view or change an Award-style system BIOS, reboot the machine, and press the Delete key. When you get a configuration screen, select "PnP/PCI Configurations" in that screen if "PNP OS Installed []" Has "Yes" choosen, change the selection to "No".

If your BIOS is Phoenix-style, use the F2 key instead of Delete, and scroll through the menus to find OS Type, and chose "Other". The exact details of System BIOS configuration vary with BIOS vendor, so the screens may not be exactly the same.

Warning: You should write down the original configuration of the BIOS before changing it. Changing your system BIOS configuration may adversely affect the operation of the system, and even make it unbootable.

Frequenty Asked Questions (FAQ)

Change List

Most recent changes at top of list. Each bullet indicates a public release on NVIDIA web site.