|
Lines 14-19
Link Here
|
| 14 |
<author title="Editor"> |
14 |
<author title="Editor"> |
| 15 |
<mail link="nightmorph@gentoo.org">Joshua Saddler</mail> |
15 |
<mail link="nightmorph@gentoo.org">Joshua Saddler</mail> |
| 16 |
</author> |
16 |
</author> |
|
|
17 |
<author title="Editor"> |
| 18 |
<mail link="wolf31o2@gentoo.org">Chris Gianelloni</mail> |
| 19 |
</author> |
| 17 |
|
20 |
|
| 18 |
<abstract> |
21 |
<abstract> |
| 19 |
Many Gentooists have an nVidia chipset on their system. nVidia provides specific |
22 |
Many Gentooists have an nVidia chipset on their system. nVidia provides specific |
|
Lines 25-32
Link Here
|
| 25 |
<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> |
28 |
<!-- See http://creativecommons.org/licenses/by-sa/2.5 --> |
| 26 |
<license/> |
29 |
<license/> |
| 27 |
|
30 |
|
| 28 |
<version>1.26</version> |
31 |
<version>1.27</version> |
| 29 |
<date>2006-07-25</date> |
32 |
<date>2006-08-29</date> |
| 30 |
|
33 |
|
| 31 |
<chapter> |
34 |
<chapter> |
| 32 |
<title>Introduction</title> |
35 |
<title>Introduction</title> |
|
Lines 35-42
Link Here
|
| 35 |
|
38 |
|
| 36 |
<p> |
39 |
<p> |
| 37 |
nVidia release their own Linux drivers which provide good performance and full |
40 |
nVidia release their own Linux drivers which provide good performance and full |
| 38 |
3D acceleration. The driver releases are split up into two parts: |
41 |
3D acceleration. There are two sets of drivers in portage. The first set is an |
| 39 |
<c>nvidia-kernel</c> and <c>nvidia-glx</c>. |
42 |
older set and split into two parts: <c>nvidia-kernel</c> and <c>nvidia-glx</c>. |
|
|
43 |
The second set is newer, and is split into <c>nvidia-drivers</c> and |
| 44 |
<c>nvidia-legacy-drivers</c>. If you are installing for the first time, you |
| 45 |
should use the newer set. |
| 40 |
</p> |
46 |
</p> |
| 41 |
|
47 |
|
| 42 |
<p> |
48 |
<p> |
|
Lines 52-57
Link Here
|
| 52 |
uses the <c>nvidia-kernel</c> kernel driver to interface with the hardware. |
58 |
uses the <c>nvidia-kernel</c> kernel driver to interface with the hardware. |
| 53 |
</p> |
59 |
</p> |
| 54 |
|
60 |
|
|
|
61 |
<p> |
| 62 |
The newer drivers have the functionality of both nvidia-kernel and nvidia-glx in |
| 63 |
a single unified ebuild, much like how nVidia themselves ship the drivers. |
| 64 |
</p> |
| 65 |
|
| 66 |
<note> |
| 67 |
Both nvidia-kernel and nvidia-glx are deprecated, and will be removed from the |
| 68 |
portage tree in the future in favor of nvidia-drivers and nvidia-legacy-drivers. |
| 69 |
If you use nvidia-kernel and nvidia-glx, then you should migrate to the newer |
| 70 |
packages. |
| 71 |
</note> |
| 72 |
|
| 55 |
</body> |
73 |
</body> |
| 56 |
</section> |
74 |
</section> |
| 57 |
</chapter> |
75 |
</chapter> |
|
Lines 85-92
Link Here
|
| 85 |
</pre> |
103 |
</pre> |
| 86 |
|
104 |
|
| 87 |
<p> |
105 |
<p> |
| 88 |
Also, you will have to add <c>agpgart</c> support to your kernel, either |
106 |
Also, you can optionally enable <c>agpgart</c> support to your kernel, either |
| 89 |
compiled in or as a module: |
107 |
compiled in or as a module. If you do not use the in-kernel agpgart, then the |
|
|
108 |
drivers will use their own agpgart implementation, called NvAGP. On certain |
| 109 |
systems, this performs better than the in-kernel agpgart, and on others, it |
| 110 |
performs worse. You will need to evaluate this on your own system to get the |
| 111 |
best performance. If you are unsure what to do, use the in-kernel agpgart: |
| 90 |
</p> |
112 |
</p> |
| 91 |
|
113 |
|
| 92 |
<pre caption="Enabling agpgart"> |
114 |
<pre caption="Enabling agpgart"> |
|
Lines 126-137
Link Here
|
| 126 |
|
148 |
|
| 127 |
<p> |
149 |
<p> |
| 128 |
Then, under "VESA driver type" select either <c>vesafb</c> or |
150 |
Then, under "VESA driver type" select either <c>vesafb</c> or |
| 129 |
<c>vesafb-tng</c>: |
151 |
<c>vesafb-tng</c>. If you are using an AMD64 processor, you should select vesafb |
|
|
152 |
rather than vesafb-tng: |
| 130 |
</p> |
153 |
</p> |
| 131 |
|
154 |
|
| 132 |
<pre caption="Select framebuffer type"> |
155 |
<pre caption="Select framebuffer type"> |
| 133 |
( ) vesafb |
156 |
(X) vesafb |
| 134 |
(X) vesafb-tng |
157 |
( ) vesafb-tng |
| 135 |
</pre> |
158 |
</pre> |
| 136 |
|
159 |
|
| 137 |
<p> |
160 |
<p> |
|
Lines 148-160
Link Here
|
| 148 |
<body> |
171 |
<body> |
| 149 |
|
172 |
|
| 150 |
<p> |
173 |
<p> |
| 151 |
nVidia's modules and libraries are combined in two packages: <c>nvidia-glx</c> |
174 |
The nvidia-kernel, nvidia-drivers, and nvidia-legacy drivers ebuilds |
| 152 |
and <c>nvidia-kernel</c>. The former are the X11 GLX libraries while the latter |
175 |
automatically discover your kernel version based on the |
| 153 |
are the kernel modules. |
|
|
| 154 |
</p> |
| 155 |
|
| 156 |
<p> |
| 157 |
The nvidia-kernel ebuild auto discovers your kernel version based on the |
| 158 |
<path>/usr/src/linux</path> symlink. Please ensure that you have this symlink |
176 |
<path>/usr/src/linux</path> symlink. Please ensure that you have this symlink |
| 159 |
pointing to the correct sources and that your kernel is correctly configured. |
177 |
pointing to the correct sources and that your kernel is correctly configured. |
| 160 |
Please refer to the Configuring the Kernel section of the <uri |
178 |
Please refer to the Configuring the Kernel section of the <uri |
|
Lines 202-209
Link Here
|
| 202 |
<note> |
220 |
<note> |
| 203 |
Unfortunately, certain legacy video cards are not supported by the newer |
221 |
Unfortunately, certain legacy video cards are not supported by the newer |
| 204 |
versions of <c>nvidia-glx</c> and <c>nvidia-kernel</c>. nVidia provides a <uri |
222 |
versions of <c>nvidia-glx</c> and <c>nvidia-kernel</c>. nVidia provides a <uri |
| 205 |
link="http://www.nvidia.com/object/IO_18897.html">list of supported cards</uri>. |
223 |
link="http://www.nvidia.com/object/IO_18897.html">list of supported cards</uri>. Please check the list before installing the drivers. |
| 206 |
Please check the list before installing the drivers. |
|
|
| 207 |
</note> |
224 |
</note> |
| 208 |
|
225 |
|
| 209 |
<p> |
226 |
<p> |
|
Lines 231-245
Link Here
|
| 231 |
</pre> |
248 |
</pre> |
| 232 |
|
249 |
|
| 233 |
<p> |
250 |
<p> |
| 234 |
If you own one of these cards, you will have to mask the newer versions of the |
251 |
If your card is listed in the legacy list, then you will be required to install |
| 235 |
nVidia drivers, and install an older version: |
252 |
the <c>nvidia-legacy-drivers</c> package to get 3D support. |
| 236 |
</p> |
253 |
</p> |
| 237 |
|
254 |
|
| 238 |
<pre caption="Masking newer drivers"> |
|
|
| 239 |
# <i>echo ">media-video/nvidia-kernel-1.0.6629-r5" >> /etc/portage/package.mask</i> |
| 240 |
# <i>echo ">media-video/nvidia-glx-1.0.6629-r7" >> /etc/portage/package.mask</i> |
| 241 |
</pre> |
| 242 |
|
| 243 |
</body> |
255 |
</body> |
| 244 |
</section> |
256 |
</section> |
| 245 |
<section> |
257 |
<section> |
|
Lines 247-258
Link Here
|
| 247 |
<body> |
259 |
<body> |
| 248 |
|
260 |
|
| 249 |
<p> |
261 |
<p> |
| 250 |
Now it's time to install <c>nvidia-kernel</c> and <c>nvidia-glx</c>. Since |
262 |
Now it's time to install the drivers. The newer drivers are unified, so you will |
| 251 |
<c>nvidia-glx</c> depends on <c>nvidia-kernel</c>, installing <c>nvidia-glx</c> |
263 |
only need to install a single package. The older drivers are split, so it will |
| 252 |
is sufficient. |
264 |
require two packages to be installed. Since <c>nvidia-glx</c> depends on |
|
|
265 |
<c>nvidia-kernel</c>, installing <c>nvidia-glx</c> is sufficient. |
| 253 |
</p> |
266 |
</p> |
| 254 |
|
267 |
|
| 255 |
<pre caption="Installing the nVidia modules"> |
268 |
<pre caption="Installing the nVidia drivers"> |
|
|
269 |
(If you have a card not listed in the legacy list above) |
| 270 |
# <i>emerge nvidia-drivers</i> |
| 271 |
(If your card is listed in the legacy list) |
| 272 |
# <i>emerge nvidia-legacy-drivers</i> |
| 273 |
</pre> |
| 274 |
|
| 275 |
<pre caption="Installing the nVidia drivers (alternate)"> |
| 256 |
# <i>emerge nvidia-glx</i> |
276 |
# <i>emerge nvidia-glx</i> |
| 257 |
</pre> |
277 |
</pre> |
| 258 |
|
278 |
|
|
Lines 261-275
Link Here
|
| 261 |
kernel</uri> or recompile the current one, you have to run <c>emerge |
281 |
kernel</uri> or recompile the current one, you have to run <c>emerge |
| 262 |
nvidia-kernel</c> to reinstall the nVidia modules. <c>nvidia-glx</c> is |
282 |
nvidia-kernel</c> to reinstall the nVidia modules. <c>nvidia-glx</c> is |
| 263 |
unaffected by a kernel change and doesn't even need to be rebuilt when you |
283 |
unaffected by a kernel change and doesn't even need to be rebuilt when you |
| 264 |
recompile/upgrade X. |
284 |
recompile/upgrade X. If you are using the newer drivers, then you will need to |
|
|
285 |
run <c>emerge nvidia-drivers</c> or <c>emerge nvidia-legacy-drivers</c> to |
| 286 |
reinstall the nVidia modules. |
| 265 |
</impo> |
287 |
</impo> |
| 266 |
|
288 |
|
| 267 |
<p> |
289 |
<p> |
| 268 |
Once the installation has finished, run <c>modprobe nvidia</c> to load the |
290 |
Once the installation has finished, run <c>modprobe nvidia</c> to load the |
| 269 |
kernel module into memory. |
291 |
kernel module into memory. If this is an upgrade, you should remove the |
|
|
292 |
previous module first. |
| 270 |
</p> |
293 |
</p> |
| 271 |
|
294 |
|
| 272 |
<pre caption="Loading the kernel module"> |
295 |
<pre caption="Loading the kernel module"> |
|
|
296 |
# <i>lsmod | grep nvidia && rmmod nvidia</i> |
| 273 |
# <i>modprobe nvidia</i> |
297 |
# <i>modprobe nvidia</i> |
| 274 |
</pre> |
298 |
</pre> |
| 275 |
|
299 |
|
|
Lines 299-306
Link Here
|
| 299 |
|
323 |
|
| 300 |
<p> |
324 |
<p> |
| 301 |
Once the appropriate drivers are installed you need to configure your X Server |
325 |
Once the appropriate drivers are installed you need to configure your X Server |
| 302 |
(XFree86 or Xorg) to use the <c>nvidia</c> driver instead of the default |
326 |
to use the <c>nvidia</c> driver instead of the default <c>nv</c> driver. |
| 303 |
<c>nv</c> driver. |
|
|
| 304 |
</p> |
327 |
</p> |
| 305 |
|
328 |
|
| 306 |
<p> |
329 |
<p> |
|
Lines 532-538
Link Here
|
| 532 |
the proper device nodes, so you won't need to run <c>NVmakedevices.sh</c>. |
555 |
the proper device nodes, so you won't need to run <c>NVmakedevices.sh</c>. |
| 533 |
Instead, the X driver itself will create your <path>/dev/nvidia*</path> files |
556 |
Instead, the X driver itself will create your <path>/dev/nvidia*</path> files |
| 534 |
when you start X. However, this will require you to use a recent kernel (2.6.14 |
557 |
when you start X. However, this will require you to use a recent kernel (2.6.14 |
| 535 |
and greater). |
558 |
and greater). This is also true for all versions of <c>nvidia-drivers</c> and |
|
|
559 |
<c>nvidia-legacy-drivers</c>. |
| 536 |
</note> |
560 |
</note> |
| 537 |
|
561 |
|
| 538 |
</body> |
562 |
</body> |