Differences between version 26 and revision by previous author of NForce2Notes.
Other diffs: Previous Major Revision, Previous Revision, or view the Annotated Edit History
Newer page: | version 26 | Last edited on Wednesday, March 10, 2004 10:02:25 pm | by WilliamBlew | Revert |
Older page: | version 14 | Last edited on Wednesday, February 25, 2004 1:03:18 pm | by JohnMcPherson | Revert |
@@ -4,9 +4,11 @@
http://www.nvidia.com/view.asp?IO=linux_nforce_1.0-0261
!! Graphics
-You need NVIDIA AGPGART support, and you get this by using 2.4.22+ or 2.6. See RadeonNotes for more on getting an ATI card to work.
+You need NVIDIA AGPGART support, and you get this by using 2.4.22+ or 2.6.3+
Some people have experienced performance issues with 8x AGP using kernels before 2.6.3.
See RadeonNotes for more on getting an ATI card to work.
+
+To get an nvidia card working, see their http://www.nvidia.com/ site for their latest graphics driver (currently [1.-5336|http://www.nvidia.com/object/linux_display_ia32_1.-5336.html] as of March 6, 2004)
.
!! Network
The network controller on nForce2 based boards only works with a binary driver called nvnet that is supplied by nvidia in the package above. This seems to work fine and gives reasonable performance.
@@ -15,9 +17,9 @@
See also [ForcedEth|http://www.hailfinger.org/carldani/linux/patches/forcedeth/], a reverse engineered open source ethernet driver for the onboard NVIDIA lan.
!Note with regard to network performance
-Sometimes you'll notice, when doing large transfers over your LAN, that your CPU usage goes through the roof and eth0 generates up to 500,000 interrupts a second. The nvnet driver is to blame; you can either load the module with 'optimizations=1' to optimize for CPU usage instead of throughput (interestingly, this doesn't seem to affect throughput at all), or you can load forcedeth, which makes it all go away. forcedeth should be included in 2.4.24+ and 2.6.2rc1
+.
+Sometimes you'll notice, when doing large transfers over your LAN, that your CPU usage goes through the roof and eth0 generates up to 500,000 interrupts a second. The nvnet driver is to blame; you can either load the module with 'optimizations=1' to optimize for CPU usage instead of throughput (interestingly, this doesn't seem to affect throughput at all), or you can load forcedeth, which makes it all go away. forcedeth should be included in 2.4.24+ and is within
2.6.3
+.
!! Sound
Provided you have your motherboard correctly setup (see below) you should be able to use the kernel supplied OSS i810_audio module to get sound using the nvidia chipset. You can get better facility out of the nvaudio module but it's hard to get going.
@@ -42,13 +44,13 @@
</verbatim>
You can either be using an analog speaker setup, or a digital speaker setup. While the above configuration is sufficient for analog speakers, the following additional notes are applicable to a digital speaker setup.
-The digital setup will be using the motherboard's S/PDIF output. The ALSA card , device 0 (playback) provides the analog outputs. The
ALSA card , device 2 (playback) provides the S/PDIF (i.e. IEC958) output.
+The digital setup will be using the motherboard's S/PDIF output. The ALSA card , device 0 (playback) provides the analog outputs. However, the
ALSA card , device 2 (playback) provides the S/PDIF (i.e. IEC958) output.
-You will want to direct ALSA's oss
emulation device 0 (/dev/dsp0, etal) to ALSA device 2, so that applications using the free/
OSS API will produce
their sounds on
your nifty digital speaker system. To accomplish this mapping of free/
OSS device 0 to ALSA device 2, add the following to your modules.conf file:
+You will want to direct ALSA's OSS
emulation device 0 (/dev/dsp0, /dev/adsp0
, etal) to ALSA device 2, so that applications using the OSS API will send
their sounds to
your nifty digital speaker system. To accomplish this mapping of OSS device 0 to ALSA device 2, add the following to your modules.conf file:
<verbatim>
-options snd-pcm-oss dsp_map=2
+options snd-pcm-oss dsp_map=2 adsp
_map=2
</verbatim>
In addition, you might want to configure alsa-lib to provide software mixing and rate conversion, with the following /etc/asound.conf file:
<verbatim>
### /etc/asound.conf for nforce2 apu
@@ -71,9 +73,17 @@
rate 44100
}
}
</verbatim>
+While the above alsa-lib "nforce" device is limited to 2 channels, it does provides software audio mixing. This nicely handles the mixing of audio from multiple applications.
+
+In addition to the above configuration notes, here are a few usage notes to keep in mind:
+
+With the above /etc/asound.conf xmms (1.2.8) will happily use its alsa-xmms (0.9.12) output plugin when its configured to use the "nforce" device instead of its default ALSA device. Similarly, by using the alsa9:nforce audio device mplayer (0.92) will also happily generate downmixed stereo S/PDIF output.
+
These nforce2 S/PDIF ALSA usage notes are current as of ALSA 1.0.2 (circa Feb/2004). The above config was tested with an unpatched linux kernel 2.6.3 (alsa-driver 1.0.2c) on an ABIT NF7-S rev2 optically S/PDIF connected to a Cambridge Sound Works DTT3500 Digital Home Speaker System.
+
+I found these invaluable files within ALSA's [Documentation|http://cvs.sourceforge.net/viewcvs.py/alsa/alsa-kernel/Documentation/#dirlist] directory: [ALSA-Configuration.txt|http://cvs.sourceforge.net/viewcvs.py/alsa/alsa-kernel/Documentation/ALSA-Configuration.txt?view=markup] and [OSS-Emulation.txt|http://cvs.sourceforge.net/viewcvs.py/alsa/alsa-kernel/Documentation/OSS-Emulation.txt?view=markup].
!!USB
If you're running Linux 2.6, you will want to use the ohci-hcd [USB] module, in a stanza in modprobe.conf like so:
@@ -83,9 +93,17 @@
alias usb-controller1 ehci-hcd
</verbatim>
!! IDE Controller
-I had some fun getting my hard disk running
in a decent mode with my motherboard
. It seems that
the [
IDE] "fixes" applied between
2.4.20
and 2.4
.21 have broken compatibility for the nForce2 IDE chipset
and you
can only get 16-bit PIO mode
. I
've not yet investigated exactly what changed between
the two kernels
to break this
.
+The ATA100 support for nforce2 boards is mature
in kernel versions 2
.4.24 and 2.6.3. Just be sure to enable
the kernel's nforce2
IDE driver.
+
+!! ACPI
+The
2.4.25
and 2.6
.3 kernels support nforce2 boards' [ACPI|http://www.acpi.info/] (Advanced Configuration & Power Interface) implementation. With ACPI
and its thermal zone support enabled, userspace programs (e.g. gkrellm)
can display the CPU temperature
.
+
+!! APIC
+The 2.4.25 and 2.6.3 kernels support nforce2 boards
' [APIC|http://www.intel.com/design/chipsets/datashts/290566.htm]. However, due to a some poorly understood hardware? defect (
the C1 disconnect bug) most nforce2 boards frequently freeze when the kernel's APIC/APIC-IO support is enabled. Here is a website that provides more details: http://atlas.et.tudelft.nl/verwei90/nforce2/index.html
+
+The word on the linux kernel mailing list is that shuttle's nforce2 boards have a recent BIOS update that addresses their APIC freeze issue. While recent progress seems
to be happening, my ABIT NF7-S (rev2) board still freezes with kernel 2.6
.3
!!GA-7N400
The GA-7N400 is a Gigabyte Socket A motherboard based on the nForce2 chipset. I had a few things catch me out as I got it working with linux.