
                       3D Accelerated With Nvidia HOWTO

Author: Nvidia Support Team www.nvidia.com
Ķ: [1]ӼC expns@yahoo.com

   ½Ķ: 2002~111 reversion 0.23
     _________________________________________________________________

   ɬAѤ@ӦbLinux@~tΤW]w Nvidia 3D[tdѦ.
     _________________________________________________________________

1. n

     * 1.1 v

2. 

     * 2.1 w
     * 2.2 n

3. UXʵ{

     * 3.1 U GLX Xʵ{
     * 3.2 U֤Xʵ{

4. w

     * 4.1 ֳtw
     * 4.2 ɯ
     * 4.3 ϥSRPMw˥]
     * 4.4 tarw

5. ]w XF86Config-4

6. RedHat8.0

     * 6.1 ֤ kernel-2.4.18-17.8.0

7. ]wTWINVIEW

     * 7.1 ]wXF86Config 

8. Gٱư

     * 8.1 ڭnpoG٫Htq?
     * 8.2  startx, xo˪T:"(EE) NVIDIA(0): Failed
       to initialize the NVdriver kernel module!"
     * 8.3 گҰX, O OpenGLεL
     * 8.4 OpenGL nX{pUĵTOD?
     * 8.5 OpenGL {åBpUĵT:
     * 8.6 bڰ pIII ܼҦ, F.
     * 8.7 ڰ startx , X F, æb XFree86 xdpUO:
     * 8.8 ڪtΥiHB, íw, oO^?
     * 8.9 ڪ OpenGL nCon?
     * 8.10 bsĶ֤Xʵ{ɥX{ĵT:
     * 8.11 X F, åX{ĵT"Failed to allocate LUT context DMA"
     _________________________________________________________________

1. n

   pGĥΤFɷkӾɭPAk(wla,禡wVõ),
   @̵LvӾd.

   b}l]weO:
     * A@wDoɨӳ]w.
     * A惡ɳHӤj.
     * @H "Just for fun" h.

1.1 v

   Copyright (C) 2002, by Nvidia

   This document is free; you can redistribute it and/or modify it under
   the terms of the GNU General Public License as published by the Free
   Software Foundation; either version 2 of the License, or (at your
   option) any later version.

   This document is distributed in the hope that it will be useful, but
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
   General Public License for more details. You can get a copy of the GNU
   GPL [2]here

2. 

2.1 w

   Aܤ֦@ Nvidia tC3D[tdMO,UOҦLinux
   Nvidia tC3D[td:
       ______________________________________________________________

TNT
TNT2/TNT2 Pro
TNT2 Ultra
TNT2 M64/M64 Pro
Vanta/Vanta LT
Aladdin TNT2
GeForce 256
GeForce2 Pro
GeForce2 GTS
GeForce2 MX/MX 400/MX 200/MX 100
GeForce2 Go
GeForce2 Ti
GeForce2 Ultra
GeForce3
GeForce3 Ti 200/Ti 500
GeForce4 Ti 4200/4400/4600
GeForce4 Mx 420/440/460
GeForce4 Go
Quadro
Quadro DCC
Quadro2 MXR
Quadro2 Pro
Quadro2 EX
Quadro2 Go
Quadro4 XGL 550/700/750/900
Quadro4 NVS 200/400
nForce 220D/420/420D Integrated GPU
       ______________________________________________________________

   HUObC SAsXGL(Quadro4) tC(AGP8X):
       ______________________________________________________________

NVIDIA Quadro4  980 XGL
NVIDIA Quadro4  580 XGL
NVIDIA Quadro4  380 XGL
       ______________________________________________________________

2.2 n

     *  2.4.0 HW֤.
     * XFree864.2.0Χs.
     *  3.0 HW Gcc

3. UXʵ{

3.1 U GLX Xʵ{

   AiHU{]榡: rpm , tar, srpm. Ш̾ڧALinux o檩ӤU
   :
       ______________________________________________________________

GLX RPM                http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.i386.rpm
GLX SOURCE RPM         http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.src.rpm
GLX Tar File           http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.tar.gz
GLX RPM for SuSE 7.2   http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.suse72.i386.rpm
GLX RPM for SuSE 7.3   http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.suse73.i386.rpm
GLX RPM for SuSE 8.0   http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.suse80.i386.rpm
GLX RPM for SuSE 8.1   http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_GL
X-1.0-3123.suse81.i586.rpm
FTP1                   ftp://download.nvidia.com/XFree86_40/1.0-3123
FTP2                   ftp://download1.nvidia.com/XFree86_40/1.0-3123
       ______________________________________________________________

3.2 U֤Xʵ{

  Redhat Linux

   Ъ`NRedhatPOtO, JK̤ɯŦۦP֤.
       ______________________________________________________________

RedHat 7.3 ɯŦ 2.4.18-10 UP i386 [c         http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73up_2.4.18_10.i386.rpm

RedHat 7.3 ɯŦ 2.4.18-10 UP i686 [c         http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73up_2.4.18_10.i686.rpm

RedHat 7.3 ɯŦ 2.4.18-10 hCPU i686 [c      http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73smp_2.4.18_10.i686.rpm

RedHat 7.3 ɯŦ 2.4.18-10 hCPU i586 [c      http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73smp_2.4.18_10.i586.rpm

RedHat 7.3 ɯŦ 2.4.18-10 Enterprise i686 [c http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73smp_2.4.18_10.athlon.rpm

RedHat 7.3 hCPU i686 [c                       http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73smp.i686.rpm

RedHat 7.3 hCPU i586 [c                       http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73smp.i586.rpm

RedHat 7.3 Enterprise i686 [c                  http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73bigmem.i686.rpm

RedHat 7.3 UP Athlon [c                        http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73up.athlon.rpm

RedHat 7.3 hCPU Athlon [c                     http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh73smp.athlon.rpm

RedHat 7.2 UP i386 [c                          http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh72up.i386.rpm

RedHat 7.2 UP i686 [c                          http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh72up.i686.rpm

RedHat 7.2 Enterprise i686 [c                  http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.rh72up.athlon.rpm
       ______________________________________________________________

  Mandrake Linux
       ______________________________________________________________

Mandrake 8.2 UP i586 [c                        http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk82up.i586.rpm
Mandrake 8.2 hCPUi586 [c                      http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk82smp.i586.rpm
Mandrake 8.2 Enterprise i586 [c                http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk82enterprise.i586.rpm
Mandrake 8.2 Secure i586 [c                    http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk82secure.i586.rpm
Mandrake 8.1 UP i386 [c                        http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk81up.i386.rpm
Mandrake 8.1 UP i686 [c                        http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk81up.i686.rpm
Mandrake 8.1 hCPU i686 [c                     http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk81smp.i686.rpm
Mandrake 8.1 Enterprise i686 [c                http://download.nvidia.com/XFr
ee86_40/1.0-3123/NVIDIA_kernel-1.0-3123.mdk81enterprise.i686.rpm
       ______________________________________________________________

  SuSE Linux
       ______________________________________________________________

SuSE 8.1                                       http://download.nvidia.com/XFree
86_40/1.0-3123/NVIDIA_kernel-1.0-3123.suse81.i586.rpm
SuSE 8.0                                       http://download.nvidia.com/XFree
86_40/1.0-3123/NVIDIA_kernel-1.0-3123.suse80.i386.rpm
       ______________________________________________________________

  NX

   Kernel Source RPM
   http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_kernel-1.0-3123.
   src.rpm
   Kernel Tar Y
   http://download.nvidia.com/XFree86_40/1.0-3123/NVIDIA_kernel-1.0-3123.
   tar.gz

4. w

4.1 ֳtw

   U۾Aw˥], MUO:
       ______________________________________________________________

 rpm -ivh NVIDIA_kernel.i386.rpm
 rpm -ivh NVIDIA_GLX.i386.rpm
       ______________________________________________________________

4.2 ɯ

   ڭ̤٦ɯ, ЫpUBJ:
       ______________________________________________________________

rpm -e NVIDIA_kernel.i386
rpm -e NVIDIA_GLX
rpm -i NVIDIA_GLX.i386.rpm
       ______________________________________________________________

4.3 ϥSRPMw˥]

   аHUO:
       ______________________________________________________________

rpm --rebuild NVIDIA_kernel.src.rpm
rpm -ivh /ANVIDIA_kernel.i386.rpmsm
rpm -ivh NVIDIA_GLX.i386.rpm
       ______________________________________________________________

   `N: RedHat Linux SRPMsmb:
   /usr/src/redhat/RPMS/i386/NVIDIA_kernel.i386.rpm

4.4 tarw

   BJpU:
       ______________________________________________________________

tar xvzf NVIDIA_kernel.tar.gz
tar xvzf NVIDIA_GLX.tar.gz
cd NVIDIA_kernel
make install
cd ../NVIDIA_GLX
make install
       ______________________________________________________________

   `N:  make instll ,{N۰ʲªXʵ{.

5. ]w XF86Config-4

   `: ]w XFree86  4.0 Χ󰪪.

   pGXF86Config-4]wɤvgF NVIDIA ܥdyz, зӤUCBJ
   :
       ______________________________________________________________

N Dirver "nv"  Driver "vesa" ܧ Driver "nvidia"
bҲճ Load  "dri" M Load  "GLcore" åB[J Load "glx"
       ______________________________________________________________

   HUO Nvidia 3D [tdXʵ{ﶵ

   yzk Option"NvAGP" "ƭ".

   "ƭ"@:
     * 0 AGP\ॢ
     * 1 ϥΥdۨAGP[t
     * 2 ϥ AGPGART [t
     * 3 ϥΥiΪ AGP [t

   yzk Option "NoLogo" "" ΨӨMw Logo }ҩM.

   Option "NoRenderAccel" "" . ΨӨMwδV[t}ҩM.

   Option "NoRenderExtension" "" Ω 8 depth V.

6. RedHat8.0

   U:NVIDIA_kernel-1.0-3123.src.rpm

   U:NVIDIA_GLX-1.0-3123.i386.rpm

   Tw@~tΤWwˤF}on], åBAiL@֤ߪsĶ, pGAb
   sĶ F "make mrproper" AoA@֤ߪsĶ.

   "rpmbuild --rebuild NVIDIA_kernel-1.0-3123.src.rpm" G
   :"/usr/src/redhat/RPMS/i386/NVIDIA_kernel-1.0-3123.i386.rpm"

   w:֤Xʵ{ "rpm -ivh
   /usr/src/redhat/RPMS/i386/NVIDIA_kernel-1.0-3123.i386.rpm"

   wGLX:"rpm -ivh NVIDIA_GLX-1.0-3123.i386.rpm"

   ]wXFree86Config, M~쪺@

6.1 ֤ kernel-2.4.18-17.8.0

   `N:oǨBJOkernel-2.4.18-17.8.0ӳ]w.

   U NVIDIA_kernel-1.0-3123.src.rpm

   U NVIDIA_GLX-1.0-3123.i386.rpm

   N /etc/inittab ]wɤ id:5:initdefault: ܧ id:3:initdefault:
   `N: oNbU@Ұʮɶ}ҦhΤҦ.

   ƥXʵ{:
       ______________________________________________________________

"cd /usr/src/redhat/RPMS/i386"
"mv NVIDIA_kernel-1.0-3123.i386.rpm NVIDIA_kernel-1.0-3123.i386.rpm.old"
       ______________________________________________________________

   N֤ߤɯŬkernel-2.4.18-17.8.0 æPɤɯŷNX
   kernel-source-2.4.18-17.8.0

   ϥηs֤߭sҰʾ.  root bn.

   ѪXʵ{:
       ______________________________________________________________

rpm -e NVIDIA_GLX-1.0-3123
rpm -e NVIDIA_kernel-1.0-3123
       ______________________________________________________________

    "rpmbuild --rebuild NVIDIA_kernel-1.0-3123.src.rpm" N̾ڷs
   ֤߽sĶXʵ{. G:
   "/usr/src/redhat/RPMS/i386/NVIDIA_kernel-1.0-3123.i386.rpm"

   wXʵ{:
       ______________________________________________________________

"rpm -ivh /usr/src/redhat/RPMS/i386/NVIDIA_kernel-1.0-3123.i386.rpm"
       ______________________________________________________________

   wGLXXʵ{
       ______________________________________________________________

"rpm -ivh NVIDIA_GLX-1.0-3123.i386.rpm"
       ______________________________________________________________

   ӤWk]wXF86Config-4

    "startx" .

   N /etc/inittab ]wɤ id:3:initdefault: ܧ id:5:initdefault:

   ̫,ШɨNvidiaaAVʯa!

7. ]wTWINVIEW

   TWINVIEWiHϥΧAPɳsӼ. HU䴩TWINVIEW, M,
   A3D[tdWٱoӱf.
       ______________________________________________________________

GeForce2 MX,
GeForce2 Go
SAs2 (Quadro2) MXR
SAs2 (Quadro2) Go
GeForce4 GPUs.
       ______________________________________________________________

7.1 ]wXF86Config

   bAXF86Config]wɤݦpUyz:
       ______________________________________________________________

Option "TwinView"
Option "SecondMonitorHorizSync"     "<hsync range(s)>"
Option "SecondMonitorVertRefresh"   "<vrefresh range(s)>"
Option "MetaModes"                  "<list of metamodes>"
       ______________________________________________________________

   AiΨHU Options, ̤Oݪ:
       ______________________________________________________________

Option "TwinViewOrientation"        "<relationship of head 1 to head 0>"
Option "ConnectedMonitor"           "<list of connected display devices>"
       ______________________________________________________________

   ̪tq:
     * TwinViwe }ҥ\, SoӴyz,ҦTwinViweOptins|Q.
     * SecondMonitorHorizSync, SecondMonitorVertRefresh ̱jĤGӼ
       ϥγoǳ]w. b Monitor yziHѦ,`N:Фn
       [קaƻsƭ,o˰iw鲣ͷla.
     * MetaModes Ҧ]w p Option "MetaModes" "1280x1024,1280x1024;
       1024x768,1024x768"
     * TwinViewOrientation ]w۹Ĥ@Ӽm.p: "RightOf" (the
       default) "LeftOf" "Above" "Below" "Clone"
       ConnectedMonitor s, p Option "ConnectedMonitor" "CRT, DFP"

8. Gٱư

8.1 ڭnpoG٫Htq?

   @ӻ,oǳb /var/lov/XFree86.*.log x. "(WW)"NĵT
   "(EE)"N~

8.2  startx, xo˪T:"(EE) NVIDIA(0): Failed to initialize
the NVdriver kernel module!"

   oO֤߼ҲժD, Х lsmod dݼҲժJp, pGSAGPXʼ
   սХ modprobe J, pGbJɭԥX{D, iAҸJҲըä
   OA֤߽sĶ. bsĶXʵ{ɭԥiHwA֤: 'make
   install SYSINCLUDE=/path/to/kernel/headers' ҲժW٬ "NVdriver"

8.3 گҰX, O OpenGLεL

   oiM禡w, а "ldconfig" ,t~˵ XF86Config]w, T
   H̭[glxyz.

8.4 OpenGL nX{pUĵTOD?
       ______________________________________________________________

 Error: Could not open /dev/nvidiactl because the permissions
        are too restrictive.  Please see the FREQUENTLY ASKED QUESTIONS
        section of /usr/share/doc/NVIDIA_GLX-1.0/README for steps
        to correct.
       ______________________________________________________________

   ݰ_ӹOPAMwҲժD(ܧF]ƪXv), pGnѨM,
   PAM. pGA /etc/security/ ؿ̦ console.perms ]w бNH <
   dri > }Yry沾. pGAtθ̦ /etc/logindevperms вP
   /dev/nvidiactl ry. M chmod 0666 /dev/nvidia* ; chown
   root /dev/nvidia*

8.5 OpenGL {åBpUĵT:
       ______________________________________________________________

WARNING: Your system is running with a buggy dynamic loader.
        This may cause crashes in certain applications.  If you
        experience crashes you can try setting the environment
        variable __GL_SINGLE_THREADED.  For more information please
        consult the FREQUENTLY ASKED QUESTIONS section in the file
        /usr/share/doc/NVIDIA_GLX-1.0/README.
       ______________________________________________________________

   oOѪʺA[y. г]wܶq __GL_SINGLE_THREADED 
   N. pGAϥbash shell ,ЧAo˰:
       ______________________________________________________________

 export __GL_SINGLE_THREADED
       ______________________________________________________________

   pGAϥ csh Mshell гo˰:
       ______________________________________________________________

setenv __GL_SINGLE_THREADED
       ______________________________________________________________

8.6 bڰ pIII ܼҦ, F.

   ӤWk]w __GL_SINGLE_THREADED

8.7 ڰ startx , X F, æb XFree86 xdpUO:
       ______________________________________________________________

(II) LoadModule: "nvidia"
        (II) Loading /usr/X11R6/lib/modules/drivers/nvidia_drv.o
        No symbols found in this module
        (EE) Failed to load /usr/X11R6/lib/modules/drivers/nvidia_drv.o
        (II) UnloadModule: "nvidia"
        (EE) Failed to load module "nvidia" (loader failed, 256)
        ...
        (EE) No drivers available.
       ______________________________________________________________

   nvidia_drv.o ݭn@ӲŸs, rpmbwˮɨSإ߳oسs, 
   ˧A NVIDIA_GLX  tar w˥]iw.

8.8 ڪtΥiHB, íw, oO^?

   oPAGPҦ, iHqL Option "NvAgp" "03" ӳ]w. "0"
   [t; "1" ܨϥNVAGP; "2" ܨϥAGPGART; "3" ܨϥ AGPART,
   pG, N۰ʨϥNVAGPҦ. `N: nϥ AGPGART Ҧ, AݱNs
   Ķi֤,Ϊ̬OsĶҲ. pGtή֤߷ AGPGART, NVAGP ҦN
   _@. ҥH˧AN AGPGART sĶҲ. t~n`NO, ܧX
   {nsҰʧA~ͮ.

   HU䴩 NVAGP Ҧ, 䥦Шϥ AGPGART Ҧ.
       ______________________________________________________________

Intel 440LX
  o Intel 440BX
  o Intel 440GX
  o Intel 815 ("Solano")
  o Intel 820 ("Camino")
  o Intel 830
  o Intel 840 ("Carmel")
  o Intel 845 ("Brookdale")
  o Intel 845G
  o Intel 850 ("Tehama")
  o Intel 860 ("Colusa")
  o AMD 751 ("Irongate")
  o AMD 761 ("IGD4")
  o AMD 762 ("IGD4 MP")
  o VIA 8371
  o VIA 82C694X
  o VIA KT133
  o VIA KT266
  o RCC 6585HE
  o Micron SAMDDR ("Samurai")
  o Micron SCIDDR ("Scimitar")
  o nForce AGP
  o ALi 1621
  o ALi 1631
  o ALi 1647
  o ALi 1651
  o ALi 1671
  o SiS 630
  o SiS 633
  o SiS 635
  o SiS 645
  o SiS 730
  o SiS 733
  o SiS 735
  o SiS 745
       ______________________________________________________________

   @ Linux ֤ߦbAMD[cCPUWBɥi|X{PAGPBug. ̬O:
       ______________________________________________________________

 AMD Athlon XP
 AMD Athlong 4
 AMD Athlon MP and Models 6
 AMD Duron
       ______________________________________________________________

   AiHb}ɭ׶}̪Bug: b GRUB J mem=nopentium Φb
   lilo.conf ]wɤ[J : append = "mem=nopentium"

   ]w BIOS AGPdb 0xEA M 0xEE .

   ФɯŧA BIOS.

   ]w AGPtvɦ:
       ______________________________________________________________

insmod NVdriver NVreg_ReqAGPRate=2   # uϥβ2
insmod NVdriver NVreg_ReqAGPRate=1   # uϥβ1
       ______________________________________________________________

   ]iHb /etc/modules.conf ]wɤiyz:
       ______________________________________________________________

alias char-major-195 NVdriver
options NVdriver NVreg_ReqAGPRate=2
options NVdriver NVreg_ReqAGPRate=1
       ______________________________________________________________

8.9 ڪ OpenGL nCon?

   i०٦bϥΦѪ禡w.

8.10 bsĶ֤Xʵ{ɥX{ĵT:
       ______________________________________________________________

You appear to be compiling the NVdriver kernel module with
        a compiler different from the one that was used to compile
        the running kernel. This may be perfectly fine, but there
        are cases where this can lead to unexpected behaviour and
        system crashes.

        If you know what you are doing and want to override this
        check, you can do so by setting IGNORE_CC_MISMATCH.

        In any other case, set the CC environment variable to the
        name of the compiler that was used to compile the kernel.
       ______________________________________________________________

   tΤW֤ߤOηeGCCsĶ, ЭssĶ֤, æbsҰʮɸJ
   s֤.

8.11 X F, åX{ĵT"Failed to allocate LUT context DMA"

   ѨMkPW@ӰD@.

References

   1. mailto:expns@yahoo.com
   2. http://www.gnu.org/copyleft/gpl.html
